Ажлын төлөв амжилт гэж хэлж, бүртгэл дууссан ажиллагааг харуулж, өгөгдөл нь хуучирсан эсвэл байхгүй байна. Энэ хослол нь ихэвчлэн төлөвлөсөн ажил хэрэгтэй замаа дутуу эхэлж, доор нь ямар нэг зүйл алдааг залгин үгүй болгосон гэсэн үг. Цагт нь ажилладаг хуваарь сүлжээ бэлэн байсан эсэхийг огт хэлэхгүй. Энэ хоёр баримтын хоорондын зай бол энэ алдаа амьдардаг газар.

Зөвшөөрөл нь ажиллагаанд хамаарна, cron файл байгаа эсэхэд биш.

Ногоон ажиллагаа бол дууссан ажил биш

Хуваарьлагч процесс эхэлж, дараа нь гарсныг тэмдэглэдэг; тэр процесс өөрийнхөө төлөө оршиж буй нөөцөд хүрсэн эсэхийг мэдэхгүй. Бүтэлгүй холболтыг хоосон үр дүн гэж үзэх, эсвэл алдааг барьж тэгээр гарах скрипт үүрд эрүүл харагдана. Шинж тэмдэг нь улаан төлөв биш; энэ нь дутуу ажилд наалдсан үнэмшилтэй төлөв юм.

Хэрхэн шалгахаа шийдэхээс өмнө ажиллагаад үнэхээр юу хэрэгтэйг нэрлээрэй. Нөөц хуулбарт хувийн DNS болон баталгаажуулсан төгсгөлийн цэг хэрэгтэй байж болно, зөвхөн туннелийн процесс биш.

Холболтыг шалгаарай, интерфейсийн нэрийг биш

tun0 нэртэй интерфейс чухал сессгүйгээр оршиж болно, өөр холболт тэр нэрийг эзэмшиж болно. Ажил хамаарах тодорхой объектыг шалгаарай: нэг профайлын таних тэмдэг, нэг үйлчилгээний хуулбар, эсвэл нөөцийн эсрэг жижиг зөвшөөрөгдсөн үйлдэл. Шалгалтыг цагаар хязгаарлаж, нэвтрэх мэдээллийг процессын аргумент болон диагностикийн бүртгэлээс гадуур байлгаарай.

Салгах үеийн үр дүнг бас тодорхойлоорой. Энгийн алгасалт, богино цонхонд давтан оролдлого, операторт харагдах алдсан хугацаа гэдэг нь гурван өөр хариулт бөгөөд давтагдах хуваарь тэдний хооронд сонголт хийдэггүй.

Алгасалт ба бүтэлгүйтэл өөр өөр үр дүн юм

[Service]
Type=oneshot
User=worker
ExecCondition=/usr/local/libexec/check-office-path
ExecStart=/usr/local/bin/private-task

systemd байршуулалтад ExecCondition= ажлын ачааллын өмнө тэр шалгуурыг ажиллуулдаг. Гарах зан төлөв нь өвөрмөц: тэг үргэлжилнэ, нэгээс 254 хүртэлх код нэгжийг бүтэлгүй гэж тэмдэглэхгүйгээр үлдсэн эхлүүлэх командуудыг алгасна, харин 255 эсвэл хэвийн бус зогсолт түүнийг бүтэлгүй болгоно. Энэ нь гурван ялгаатай дохио өгдөг бөгөөд шалгуурын гэрээг зориуд тэдэн дээр буулгасан тохиолдолд л хэрэгтэй. Амжилтыг дахин тодорхойлдог тохиргоо дүр зургийг өөрчилж болох тул буулгалтыг баримтжуулаарай.

Алгасалтыг бүртгэх нь дизайныг шударга болгодог. Хаана ч харагдахгүй алгассан ажиллагаа амжилттай ажиллагаанаас ялгагдахгүй бөгөөд шалгуурын алдаа бүрийг чимээгүй алгасалт гэж үзэх нь эвдэрсэн байршуулалтыг тодорхойгүй хугацаагаар нуудаг.

Бүх ажиллагааг хамгаалаарай, зөвхөн эхлэлийг биш

Бэлэн байдлын шалгалт хөөргөхөөс өмнө дэлхийг ажигладаг; дараа нь сокет бүрийг хянадаггүй. Хэрэв энэ ажилд шууд зам хэзээ ч хүлээн зөвшөөрөгдөхгүй бол DNS, IPv6 болон туннелийн өөрийн тээврийг хамарсан, тасралтгүй хэрэгжих зөвшөөрөгдсөн гарцын бодлогыг хавсаргаарай. Хостын глобал IPv6 төлөвийг сэлгэх нь ажилд хязгаарлагдсан бодлогыг орлохгүй.

Шинэ үйл явдал ажиллаж буй ажлыг давхарлаж болох эсэхийг шийдэж, тэр дүрмийг ажлын ачааллын эзэнд хадгалж, өгөгдлийн үйлдэлд давтан оролдлогыг аюулгүй болгоорой. Салгах үед ажлыг зогсоох нь ажлыг хязгаарладаг боловч нөөц урсгалын талаар юу ч баталгаажуулдаггүй.

Ажлын урсгалыг гурван тохиолдолд хүлээн зөвшөөрөөрэй: бэлэн зам, хүрэх боломжгүй зам, ажиллагааны дундах алдагдал. Үүнээс бага нь хуваарийг шалгадаг, ажлыг биш.

Холбоотой нийтлэлүүд