جوابدہ نظر انداز کی غلطی

Jwabd Nzr Andaz Ky Ghlty



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

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







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



جوابدہی میں غلطیوں کو نظر انداز کرنے کے طریقے

جواب میں، پلے بک کے کاموں کو انجام دینے کے لیے مختلف طریقے استعمال کیے جاتے ہیں اگر یہ ٹاسک کی ناکامی کو ظاہر کرتا ہے۔ مندرجہ ذیل مختلف طریقے ہیں جو کام کو انجام دینے میں مدد کریں گے یہاں تک کہ اگر Ansible غلطیاں دکھا رہا ہے:



1. Ignore_Errors=True کمانڈ کا استعمال





اگرچہ ٹاسک ناکام ہوتا رہتا ہے، اگر آپ سرگرمی کے نچلے حصے میں ignore_errors=true کمانڈ کی وضاحت کرتے ہیں تو پلے بک جاری رہتی ہے۔ کام کی تکمیل یا ناکامیوں کے بارے میں خیال رکھنے کے باوجود، یہ اب بھی بعد کی سرگرمی کو انجام دیتا ہے۔ اگر کسی نہ کسی طرح سرگرمی ناکام ہو جاتی ہے، تو یہ اگلے ایک پر چلی جاتی ہے۔ اگر سرگرمی کامیاب ہو جاتی ہے، تو یہ اس کے بعد ایک عمل مکمل کرتی ہے۔

2. جواب میں چیک موڈ کا استعمال



بولین اسپیشل ویری ایبلز، Ansible چیک موڈ کا استعمال کریں، جس کی تعریف True سے کی جاتی ہے جب Ansible کا چیکنگ میتھڈ ورژن استعمال کیا جاتا ہے تو کسی کام کو نظرانداز کرنے یا کسی کام میں ناکامیوں کو نظر انداز کرنے کے لیے Ansible چیکنگ کے طریقہ کار میں ہوتا ہے۔

3. فیلڈ کا استعمال کرنا = جب جوابدہ پلے بک میں کمانڈ

جواب میں، ہم ہر ایک سرگرمی کے لیے جو بھی 'ناکامی' کا تقاضا ہے اس کی وضاحت کرنے کے لیے مشروط طور پر ناکام_بھی استعمال کر سکتے ہیں۔ تمام جوابی مشروط بیانات کی طرح، متعدد ناکام_کی فہرستیں جب ایک مضمر کے ساتھ جوڑ دی جاتی ہیں۔ لہذا، کام صرف اس صورت میں ناکام ہوتا ہے جب تمام شرائط مطمئن ہوں۔

جوابدہی میں غلطیوں کو نظر انداز کرنے کی شرائط

جوابدہ کنفیگریشن ٹول کو ٹھوس مثال کو شامل کرنے کے لیے ضروری معیارات کی تعمیل کرنی چاہیے:

  • ایک جوابدہ مین سرور یا ہم کہہ سکتے ہیں کہ کنٹرولنگ سرور ضروری ہے تاکہ ہم ٹارگٹ ڈیوائس پر کمانڈز کو ترتیب دے سکیں۔
  • ہمیں مقامی میزبانوں کی ضرورت ہے تاکہ ہم جواب دینے والے سافٹ ویئر میں غلطیوں کو نظر انداز کرنے کے مختلف طریقے استعمال کرنے کے لیے ان میں سے ہر ایک سے رابطہ کر سکیں۔ ہم اس مثال میں مقامی میزبان کو سرگرمی کی مدت کے لیے ٹارگٹ ریموٹ سرور کے طور پر استعمال کرتے ہیں۔
  • ہم پلے بکس لکھتے ہیں، جوابی نظر انداز کی غلطی کی کمانڈ چلاتے ہیں، اور دور دراز میزبانوں کے نتائج کو ٹریک کرنے کے لیے جوابی کنٹرولر ڈیوائس کا استعمال کرتے ہیں۔

جوابی پلے بک میں نظر انداز کی غلطی کو استعمال کرنے کے اصول کو سمجھنے میں سیکھنے والوں کی مدد کرنے کے لیے، آئیے درج ذیل مثال کو نافذ کریں:

مثال: Ignore_Errors=True کمانڈ کا استعمال

یہ سب سے آسان مثال ہے جو لاگو کرنے کے لیے Ansible کا استعمال کرتی ہے جہاں ہم پلے بک میں متعدد کام شامل کرتے ہیں اور ignore error کمانڈ کا استعمال کرتے ہوئے کاموں کو انجام دیتے ہیں۔ ایسا کرنے کے لیے، ہم سب سے پہلے جوابی ٹرمینل میں درج ذیل کوڈ لکھتے ہیں:

[ جڑ @ ماسٹر جوابدہ ] # nano ignore_errors.yml

ignore_errors.yml پلے بک کی تخلیق اور لانچ کے بعد، اب ہم پلے بک میں کمانڈز داخل کرنا شروع کر دیتے ہیں۔ سب سے پہلے، ہم فراہم کردہ میزبانوں کو 'لوکل ہوسٹ' کے طور پر پاس کرتے ہوئے 'میزبان' کا اختیار استعمال کرتے ہیں۔ ہم 'حقائق جمع کریں' دلیل میں 'غلط' قدر درج کرتے ہیں تاکہ جب ہم پلے بک چلاتے ہیں تو ہم مقامی میزبان کے بارے میں اضافی معلومات حاصل نہیں کر سکیں گے۔

اس کے بعد، ہم ہر اس کام کی فہرست بنانا شروع کرتے ہیں جسے ہم 'ٹاسک' آپشن کے تحت مکمل کرنا چاہتے ہیں۔ پہلے کام میں، ہم اس دستاویز کو ظاہر کرتے ہیں جو جوابی ڈائریکٹری میں موجود نہیں ہے۔ سب سے پہلے، ہم اس کام کا عنوان پاس کرتے ہیں جسے ہم نافذ کرنا چاہتے ہیں۔ پھر، ہم کمانڈ کا آپشن استعمال کرتے ہیں اور غیر موجود ٹیکسٹ دستاویز کو اسٹور کرتے ہیں اور 'ls' استعمال کرتے ہیں تاکہ ہم پہلے کام میں کمانڈ پر عمل کر سکیں۔ پہلے ٹاسک کے بعد، ہم ignore_errors=true کمانڈ استعمال کرتے ہیں تاکہ اگر ignore سٹیٹمنٹ کے اوپر والے ٹاسک میں ناکامی ہو، تو یہ ٹاسک کو نظر انداز کر کے اگلے ٹاسک پر چلا جائے اور اس پر عمل کرے۔

ہم ایک اور کام کی فہرست دیتے ہیں جو استعمال کیا جاتا ہے۔ اگر پہلا کام ناکام ہو جاتا ہے تو، جوابی ٹول کو اگلے کام کو انجام دینا چاہیے۔ پھر، ہم پلے بک میں کام کو چلانے کے لیے ڈیبگ پیرامیٹر استعمال کرتے ہیں۔

- میزبان: لوکل ہوسٹ
حقائق جمع کرنا: جھوٹا
کام:
- نام: ایک غیر موجود کی فہرست بنائیں فائل
کمانڈ: ls non-existent.txt
ignore_errors: سچ

- نام: جاری رہے ناکامی کے بعد کام
ڈیبگ:
پیغام: 'ناکامی کے بعد کام جاری رکھیں'

اب، ہم ignore ایرر کمانڈ کو انجام دینے اور چیک کرنے کے لیے کافی کاموں کی فہرست دیتے ہیں۔ اب، ہم پلے بک کو ختم کرتے ہیں اور مین ٹرمینل پر واپس چلے جاتے ہیں۔ اس کے بعد، ہم پلے بک چلاتے ہیں۔ اس کے لیے، ہم درج ذیل بیان کا استعمال کرتے ہیں:

[ جڑ @ ماسٹر جوابدہ ] # قابل جواب پلے بک ignore_errors.yml

مذکورہ کمانڈ پر عمل کرنے کے بعد، ہمیں درج ذیل آؤٹ پٹ ملتا ہے۔ جیسا کہ آپ دیکھ رہے ہیں، پہلا کام جو غیر موجود فائل کی فہرست دیتا ہے وہ ناکامی کو ظاہر کرتا ہے۔ لیکن دوسرا ٹاسک کامیابی کے ساتھ انجام دیا گیا ہے کیونکہ ہم نے پلے بک میں ignore_error=true کا استعمال کرکے پہلے کام کو نظر انداز کیا۔

نتیجہ

ہم نے سیکھا کہ جواب میں نظر انداز کی غلطی کا کیا مطلب ہے۔ ہم نے تبادلہ خیال کیا کہ یہ جوابی پلے بک میں کیسے کام کرتا ہے۔ ہم نے کاموں کو انجام دیتے وقت جواب میں غلطی کو نظر انداز کرنے کے مختلف طریقوں پر بھی تبادلہ خیال کیا۔ ہم نے ایک مثال نافذ کی ہے تاکہ صارف کے لیے ہر تصور واضح ہو۔