Node.js میں لاگنگ کو کیسے نافذ کیا جائے۔

Node Js My Lagng Kw Kys Nafdh Kya Jay



' لاگنگ node.js میں ویب سائٹ کی ترقی کے طریقہ کار کے پورے لائف سائیکل کو برقرار رکھنے میں اہم کردار ادا کرتا ہے۔ یہ اس طرح ہے کہ لاگنگ سب سے عام فعالیت ہے جو ڈویلپرز کی طرف سے کوڈ کی خصوصیات کا تجزیہ کرنے کے لیے وقتاً فوقتاً ڈیٹا، اور کوڈ کا تجزیہ کرنے اور کوڈ کے تجزیہ کی بنیاد پر غلطیوں کو دور کرنے کے لیے انجام دیا جاتا ہے۔

یہ تحریر ذیل میں درج مواد کی وضاحت کرتی ہے:

node.js میں کب لاگ ان کریں؟

node.js میں لاگنگ کی عام سطحیں درج ذیل ہیں:







  • معلومات: وہ کام یا آؤٹ پٹ جو ہموار کوڈ پر عمل درآمد کی تصدیق کرتے ہیں۔
  • انتباہ: ناکامیوں سے بچنے کے لیے جن واقعات پر غور کرنے کی ضرورت ہے۔
  • خرابی: وہ واقعات جن کے نتیجے میں کوڈ پر عمل درآمد میں ناکامی ہوتی ہے۔
  • ڈیبگ: اس سطح کو زیادہ تر ڈویلپر استعمال کرتے ہیں۔

لاگنگ کہاں کی جاتی ہے؟

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



  • stdout
  • stderr
  • تسلی

یہ اس طرح ہے کہ بنیادی ' console.log() 'اور' console.info() 'طریقے لاگ ان کریں' stdout ' تاہم، ' console.warn() 'اور' console.error() 'طریقے لاگ ان کریں' stderr ' یہ طریقے کنسول پر آؤٹ پٹ دکھاتے ہیں۔ سامنے کے آخر میں، یہ پروگرامر کا ٹول کنسول ہوگا۔



Node.js میں لاگنگ کو کیسے نافذ کیا جائے؟

مختلف حالات میں لاگنگ کی ضرورت کا تجزیہ کرنا متعلقہ لاگنگ اپروچ کو لاگو کرنے کے لیے بہت ضروری ہے۔ node.js میں لاگ ان کو درج ذیل طریقوں کے ذریعے لاگو کیا جا سکتا ہے:





  • ' console.log() 'طریقہ۔
  • ' console.warn() 'طریقہ۔
  • ' console.error() 'طریقہ۔
  • ' console.table() 'طریقہ۔
  • ڈیبگ ماڈیول۔
  • ونسٹن پیکیج۔

نقطہ نظر 1: 'console.log()' طریقہ استعمال کرتے ہوئے node.js میں لاگنگ لاگو کریں۔

' console.log() ” طریقہ کنسول پر آؤٹ پٹ دکھاتا ہے اور وقتاً فوقتاً کوڈ کی خصوصیات کو جانچنے میں مددگار ہوتا ہے۔

نحو



تسلی. لاگ ( گندگی )

اس نحو میں، ' گندگی کنسول پر لکھے جانے والے پیغام سے مراد ہے۔

اب، ذیل میں دیئے گئے کوڈ بلاک پر جائیں جو کنسول پر فراہم کردہ پیغامات کو لاگ کرتا ہے:

تسلی. لاگ ( 'یہ لینکس ہینٹ ہے!' ) ;

تسلی. لاگ ( 'یہ نوڈ جے ایس ہے!' ) ;

آؤٹ پٹ

اس نتیجے سے، یہ سمجھا جا سکتا ہے کہ بیان کردہ پیغامات کنسول پر مناسب طریقے سے دکھائے جاتے ہیں۔

نقطہ نظر 2: 'console.warn()' طریقہ استعمال کرتے ہوئے node.js میں لاگنگ لاگو کریں۔

' console.warn() ' طریقہ کنسول کو انتباہی پیغام دکھاتا ہے۔

نحو

تسلی. خبردار کرنا ( گندگی )

دیئے گئے نحو میں، ' گندگی کنسول پر دکھائے جانے والے پیغام (کسٹم کے ساتھ ساتھ) کی نشاندہی کرتا ہے۔

اب، درج ذیل کوڈ لائن کی طرف جائیں جو کہ ' console.warn() طریقہ:

تسلی. خبردار کرنا ( 'یہ ایک انتباہ ہے!' ) ;

آؤٹ پٹ

جیسا کہ دیکھا گیا ہے، مخصوص کسٹم وارننگ مناسب طریقے سے ظاہر ہوتی ہے۔

طریقہ 3: 'console.error()' طریقہ استعمال کرتے ہوئے node.js میں لاگنگ لاگو کریں۔

یہ طریقہ کنسول میں غلطی کا پیغام لکھتا ہے۔

نحو

تسلی. غلطی ( [ ڈیٹا ] [ ،... دلائل ] )

اس نحو میں:

  • ' ڈیٹا ' بنیادی پیغام سے مراد ہے۔
  • ' دلائل اقدار کی نمائندگی کرتے ہیں۔

واپسی کی قیمت

یہ طریقہ غلطی کا پیغام بازیافت کرتا ہے۔

کوڈ کے درج ذیل ٹکڑوں کا جائزہ جو غیر مطمئن حالت پر غلطی کا پیغام لگاتا ہے۔

ایکس = 150 ;
اگر ( ایکس < 100 ) {
تسلی. لاگ ( 'آگے بڑھنے کو تیار' ) ;
}
اور {
تسلی. غلطی ( 'نامناسب نمبر' ) ;
}

اس کوڈ کے مطابق:

  • شرائط کے لیے تجزیہ کرنے کے لیے ایک عدد کو شروع کریں۔
  • اس کے بعد، لاگو کریں ' اگر بیان اس طرح کہ اگر ابتدائی عدد '100' سے کم ہو تو مخصوص پیغام ظاہر ہوتا ہے۔
  • بصورت دیگر، ' اور 'بیان میں غلطی کے پیغام کو انجام دیتا ہے' console.error() 'طریقہ.

آؤٹ پٹ

یہ آؤٹ پٹ اس بات کی تصدیق کرتا ہے کہ غیر مطمئن حالت پر، حسب ضرورت غلطی کا پیغام کنسول پر اسی کے مطابق ظاہر ہوتا ہے۔

نقطہ نظر 4: 'console.table()' طریقہ استعمال کرتے ہوئے node.js میں لاگنگ لاگو کریں۔

یہ طریقہ کنسول پر ایک ٹیبل بناتا اور دکھاتا ہے۔

نحو

تسلی. ٹیبل ( td، tc )

یہاں، ' td 'ٹیبل ڈیٹا کی نمائندگی کرتا ہے، اور' tc ” سے مراد ٹیبل کالموں کی صف ہے۔

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

تسلی. ٹیبل ( [ { ایکس : 10 , a : 'ہیری' } , { ایکس : پندرہ , a : 'ساتھ' } ] ) ;

آؤٹ پٹ

نقطہ نظر 5: 'ڈیبگ ماڈیول' کا استعمال کرتے ہوئے node.js میں لاگنگ لاگو کریں۔

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

لاگنگ مڈل ویئر کو ترتیب دینے کے طریقے درج ذیل ہیں:

مثال 1: ایپلیکیشن سے لاگنگ مڈل ویئر کو ترتیب دینا

' app.use() ” فنکشن ٹارگٹ مڈل ویئر فنکشن کو مخصوص راستے پر ماؤنٹ کرتا ہے۔

نحو

ایپ استعمال کریں ( pt، cb )

اوپر دیے گئے نحو میں:

  • ' pt ” سے مراد وہ راستہ ہے جس کے لیے مڈل ویئر فنکشن کو طلب کیا جانا ہے۔
  • ' cb مڈل ویئر فنکشن (فنکشنز) سے مساوی ہے۔

درج ذیل کوڈ کا مظاہرہ ہے جو لاگنگ مڈل ویئر کو ایپلیکیشن اور زیر بحث طریقہ کے ذریعے ترتیب دیتا ہے:

const ایپ = اظہار ( )

const لاگ مڈل ویئر = ضرورت ہے ( 'میرا لاگنگ مڈل ویئر' )

ایپ استعمال کریں ( لاگ مڈل ویئر )

اس کوڈ میں، ایک ایکسپریس ایپلی کیشن بنائیں اور اس میں شامل کریں ' my-logging-midleware لاگنگ مڈل ویئر کے ساتھ کام شروع کرنے کے لیے۔ آخر میں، لاگو کریں ' app.use() ٹارگٹ مڈل ویئر فنکشن کو مخصوص راستے پر ماؤنٹ کرنے کے لیے فنکشن۔

مثال 2: راؤٹر کے ذریعے ایپلیکیشن سے لاگنگ مڈل ویئر کو ترتیب دینا

' router.use() ” فنکشن ٹارگٹ روٹر کے ذریعے پیش کیے جانے والے راستوں کے لیے مڈل ویئر کو ماؤنٹ کرتا ہے۔

نحو

راؤٹر استعمال کریں ( کے لیے، func )

اس نحو میں:

  • ' pt مڈل ویئر کے راستے سے مراد ہے۔
  • ' func ” کال بیک کے طور پر پاس کردہ فنکشن سے مماثل ہے۔

ذیل کی مثال روٹر آبجیکٹ کی مدد سے لاگنگ مڈل ویئر کو ترتیب دیتی ہے اور ' router.use() فنکشن:

const راؤٹر = اظہار راؤٹر ( )

const rtLoggingMiddleware = ضرورت ہے ( 'my-route-logging-midleware' )

راؤٹر استعمال کریں ( rtLoggingMiddleware )

اس کوڈ میں:

  • ' ایکسپریس راؤٹر() فنکشن ایک نیا روٹر آبجیکٹ بناتا ہے۔
  • اس کے بعد، شامل کریں ' my-route-logging-midleware 'اور اسی طرح، استعمال کریں' router.use() ٹارگٹ راؤٹر کے ذریعے پیش کیے جانے والے راستوں کے لیے مڈل ویئر کو ماؤنٹ کرنے کا فنکشن۔

نقطہ نظر 6: 'ونسٹن پیکیج' کا استعمال کرتے ہوئے node.js میں لاگنگ لاگو کریں

اس مخصوص پیکیج میں اسٹوریج کے اختیارات، متعدد لاگ لیولز، سوالات اور پروفائلر شامل ہیں۔ مندرجہ ذیل کوڈ کا مظاہرہ ہے جو اس نقطہ نظر کے ذریعے لاگنگ کو لاگو کرتا ہے:

const ایکس = اظہار ( )
const شامل = ضرورت ہے ( 'ونسٹن' )
const کنسول ٹرانسپورٹ = نئی شامل نقل و حمل . تسلی ( )
const آپٹ = {
نقل و حمل : [ کنسول ٹرانسپورٹ ]
}
const لاگر = نئی شامل createLogger ( آپٹ )
فنکشن ڈسپلے کی درخواست ( req، res، اگلا ) {
لاگر معلومات ( درخواست یو آر ایل )
اگلے ( )
}
ایکس. استعمال کریں ( ڈسپلے کی درخواست )
فنکشن ڈسپلے کی خرابی۔ ( غلطی، درخواست، جواب، اگلا ) {
لاگر غلطی ( غلطی )
اگلے ( )
}
ایکس. استعمال کریں ( ڈسپلے کی خرابی )

اس کوڈ میں:

  • فلٹرنگ کے ساتھ ایک سے زیادہ ٹرانسپورٹ سیٹ اپ کی جا سکتی ہیں اور کسٹم فارمیٹرز سیٹ کیے جا سکتے ہیں۔
  • نیز، متعدد لاگر مثالیں مختلف فنکشنز میں بیان کی گئی ہیں یعنی، logger.info() 'اور' logger.error() '
  • یہ لاگرز بالترتیب معلومات اور غلطی کے پیغامات دکھاتے ہیں۔
  • اس کوڈ میں، صرف مطلوبہ یو آر ایل لاگ ان ہوتا ہے۔

ذیل میں دیئے گئے پیرامیٹرز لاگرز کے ذریعہ لئے گئے ہیں:

نام طے شدہ تفصیل
فارمیٹ Winston.format.json معلوماتی پیغامات کو فارمیٹ کرتا ہے۔
خاموش جھوٹا۔ اگر درست ہے تو، تمام لاگز معطل ہو جائیں گے۔
exitOnError سچ ہے۔ اگر غلط ہے تو، نقل شدہ مستثنیات process.exit کا سبب نہیں بنتی ہیں۔
سطح Winston.config.npm.levels درجات لاگ ترجیحات کا حوالہ دیتے ہیں۔

نتیجہ

لاگ ان node.js کے ذریعے لاگو کیا جا سکتا ہے ' console.log() 'طریقہ،' console.warn() 'طریقہ،' console.error() 'طریقہ،' console.table() 'طریقہ،' ڈیبگ ماڈیول '، یا ' کے ذریعے ونسٹن پیکیج ' کنسول کے طریقے معلومات اور غلطی کے پیغامات کو ظاہر کرتے ہیں۔ ڈیبگ ماڈیول ویب مڈل ویئر کی حیثیت کے بارے میں اضافی معلومات کو لاگ کرتا ہے اور ونسٹن پیکج میں اسٹوریج کے اختیارات اور لاگ کی مختلف سطحیں شامل ہیں۔