VPN کے بغیر چلنے والا مقررہ کام ٹھیک دکھتا ہے
حالت کامیابی کہتی ہے اور ڈیٹا غائب ہے۔ ہر رن کو درست کنکشن پر مشروط کریں اور شیڈول پر بھروسا کرنے کے بجائے چھوڑے گئے رن الگ درج کریں۔
کام کی حالت کامیابی کہتی ہے، لاگ مکمل ہوا رن دکھاتا ہے، اور ڈیٹا پرانا یا غائب ہے۔ یہ امتزاج عام طور پر بتاتا ہے کہ مقررہ کام بغیر مطلوبہ راستے کے شروع ہوا، اور نیچے کسی چیز نے ناکامی کو نگل لیا۔ وقت پر چلنے والا شیڈول یہ نہیں بتاتا کہ نیٹ ورک تیار تھا یا نہیں۔ ان دو حقائق کے درمیان خلا ہی وہ جگہ ہے جہاں یہ ناکامی رہتی ہے۔
داخلہ رن کا ہے، 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 حالت بدلنا کام پر محدود پالیسی کا متبادل نہیں ہے۔
فیصلہ کریں کہ آیا کوئی نیا واقعہ ابھی چل رہے کام کو اوورلیپ کر سکتا ہے، وہ قاعدہ کام کے بوجھ کے مالک کے پاس رکھیں، اور ڈیٹا آپریشن کے لیے دوبارہ کوشش کو محفوظ بنائیں۔ ڈسکنیکٹ پر کام روکنا کام کو محدود کرتا ہے مگر فال بیک ٹریفک کے بارے میں کچھ بھی ضمانت نہیں دیتا۔
تین صورتوں میں کام کا بہاؤ قبول کریں: تیار راستہ، دستیاب نہ ہونے والا راستہ، اور رن کے درمیان نقصان۔ اس سے کم کچھ شیڈول کی جانچ کرتا ہے، کام کی نہیں۔