آپ ایک ایپلیکیشن کو VPN سے خارج کرتے ہیں اور اسے درکار ڈاؤن لوڈ پھر بھی ناکام ہوتا ہے، یا اس سے بدتر، وہ کام کرنے لگتا ہے اور کوئی غیر متعلق چیز رک جاتی ہے۔ نظر آنے والی ونڈو ہر کنکشن کھولنے والا عمل ہونا ضروری نہیں: ایپلیکیشن کام کسی مددگار، پس منظر منتقلی سروس یا بالکل کسی دوسرے پیکیج کو سونپ سکتی ہے۔ اسی لیے فی ایپ قاعدے کو مانوس لانچر فائل نام کے بجائے پلیٹ فارم کا اصل شناختی ماڈل درکار ہے۔ نیچے دی گئی جانچیں مشاہدے سے شروع ہو کر اُس تک واپس جاتی ہیں جس نے واقعی درخواست بھیجی۔

ان ٹکٹوں میں عام طور پر دو چیزیں ساتھ خراب ہوتی ہیں: غلط جزو خارج کیا جاتا ہے، اور استثنا بعد میں کبھی تنگ نہیں کیا جاتا۔

عمل تلاش کریں، ونڈو نہیں

ناکام عمل دوبارہ پیدا کریں اور واقع ہوتے وقت کنکشن کا مالک عمل یا پیکیج شناخت کریں۔ Windows پر یہ اس سوال سے مختلف ہے کہ کس ونڈو پر فوکس ہے، کیونکہ پس منظر منتقلی کی وساطت ایسی سروس کر سکتی ہے جو اپنی شناخت کے تحت چلتی ہے۔ Linux اور macOS پر یہی تقسیم مددگار عملوں اور سسٹم ڈیمونز کی صورت میں ظاہر ہوتی ہے۔

تین تفصیلات لکھیں: قابلِ عمل فائل یا پیکیج کی شناخت، وہ منزل جس سے رابطہ تھا، اور ورک فلو میں وہ لمحہ جب یہ ہوا۔ شروع میں ناکام ہونے والا ڈاؤن لوڈ اکثر درمیان میں ناکام ہونے والے ڈاؤن لوڈ سے مختلف جزو کا میٹا ڈیٹا لانا ہوتا ہے۔ صرف یہی فرق عام طور پر قاعدے کو چھونے سے پہلے درست شناخت منتخب کرنے کے لیے کافی ہوتا ہے۔ اگر شناخت ایپ کے بجائے سروس نکلے تو یہی ایک حقیقت پورا قاعدہ بدل دیتی ہے، اس لیے پہلے اسے قائم کریں۔

اگر عمل بہت مختصر ہونے کی وجہ سے آپ اس کا مشاہدہ نہیں کر سکتے، تو اسے بڑے پے لوڈ یا سست منزل کے ساتھ دہرائیں۔ مقصد ایک قابلِ تکرار مشاہدہ ہے، یہ نظریہ نہیں کہ کون سا مددگار شامل ہے۔

DNS کو اس کا اپنا راستہ سمجھیں

سسٹم ناموں کا حل خارج شدہ ایپلیکیشن کی بالکل پیروی نہ کر سکے، اسی لیے خارج شدہ براؤزر نجی ہوسٹ نام پر پھر بھی ناکام ہو سکتا ہے جبکہ اس کی ٹریفک درست طور پر سرنگ سے باہر ہو۔ براؤزر خارج کیا گیا تھا؛ حل کنندہ نہیں۔

دیکھیں کہ فی ایپ قاعدہ لاگو ہونے پر پلیٹ فارم DNS کے ساتھ کیا کرتا ہے، اور اسے HTTP درخواست سے الگ جانچیں۔ اگر حل کنندہ مشترکہ سروس ہے تو وہ آلے کی ہر ایپلیکیشن کی خدمت کرتا ہے، اس لیے آپ جس استثنا پر غور کر رہے ہیں اس کے سامعین جانچے گئے سے کہیں زیادہ وسیع ہیں۔

درج کریں کہ کس حل کنندہ نے کس انٹرفیس سے جواب دیا۔ وہی ایک مشاہدہ «ایپ خارج ہے مگر نام حل نہیں ہوتا» رپورٹوں کا بڑا حصہ حل کرتا ہے، اس لیے اسے ٹکٹ کے ساتھ رکھیں۔

مشترکہ مددگار کو وسیع نہ کریں

مشترکہ سروس کئی ایپلیکیشنوں کے لیے کام کرتی ہے، اس لیے ایک ورک فلو درست کرنے کے لیے اسے خارج کرنا غیر متعلق ٹریفک بھی بدل دیتا ہے۔ Windows پر Background Intelligent Transfer Service اس شکل کی اچھی مثال ہے: یہ ایسی بنیادی ڈھانچہ ہے جسے کئی ایپلیکیشنز استعمال کر سکتی ہیں، اور اس کی شناخت منتقلی طلب کرنے والی ایپ کی شناخت نہیں ہے۔

اس استثنا کو شامل کرنے سے پہلے کلائنٹ کا معاون قاعدہ ماڈل اور تنظیم کی ضروریات دیکھیں۔ پوچھیں کہ جزو کو اور کیا استعمال کرتا ہے، اور کیا آپ جو قاعدہ لکھنے والے ہیں اسے مشترکہ عمل کے بجائے منزلوں کے حوالے سے بیان کیا جا سکتا ہے۔

اگر ضرورت کو ایپ کی حد کے طور پر بالکل بیان نہ کیا جا سکے، تو منزل پر مبنی پالیسی یا کوئی دوسرا منظور شدہ ڈیزائن بڑھتی ہوئی مددگار استثناؤں کی فہرست سے زیادہ قابلِ فہم اور محفوظ ہو سکتا ہے۔

ناکام مرحلہ نہیں، پورا ورک فلو جانچیں

معاون تبدیلی کے بعد مطلوبہ کام نئی درخواست کے ساتھ شروع سے آخر تک چلائیں۔ پھر مشترکہ جزو استعمال کرنے والا ایک اور ورک فلو چلائیں، کیونکہ وہیں وسیع گریز خود کو ظاہر کرتا ہے۔ پہلے کو درست کر کے دوسرے کو خاموشی سے توڑنے والی درستی درستی نہیں۔ دونوں نتائج ٹکٹ میں رکھیں اور دوسرے ورک فلو کا نام واضح طور پر لکھیں، تاکہ جائزہ لینے والا اسے دہرا سکے۔

جانچ کو چھوٹا اور قابلِ تکرار رکھیں: وہی منزل، وہی اکاؤنٹ، وہی شرائط۔ اگر دوسرا ورک فلو دستاویزی نہیں تو تبدیلی کو محفوظ ماننے سے پہلے اس کے مالک سے پوچھیں کہ یہ کس پر منحصر ہے۔

ناموں کی فہرست نہیں، وجہ چھوڑیں

جزو، وہ ورک فلو جس کی یہ خدمت کرتا ہے، اور اس کے خارج ہونے کی وجہ دستاویز کریں۔ جڑے ہوئے مقصد کے بغیر مددگار ناموں کی فہرست دو ریلیز چکروں میں ناقابلِ دیکھ بھال ہو جاتی ہے، اور اگلا انجینئر صفائی کرتے وقت غلط اندراج ہٹا دیتا ہے۔

ہر استثنا کے لیے ایک سطر کافی ہے: اس کے بغیر کیا ٹوٹتا ہے، اُس ورک فلو کا مالک کون ہے، اور آخری بار کب تصدیق ہوئی۔ وہ تین خانے ایک پراسرار فہرست کو ایسی پالیسی میں بدل دیتے ہیں جس کا کوئی دفاع کر سکے۔

متعلقہ مضامین