यह ब्लॉग लॉगिंग लाइब्रेरी के उपयोग के महत्व पर चर्चा करेगा और Node.js के लिए हमारे द्वारा देखे गए 10 सर्वश्रेष्ठ समीक्षा किए गए लॉगिंग टूल को नीचे चलाएगा। @Playerzero पर हम लॉग इवेंट बनाने और प्रबंधित करने के लिए अक्सर नोड.जेएस लॉगिंग लाइब्रेरी का उपयोग करते हैं। इस बारे में अधिक जानें कि आज हम फ्रंट और बैकएंड एप्लिकेशन दोनों के लिए क्या मायने रखते हैं, इसकी निगरानी के लिए हम अपने अद्वितीय दृष्टिकोण को कैसे ला रहे हैं https://www.playerzero.app/ पिनो विंस्टन बनियान मॉर्गन छांटने का स्तर Log4js एनपीएमलॉग दहाड़ दरियाफ्त सिगनल उच्च-स्तरीय परिप्रेक्ष्य से, Node.js लॉगिंग महत्वपूर्ण है क्योंकि यह डेवलपर्स को घटनाओं और उनके आवेदन के प्रदर्शन को ट्रैक करने, समस्याओं का निदान करने और उन्हें ठीक करने, सिस्टम व्यवहार की निगरानी करने और सूचित निर्णय लेने में मदद करता है। लॉगिंग एक एप्लिकेशन की गतिविधि का रिकॉर्ड प्रदान करता है, जिससे डेवलपर्स को समस्याओं की पहचान करने और डिबग करने, उपयोगकर्ता के व्यवहार को समझने और सिस्टम के समग्र प्रदर्शन और स्थिरता में सुधार करने की अनुमति मिलती है। त्रुटियों का पता लगाने और उन्हें ठीक करने, सिस्टम के प्रदर्शन की निगरानी करने और सुरक्षा घटनाओं का पता लगाने के लिए लॉगिंग उत्पादन वातावरण में भी उपयोगी हो सकता है। लॉगिंग बनाम ट्रेसिंग जब भी किसी एप्लिकेशन में कुछ बहुत गलत हो जाता है, तो डेवलपर्स के पास स्टैक ट्रेस के माध्यम से इसके स्रोत को ट्रैक करने का विकल्प होता है। लेकिन... अकेले स्टैक ट्रेस पर भरोसा करने से केवल आधी तस्वीर ही बनती है। ट्रेसिंग आपको एप्लिकेशन के निष्पादन के बारे में जानकारी प्रदान करेगा, जिसमें अनुरोधों का प्रवाह, डेटाबेस प्रश्न, बाहरी एपीआई कॉल और प्रदर्शन मेट्रिक्स शामिल हैं - जो काफी उपयोगी हो सकते हैं। सामान्य तौर पर, निशान का उपयोग एक विस्तृत स्तर पर किसी एप्लिकेशन के व्यवहार को समझने और प्रदर्शन की बाधाओं की पहचान करने के लिए किया जाता है। लॉगिंग चित्र के दूसरे भाग में भरता है। लॉगिंग किसी एप्लिकेशन से संबंधित संदेशों और घटनाओं को रिकॉर्ड करने की प्रक्रिया है, जैसे त्रुटियां, चेतावनियां, प्रदर्शन मेट्रिक्स और डीबग जानकारी। Node.js में लॉगिंग का उपयोग मुद्दों का निदान करने, उपयोगकर्ता के व्यवहार को समझने और किसी एप्लिकेशन के समग्र प्रदर्शन और स्थिरता में सुधार करने के लिए किया जाता है। यह एक एप्लिकेशन में गतिविधि का रिकॉर्ड भी प्रदान करता है, जिससे डेवलपर्स को समस्याओं की पहचान करने और डिबग करने और अधिक सूचित निर्णय लेने की अनुमति मिलती है। Node.js के लिए लॉगिंग लाइब्रेरी का उपयोग क्यों करें? आपको Node.js लॉगिंग लाइब्रेरी का उपयोग करने के कई कारण हैं: - लॉगिंग लाइब्रेरी त्रुटियों और मुद्दों के बारे में विस्तृत जानकारी प्रदान करती है, जिससे डेवलपर्स को अधिक कुशलता से समस्याओं का निदान और समाधान करने की अनुमति मिलती है। बेहतर डिबगिंग - लॉगिंग एक एप्लिकेशन के व्यवहार और प्रदर्शन का एक स्पष्ट दृश्य प्रदान करता है, जिससे डेवलपर्स को सूचित निर्णय लेने और सिस्टम में सुधार करने की अनुमति मिलती है। बढ़ी हुई दृश्यता - लॉगिंग लाइब्रेरी को प्रदर्शन के लिए अनुकूलित किया जा सकता है, लॉगिंग के ओवरहेड को कम किया जा सकता है और सिस्टम के समग्र प्रदर्शन में सुधार किया जा सकता है। बेहतर प्रदर्शन - कई लॉगिंग लाइब्रेरी लॉग को केंद्रीकृत लॉग सर्वर पर लिखने की अनुमति देती हैं, जिससे लॉग डेटा एकत्र करना, देखना और विश्लेषण करना आसान हो जाता है। केंद्रीकृत लॉगिंग - लॉगिंग लाइब्रेरी को विशिष्ट आवश्यकताओं को पूरा करने के लिए अनुकूलित किया जा सकता है, जैसे कि कस्टम लॉग स्तर, आउटपुट स्वरूप और फ़िल्टर। अनुकूलन लॉगिंग स्तर लॉगिंग स्तर लॉग संदेशों के महत्व या गंभीरता को वर्गीकृत करने का एक तरीका है। आमतौर पर, कई स्तर होते हैं, गंभीर त्रुटियों से लेकर सूचनात्मक संदेशों तक, और प्रत्येक स्तर एक संख्यात्मक मान से जुड़ा होता है जिसका उपयोग लाइब्रेरी में लॉग संदेशों को फ़िल्टर करने के लिए किया जा सकता है। यहाँ सबसे आम स्तर हैं: FATAL लॉग स्तर शायद अस्वाभाविक रूप से, लॉग स्तर गंभीरता का एक स्तर है जो किसी एप्लिकेशन में एक महत्वपूर्ण त्रुटि को इंगित करता है - जिसका अर्थ है कि स्तर के साथ लॉग इंगित करता है कि एप्लिकेशन डेवलपर के हस्तक्षेप के बिना सामान्य रूप से चलना जारी नहीं रख सकता है। FATAL FATAL ERROR लॉग स्तर लॉग स्तर इंगित करता है कि एक एप्लिकेशन वर्तमान में चलने में सक्षम है, लेकिन यह एक समस्या का सामना कर रहा है। आमतौर पर, यह इंगित करता है कि एप्लिकेशन में एक आवश्यक कार्य विफल हो गया - कि एक अपवाद, अप्रत्याशित व्यवहार या गलत इनपुट था। ERROR WARN लॉग स्तर से कम गंभीर लॉग स्तर है, लेकिन फिर भी, इसे अनदेखा नहीं किया जाना चाहिए। लॉग का उपयोग सक्रिय रूप से मुद्दों की पहचान करने और समस्याओं को और अधिक गंभीर होने से रोकने के लिए किया जा सकता है क्योंकि वे संकेत देते हैं कि आपके आवेदन में कुछ अधिक महत्वपूर्ण समस्या के लिए उत्प्रेरक बन सकता है। WARN ERROR WARN INFO लॉग स्तर लॉग स्तर एक प्रकार का लॉग संदेश है जिसका उपयोग लॉगिंग सिस्टम में एक सामान्य, सूचनात्मक संदेश को इंगित करने के लिए किया जाता है। यह आम तौर पर रूटीन लॉग करने के लिए उपयोग किया जाता है, एप्लिकेशन या सिस्टम में अपेक्षित घटनाएं, जैसे प्रक्रिया की शुरुआत, कार्य पूरा करना, या सिस्टम की स्थिति में बदलाव। इन चेतावनियों को आम तौर पर अनदेखा किया जा सकता है क्योंकि वे इस बात की पुष्टि करने के लिए होती हैं कि कोई एप्लिकेशन ठीक से काम कर रहा है। INFO DEBUG लॉग स्तर विशिष्ट रूप से, लॉग स्तर ऐसी जानकारी प्रदान करता है जो डीबगिंग प्रक्रिया के भीतर सख्ती से उपयोगी होती है। लॉग सबसे विस्तृत प्रकार का लॉग संदेश है, और किसी एप्लिकेशन के आंतरिक कामकाज का एक विस्तृत दृश्य प्रदान करता है। लॉग का मुख्य उद्देश्य डेवलपर्स को यह समझने में मदद करना है कि सिस्टम क्या कर रहा है, बग और मुद्दों की पहचान करें और समस्याओं का निदान करें। DEBUG DEBUG DEBUG 10 सर्वश्रेष्ठ Node.js लॉगिंग लाइब्रेरी और उनके साथ कैसे शुरुआत करें #1। पिनो पिनो के लाभ Pino एक लंबे समय से स्थापित और बहुत लोकप्रिय लॉगिंग टूल है, जिसमें 10.9K से अधिक Github स्टार और npm पर लाखों डाउनलोड हैं। पिनो Node.js के लिए एक लोकप्रिय लॉगिंग लाइब्रेरी है क्योंकि यह कई प्रमुख विशेषताएं प्रदान करती है जो इसे Node.js अनुप्रयोगों में उपयोग के लिए उपयुक्त बनाती हैं: - पिनो को प्रदर्शन पर ध्यान देने के साथ तेज और हल्का बनाया गया है। यह लॉग संदेशों के लिए एक बाइनरी प्रारूप का उपयोग करता है, जो इसे लॉग आउटपुट को जल्दी और कुशलता से उत्पन्न करने की अनुमति देता है। तेज - पिनो संदेशों को JSON प्रारूप में लॉग करता है, जो लॉग डेटा के आसान पार्सिंग, फ़िल्टरिंग और विश्लेषण की अनुमति देता है। इससे लॉग डेटा को खोजना, विज़ुअलाइज़ करना और उसका विश्लेषण करना और लॉग डेटा को अन्य सिस्टम में एकीकृत करना आसान हो जाता है। संरचित लॉग - पिनो को अत्यधिक एक्स्टेंसिबल होने के लिए डिज़ाइन किया गया है, और इसमें कई अंतर्निहित प्लगइन्स शामिल हैं जिनका उपयोग अतिरिक्त कार्यक्षमता जोड़ने के लिए किया जा सकता है, जैसे किसी फ़ाइल में लॉग डेटा लिखना या रिमोट सर्वर पर लॉग डेटा भेजना। विस्तार करने में आसान - पिनो अपने न्यूनतम संसाधन उपयोग के कारण अत्यधिक कुशल Node.js लॉगिंग लाइब्रेरी है। पिनो के साथ लॉगिंग प्रक्रिया धीरे-धीरे संदेशों को जमा करती है, जिससे एप्लिकेशन का थ्रॉटलिंग होता है और प्रति सेकंड अनुरोधों की संख्या में कमी आती है। थ्रॉटलिंग एक ऐसी तकनीक है जिसमें किसी ईवेंट से जुड़े फ़ंक्शन को निर्दिष्ट समय सीमा के भीतर केवल एक बार चलाने के लिए ट्रिगर किया जाता है, भले ही ईवेंट को कई बार सक्रिय किया गया हो। लो ओवरहेड - पिनो लॉग भेजने के लिए कई प्रकार के विकल्प प्रदान करता है, जिसमें फ़ाइलों को लिखना, कंसोल में प्रदर्शित करना और सेंट्री, एज़्योर एप्लिकेशन इनसाइट्स और कॉचडीबी जैसे प्लेटफ़ॉर्म का उपयोग करना शामिल है। ट्रांसपोर्ट Node.js एप्लिकेशन में पिनो का उपयोग करने के लिए, इन चरणों का पालन करें: पिनो इंस्टॉल करना पिनो को स्थापित करने के लिए, बस इसे एक नई निर्देशिका में निम्न कमांड चलाकर स्थापित करें: npm install pino - अपने Node.js एप्लिकेशन में, अपनी फ़ाइल के शीर्ष पर कोड की निम्न पंक्ति जोड़कर Pino आयात करें: आयात करें const pino = require('pino'); पिनो का उपयोग करना - लॉगर इंस्टेंस बनाकर पिनो को इनिशियलाइज़ करें, उदाहरण के लिए: इनिशियलाइज़ेशन const logger = pino({ level: 'info' }); यह स्क्रिप्ट कंसोल पर और उससे ऊपर के लॉगिंग स्तर के साथ लॉग बनाती है। INFO स्तर को जानकारी पर सेट करके, पिनो लॉगिंग स्तर , , , और के साथ संदेशों को लॉग करेगा। से नीचे के लॉगिंग स्तर वाले संदेश, जैसे , लॉग नहीं किए जाएँगे। INFO WARN ERROR FATAL INFO DEBUG यह कोड केवल एक पिनो लकड़हारा उदाहरण बनाता है जिसमें लॉग स्तर INFO पर सेट होता है। जब तक आप लॉगर इंस्टेंस का उपयोग करके कुछ लॉग नहीं करते तब तक कोई लॉग संदेश उत्पन्न या प्रदर्शित नहीं होता है। उदाहरण के लिए: logger.info('This is an info message'); यह कंसोल पर निम्न आउटपुट का उत्पादन करेगा: {"level":30,"time":1624825088703,"msg":"This is an info message","pid":1234,"hostname":"my-machine"} कंसोल पर प्रदर्शित लॉग डेटा में लॉग स्तर, टाइमस्टैम्प जब रिकॉर्ड किया गया था, संदेश लॉग किया जा रहा है, लॉग के लिए एक पहचानकर्ता और होस्टनाम शामिल है। - आप अपने एप्लिकेशन में अन्य संदेशों को लॉग करने के लिए इंस्टेंस का भी उपयोग कर सकते हैं। उदाहरण के लिए: लॉगिंग logger logger.warn('This is a warning message'); logger.error('This is an error message'); - डिफ़ॉल्ट रूप से, पिनो कंसोल में लॉग करता है। यदि आप आउटपुट बदलना चाहते हैं, तो आप पिनो के उपलब्ध ट्रांसपोर्ट में से किसी एक का उपयोग कर सकते हैं, जिसका हमने पहले उल्लेख किया था, जैसे फ़ाइल में लिखना, संतरी जैसी दूरस्थ सेवा में लॉग भेजना, या एज़्योर एप्लिकेशन इनसाइट्स का उपयोग करना। अधिक जानकारी के लिए, आप पिनो के "ज्ञात परिवहन" खंड का उल्लेख कर सकते हैं। आउटपुट पिनो सुंदर स्थापित करना पिनो का बेसिक एनडीजेएसओएन फॉर्मेटर फीचर पिनो लॉग्स के लिए एक बेहतरीन सरल फॉर्मेटर है, और इसे स्थापित करना आसान है। यहां बताया गया है कि इसे कैसे शुरू करें और चलाएं: pino-pretty - अपने टर्मिनल में निम्न आदेश चलाकर अपने नोड.जेएस प्रोजेक्ट में निर्भरता के रूप में पिनो-सुंदर स्थापित करें: चरण 1 npm install pino-pretty - अपनी फ़ाइल के शीर्ष पर कोड की निम्न पंक्ति जोड़कर अपने Node.js एप्लिकेशन में आयात करें: चरण 2 pino-pretty const pino = require('pino'); const pinoPretty = require('pino-pretty'); const logger = pino({ level: 'info' }); logger.pipe(pinoPretty()); इन दो कोड स्निपेट्स के साथ, आपने स्थापित किया है और इसे अपने पिनो लॉग्स को प्रारूपित करने के लिए सेट किया है। अब आप अपने एप्लिकेशन में संदेशों को लॉग करने के लिए लॉगर इंस्टेंस का उपयोग कर सकते हैं और लॉग कंसोल पर एक सुंदर, मानव-पठनीय प्रारूप में प्रदर्शित होंगे। pino-pretty द्वारा में पिनो के साथ डिबगिंग के बारे में और जानें @RisingStack उपलब्ध सर्वोत्तम टूल के साथ Node.js को डीबग कैसे करें # 2। विंस्टन विंस्टन लाभ GitHub पर 20K से अधिक सितारों के साथ, विंस्टन Node.js के लिए एक बहुत लोकप्रिय लॉगिंग लाइब्रेरी है। विंस्टन अपने व्यापक सुविधा सेट और उपयोग में आसानी के कारण Node.js पारिस्थितिकी तंत्र में एक अद्वितीय लॉगिंग लाइब्रेरी है। विंस्टन के अलग होने के कुछ कारण हैं: - विंस्टन अत्यधिक अनुकूलन योग्य है, और विभिन्न प्रकार के लॉगिंग विकल्प और परिवहन तंत्र प्रदान करता है जो लॉग को कई आउटपुट, जैसे कि कंसोल, फ़ाइल या रिमोट सर्वर पर लिखे जाने की अनुमति देता है। लचीला - विंस्टन एक क्वेरी-सक्षम लॉग आर्काइव प्रदान करता है, जिससे लॉग को खोजना और विश्लेषण करना आसान हो जाता है। क्वेरी योग्य लॉग - विंस्टन के पास एक सरल, उपयोग में आसान एपीआई है जो Node.js एप्लिकेशन में लॉगिंग के साथ आरंभ करना आसान बनाता है। यह मुख्य कार्यक्षमता का एक न्यूनतम सेट प्रदान करता है, जबकि डेवलपर्स को आवश्यकतानुसार लॉगिंग कार्यक्षमता को विस्तारित और अनुकूलित करने की अनुमति भी देता है। उपयोग में आसान - विंस्टन के पास एक व्यापक दस्तावेज है जो इसके एपीआई के बारे में विस्तृत जानकारी प्रदान करता है, और इसमें डेवलपर्स को जल्दी और आसानी से आरंभ करने में मदद करने के लिए कई उदाहरण और ट्यूटोरियल शामिल हैं। अच्छी तरह से प्रलेखित - विंस्टन डेवलपर्स के एक बड़े और सक्रिय समुदाय के साथ एक ओपन-सोर्स प्रोजेक्ट है, जो यह सुनिश्चित करने में मदद करता है कि पुस्तकालय अच्छी तरह से बनाए रखा गया है, बग-मुक्त है, और नवीनतम रुझानों और तकनीकों को बनाए रखने के लिए अद्यतन किया गया है। समुदाय-संचालित विंस्टन स्थापित करना अपने नोड.जेएस प्रोजेक्ट में विंस्टन को स्थापित करने के लिए, आप अपने टर्मिनल में निम्न आदेश चलाकर एनपीएम पैकेज मैनेजर का उपयोग कर सकते हैं: npm install winston विंस्टन का उपयोग करना एक बार स्थापना पूर्ण हो जाने के बाद, आप निम्न पंक्ति को शामिल करके अपने Node.js कोड में विंस्टन का आयात और उपयोग कर सकते हैं: const winston = require('winston'); फिर आप अपने लॉगिंग उदाहरणों को कॉन्फ़िगर करने और बनाने के लिए विंस्टन लाइब्रेरी का उपयोग कर सकते हैं, उदाहरण के लिए: const logger = winston.createLogger({ level: 'info', format: winston.format.json(), transports: [ new winston.transports.Console() ] }); यह सूचना स्तर और कंसोल ट्रांसपोर्ट के साथ लॉगर इंस्टेंस बनाता है। आप इस लॉगर इंस्टेंस का उपयोग अपने एप्लिकेशन में संदेशों को लॉग करने के लिए कर सकते हैं, उदाहरण के लिए: logger.info('Hello World'); यह संदेश को सूचना लॉग स्तर के साथ कंसोल में लॉग करेगा। Hello World विंस्टन में लॉगिंग स्तर विंस्टन छह डिफ़ॉल्ट लॉगिंग स्तरों से लैस है, जो RFC5424 दस्तावेज़ में उल्लिखित दिशानिर्देशों के अनुसार व्यवस्थित हैं। स्तरों को संख्यात्मक प्राथमिकता दी जाती है, उच्चतम गंभीरता को सबसे कम संख्या सौंपी जाती है। छह स्तर और उनके संबंधित प्राथमिकता मान हैं: { error: 0, warn: 1, info: 2, http: 3, verbose: 4, debug: 5, silly: 6 } छह लॉग स्तरों में से प्रत्येक के लिए, लॉगर ऑब्जेक्ट पर संबंधित विधि होती है: logger.error('error'); logger.warn('warn'); logger.info('info'); logger.verbose('verbose'); logger.debug('debug'); logger.silly('silly'); आप लॉगिंग स्तर का प्रतिनिधित्व करने के लिए लॉग () विधि में एक स्ट्रिंग भी पास कर सकते हैं: logger.log('error', 'error message'); logger.log('info', 'info message'); पर संपत्ति तय करती है कि आपके द्वारा कॉन्फ़िगर किए गए ट्रांसपोर्ट पर कौन से लॉग संदेश भेजे जाएंगे। उदाहरण के लिए, यदि संपत्ति पर सेट है, तो केवल या उच्च की गंभीरता वाली लॉग प्रविष्टियाँ लिखी जाएंगी और अन्य सभी को वंचित कर दिया जाएगा। इसका अर्थ है कि वर्तमान कॉन्फ़िगरेशन में, केवल , और के स्तर वाले लॉग संदेश आउटपुट होंगे। logger level level info info info warn error #3। बनियान बनियान से लाभ होता है Bunyan Node.js के लिए एक अद्वितीय लॉगिंग लाइब्रेरी है क्योंकि लॉग डेटा को अधिक संरचित और पठनीय बनाने पर ध्यान केंद्रित किया गया है (वे सादे पाठ के बजाय JSON ऑब्जेक्ट के रूप में लॉग को क्रमबद्ध करके इसे प्राप्त करते हैं)। यहां बताया गया है कि गीथूब पर बनीन के 7k सितारे क्यों हैं: - कुछ अन्य लॉगिंग लाइब्रेरी के विपरीत, Bunyan डेटा को JSON प्रारूप में लॉग करता है, जिससे अन्य टूल और प्लेटफॉर्म के साथ पार्स करना और एकीकृत करना आसान हो जाता है। JSON प्रारूप - लॉग गंभीरता स्तर और दहलीज को प्रबंधित करने के लिए Bunyan लचीले विकल्पों के साथ कई लॉगिंग स्तरों का समर्थन करता है। लचीले लॉगिंग स्तर - बनयान में, एक सुविधा मौजूद है जिसे क्रमांकन कहा जाता है, जहाँ कार्य एक जावास्क्रिप्ट वस्तु को JSON-प्रतिनिधित्व योग्य वस्तु में परिवर्तित करते हैं। यह एक विशिष्ट लॉगर इंस्टेंस को एक सीरियलाइज़र रखने की अनुमति देता है जो लॉग रिकॉर्ड फ़ील्ड नाम को सीरियलाइजेशन फ़ंक्शन से जोड़ता है। क्रमांकन - बनयान लॉगिंग के लिए एक सरल, उपयोग में आसान एपीआई प्रदान करता है, जिससे यह सभी कौशल स्तरों के डेवलपर्स के लिए सुलभ हो जाता है। उपयोग में आसान एपीआई - Bunyan विभिन्न प्रकार के प्लगइन्स और ट्रांसपोर्ट का समर्थन करता है, जैसे कि कंसोल, फाइल, एचटीटीपी और ईमेल, जिससे विशिष्ट जरूरतों और आवश्यकताओं को पूरा करने के लिए लॉगिंग आउटपुट को अनुकूलित करना आसान हो जाता है। प्लगइन्स और ट्रांसपोर्ट बनयान को स्थापित करना बनीन को स्थापित करने के लिए, आप अपने टर्मिनल या कमांड प्रॉम्प्ट में निम्न आदेश चला सकते हैं: npm install bunyan यह आपके Node.js प्रोजेक्ट में Bunyan लाइब्रेरी और इसकी निर्भरताओं को स्थापित करेगा। एक बार इंस्टॉल हो जाने पर, आपको अपने कोड में लाइब्रेरी की आवश्यकता हो सकती है और इसका उपयोग शुरू कर सकते हैं। बनयान का प्रयोग - अपनी JavaScript फ़ाइल के शीर्ष पर, निम्न पंक्ति जोड़ें: अपने प्रोजेक्ट में बनीन आयात करें const bunyan = require('bunyan'); - अगला, निम्नलिखित कोड का उपयोग करके एक लकड़हारा उदाहरण बनाएँ: एक लकड़हारा उदाहरण बनाएँ const logger = bunyan.createLogger({ name: 'my-app-name', level: 'info' }); इस उदाहरण में, आपके एप्लिकेशन का नाम है और स्तर उस न्यूनतम स्तर को निर्दिष्ट करता है जिसे आप देखना चाहते हैं। name - एक संदेश लॉग करने के लिए, बस बनीन की लॉग विधियों में से किसी एक को कॉल करें, जैसे कि जानकारी, चेतावनी, या त्रुटि, और उस संदेश को पास करें जिसे आप लॉग करना चाहते हैं, जैसे: एक संदेश लॉग करें logger.info('This is an info log message'); logger.warn('This is a warn log message'); logger.error('This is an error log message'); - अंत में, अपना कोड चलाएँ और आपको कंसोल में लॉग किए गए संदेश दिखाई देने चाहिए। अपना कोड चलाएँ डिफ़ॉल्ट रूप से, Bunyan लॉग्स को JSON प्रारूप में आउटपुट करता है, जिससे लॉग प्रबंधन टूल के साथ लॉग्स को पार्स करना और उनका विश्लेषण करना आसान हो जाता है। आप Bunyan's streams विकल्प का उपयोग करके प्रारूप को भी अनुकूलित कर सकते हैं। # 4। मॉर्गन मॉर्गन लाभ मॉर्गन कई कारणों से Node.js के लिए एक अद्वितीय लॉगिंग लाइब्रेरी है, मुख्य रूप से मिडलवेयर के रूप में इसकी अनूठी स्थिति। हमारे लेखन के समय GitHub पर 7.3K सितारों के साथ अन्य कारणों से यह बहुत लोकप्रिय हो गया है। मॉर्गन के इतना लोकप्रिय होने के कुछ कारण यहां दिए गए हैं: - मॉर्गन Node.js एक्सप्रेस ढांचे में मिडलवेयर के रूप में काम करता है, जिससे मौजूदा एक्सप्रेस-आधारित अनुप्रयोगों में एकीकृत करना आसान हो जाता है। मिडलवेयर-आधारित - मॉर्गन लॉग प्रारूप से कस्टम टोकन तक, अनुकूलन विकल्पों की एक विस्तृत श्रृंखला प्रदान करता है, जिससे डेवलपर्स अपने लॉग को उनकी विशिष्ट आवश्यकताओं के अनुरूप बना सकते हैं। अनुकूलन योग्य - मॉर्गन विभिन्न प्रकार के आउटपुट स्ट्रीम में लॉग डेटा लिख सकता है, जिसमें कंसोल, फाइल या रिमोट सर्वर भी शामिल हैं। स्ट्रीम-आधारित - मॉर्गन को तेज़ और हल्का डिज़ाइन किया गया है, जो इसे उच्च-ट्रैफ़िक अनुप्रयोगों के लिए उपयुक्त बनाता है जहाँ प्रदर्शन महत्वपूर्ण है। तेज़ और हल्का - मॉर्गन को विशेष रूप से HTTP अनुरोधों और प्रतिक्रियाओं को लॉग करने के लिए डिज़ाइन किया गया है, जो वेब सर्वर के प्रदर्शन को डिबगिंग और विश्लेषण करने के लिए उपयोगी है। HTTP अनुरोध लॉगिंग मॉर्गन स्थापित करना एनपीएम का उपयोग कर मॉर्गन पैकेज स्थापित करके प्रारंभ करें: npm install morgan मॉर्गन का उपयोग करना स्थापना प्रक्रिया को पूरा करने के बाद, आपको "आवश्यकता" फ़ंक्शन का उपयोग करके लाइब्रेरी को आयात करना होगा और फिर इसे अपने Express.js एप्लिकेशन में मिडलवेयर के रूप में एकीकृत करना होगा। इसके लिए कोड निम्न जैसा दिखेगा: var morgan = require('morgan'); app.use(morgan('dev')); "देव" तर्क मॉर्गन द्वारा प्रदान किया गया एक प्रारूप विकल्प है। मॉर्गन पांच अलग-अलग लॉगिंग प्रारूप प्रदान करता है, जिनमें निम्न शामिल हैं: माइनसक्यूल आउटपुट है। tiny में प्रतिक्रिया समय शामिल होता है और डिफ़ॉल्ट रूप से लॉग को संक्षिप्त करता है। short विकास के दौरान उपयोग के लिए एक संक्षिप्त, रंग-कोडित आउटपुट प्रदान करता है dev अपाचे संयुक्त लॉग आउटपुट का भी उपयोग करता है। common मानकीकृत अपाचे संयुक्त लॉग आउटपुट का उपयोग करता है। combined मॉर्गन को अपने आवेदन में एकीकृत करते समय आप उपयुक्त तर्क का उपयोग करके इन प्रारूपों के बीच चयन कर सकते हैं, जैसा कि नीचे दिखाया गया है: app.use(morgan('combined')); app.use(morgan('common')); app.use(morgan('dev')); app.use(morgan('short')); app.use(morgan('tiny')); # 5। छांटने का स्तर लॉगलेवल लाभ लॉगलेवल यहां सूचीबद्ध कुछ अन्य विकल्पों की तुलना में थोड़ा कम लोकप्रिय है, जीथब पर 2.4K सितारों के साथ, लेकिन फिर भी यह एक महान, हल्का लॉगिंग लाइब्रेरी बना हुआ है। यहाँ कुछ कारण दिए गए हैं कि लॉगलेवल Node.js के लिए एक अद्वितीय लॉगिंग लाइब्रेरी क्यों है: - लॉगलेवल एक बहुत ही हल्का पुस्तकालय है, जो इसे उन परिस्थितियों के लिए आदर्श बनाता है जहां आपको न्यूनतम कोड ओवरहेड की आवश्यकता होती है। न्यूनतम कोड पदचिह्न - लॉगलेवल डायनेमिक लॉगिंग स्तर प्रदान करता है, जो आपको रनटाइम पर लॉगिंग स्तर को बदलने की अनुमति देता है, जिससे कोड को संशोधित किए बिना लॉगिंग विवरण के विभिन्न स्तरों के बीच स्विच करना आसान हो जाता है। डायनेमिक लॉगिंग स्तर - लॉगलेवल का एपीआई सरल है, संदेशों को लॉग करने के लिए उपयोग में आसान और लचीला तरीका प्रदान करता है। सिंपल एपीआई - लॉगलेवल Node.js और वेब ब्राउज़र दोनों के साथ संगत है, जो इसे विभिन्न वातावरणों में लॉगिंग के लिए एक बहुमुखी विकल्प बनाता है। ब्राउज़र संगतता - लॉगलेवल को log4js के शीर्ष पर बनाया गया है, जो व्यापक रूप से उपयोग की जाने वाली लॉगिंग लाइब्रेरी है, जो विभिन्न प्लेटफ़ॉर्म पर संगतता सुनिश्चित करती है। क्रॉस-प्लेटफ़ॉर्म संगतता लॉगलेवल की स्थापना लॉगलेवल सेट अप करने के लिए, आपको पहले इसे npm का उपयोग करके इंस्टॉल करना होगा: npm install loglevel लॉगलेवल का उपयोग करना एक बार जब आप इसे स्थापित कर लेते हैं, तो आप इसे अपने Node.js प्रोजेक्ट में आयात कर सकते हैं और लॉग स्तर सेट करके इसका उपयोग शुरू कर सकते हैं: const log = require('loglevel'); log.setLevel(log.levels.ERROR); लॉग स्तर को आप निर्दिष्ट कर रहे हैं कि केवल के गंभीरता स्तर वाले लॉग संदेशों को लॉग किया जाएगा। लॉग स्तर सेट करने के बाद, आप विभिन्न स्तरों पर संदेश लॉग करने के लिए निम्न विधियों का उपयोग कर सकते हैं: ERROR, ERROR log.trace('This is a trace message'); log.debug('This is a debug message'); log.info('This is an info message'); log.warn('This is a warning message'); log.error('This is an error message'); आपके द्वारा सेट किया गया लॉग स्तर यह निर्धारित करेगा कि कौन से संदेशों को लॉग किया जाएगा और किसे अनदेखा किया जाएगा। उदाहरण के लिए, यदि लॉग स्तर जानकारी पर सेट है, तो केवल और log.warn या log.error का उपयोग करके लॉग किए गए संदेश प्रदर्शित होंगे। log.info #6। Log4js Log4js लाभ बेशक, हम इसके बड़े भाई, Log4js को सूचीबद्ध किए बिना लॉगलेवल का उल्लेख नहीं कर सकते। Log4js एक जावास्क्रिप्ट लॉगिंग लाइब्रेरी है जिसे लोकप्रिय जावा लॉगिंग लाइब्रेरी Log4j के पोर्ट के रूप में शुरू किया गया था। यह जावास्क्रिप्ट अनुप्रयोगों के लिए एक समान लॉगिंग समाधान प्रदान करने के लिए बनाया गया था और तब से उन्नत लॉगिंग क्षमताओं और सुविधाओं को प्रदान करने के लिए विकसित हुआ है। Github पर 5.6k से अधिक सितारों के साथ, यहां कुछ कारण बताए गए हैं कि Log4js इतना लोकप्रिय क्यों है: - Log4js लॉगिंग के लिए कई प्रकार के विकल्प प्रदान करता है, जिसमें लॉग स्तर, विभिन्न प्रकार के परिशिष्ट (जैसे कंसोल, फ़ाइल, नेटवर्क), और एप्लिकेशन के विभिन्न भागों के लिए अलग लॉग कॉन्फ़िगरेशन निर्दिष्ट करने की क्षमता शामिल है। कॉन्फ़िगरेशन में लचीलापन - Log4js कस्टम परिशिष्ट के निर्माण का समर्थन करता है, जिससे डेवलपर्स को अपनी विशिष्ट लॉगिंग आवश्यकताओं को पूरा करने के लिए पुस्तकालय का विस्तार करने की अनुमति मिलती है। कस्टम परिशिष्ट - लॉग संदेशों को डिबगिंग के लिए अधिक उपयोगी बनाने के लिए, लॉग4js डेवलपर्स को लॉग संदेशों को अतिरिक्त प्रासंगिक जानकारी, जैसे कि उपयोगकर्ता के अनुरोध डेटा के साथ संबद्ध करने की अनुमति देता है। लॉग संदर्भ के लिए समर्थन - Log4js रनटाइम पर लॉग स्तर को बदलने का समर्थन करता है, जिससे उत्पादन वातावरण में लॉगिंग को प्रबंधित करना आसान हो जाता है। डायनेमिक लॉग स्तर कॉन्फ़िगरेशन - Log4js में लोकप्रिय टूल जैसे लॉगस्टैश और ग्रेलॉग के लिए अंतर्निहित समर्थन है, जिससे लॉगिंग को व्यापक एप्लिकेशन मॉनिटरिंग और विश्लेषण वर्कफ़्लो में एकीकृत करना आसान हो जाता है। अन्य उपकरणों के साथ एकीकरण Log4js की स्थापना Log4js को स्थापित करने के लिए, आप अपने टर्मिनल में निम्नलिखित कमांड चलाकर npm पैकेज मैनेजर का उपयोग कर सकते हैं: npm install log4js यह Log4js और इसकी निर्भरताओं के नवीनतम संस्करण को स्थापित करेगा। फिर आप अपने Node.js एप्लिकेशन में लाइब्रेरी की आवश्यकता कर सकते हैं और संदेशों को लॉग करने के लिए इसका उपयोग करना शुरू कर सकते हैं। Log4js का उपयोग करना Log4js का उपयोग शुरू करने के लिए, पहले इसे अपने कोड में आवश्यक करें और इसे कॉन्फ़िगर करें: const log4js = require('log4js'); log4js.configure({ appenders: { console: { type: 'console' } }, categories: { default: { appenders: ['console'], level: 'info' } } }); const logger = log4js.getLogger(); फिर आप विभिन्न स्तरों पर संदेशों को लॉग करने के लिए लकड़हारे का उपयोग कर सकते हैं: logger.trace('Entering cheese testing'); logger.debug('Got cheese.'); logger.info('Cheese is Gouda.'); logger.warn('Cheese is quite smelly.'); logger.error('Cheese is too ripe!'); logger.fatal('Cheese was breeding ground for listeria.'); विभिन्न लॉग स्तरों के साथ एकाधिक परिशिष्टों (कंसोल और फ़ाइल) में संदेशों को लॉग करने के लिए Log4js का उपयोग करने का एक उदाहरण यहां दिया गया है: const log4js = require('log4js'); log4js.configure({ appenders: { console: { type: 'console' }, file: { type: 'file', filename: 'app.log' } }, categories: { default: { appenders: ['console'], level: 'info' }, file: { appenders: ['file'], level: 'error' } } }); const logger = log4js.getLogger(); const fileLogger = log4js.getLogger('file'); logger.info('This is an informational message'); fileLogger.error('This is an error message'); इस उदाहरण में, "डिफ़ॉल्ट" श्रेणी वाले लकड़हारे को स्तर की जानकारी या कंसोल से ऊपर वाले संदेशों को लॉग करने के लिए कॉन्फ़िगर किया गया है। श्रेणी "फ़ाइल" के साथ लकड़हारा स्तर त्रुटि या फ़ाइल के ऊपर के साथ संदेश लॉग करने के लिए कॉन्फ़िगर किया गया है। दो लकड़हारे अपने-अपने परिशिष्टों को संदेशों को लॉग करने के लिए एक दूसरे के स्थान पर उपयोग किए जा सकते हैं। #7। एनपीएमलॉग एनपीएमओएल लाभ Npmlog का अनूठा मूल्य इसकी सादगी और न्यूनतम ओवरहेड में निहित है, जो इसे छोटे पैमाने या प्रदर्शन-संवेदनशील परियोजनाओं में उपयोग के लिए उपयुक्त बनाता है। एनपीएम पारिस्थितिकी तंत्र के साथ मूल रूप से कॉन्फ़िगर करना और एकीकृत करना आसान है (एनपीएम की आधिकारिक लॉगर उपयोगिता के बाद से आश्चर्यजनक), यह हल्के लॉगिंग समाधान की तलाश करने वाले डेवलपर्स के लिए एक लोकप्रिय विकल्प बनाता है। यहाँ कुछ कारण बताए गए हैं कि क्यों npmlog ने सूची बनाई: - npmlog का एक छोटा कोडबेस और न्यूनतम ओवरहेड है, जो इसे छोटे पैमाने या प्रदर्शन-संवेदनशील परियोजनाओं के लिए उपयुक्त बनाता है। लाइटवेट - एनपीएमलॉग विशेष रूप से एनपीएम पारिस्थितिकी तंत्र के भीतर उपयोग के लिए डिज़ाइन किया गया है, जिससे इसे अन्य एनपीएम पैकेजों और उपकरणों के साथ एकीकृत करना आसान हो जाता है। एनपीएम के साथ आसान एकीकरण - npmlog आपको लॉग स्तर, स्ट्रीम और उपसर्ग को अनुकूलित करने की अनुमति देता है, जिससे आपको अपने लॉग उत्पन्न और प्रदर्शित होने पर पूर्ण नियंत्रण मिलता है। अनुकूलन योग्य - npmlog परियोजनाओं की एक विस्तृत श्रृंखला के लिए उपयुक्त है, छोटी स्क्रिप्ट से लेकर बड़े अनुप्रयोगों तक, इसे एक बहुमुखी और लचीला लॉगिंग टूल बनाता है। वर्सेटाइल - npmlog में एक सीधा एपीआई है और इसके लिए न्यूनतम सेटअप की आवश्यकता होती है, जिससे यह आपके Node.js प्रोजेक्ट में लॉगिंग के साथ आरंभ करना त्वरित और आसान हो जाता है। उपयोग करने में आसान एनपीएमलॉग स्थापित करना Npmlog को स्थापित करने के लिए, आपको अपने मशीन पर Node.js और npm (नोड पैकेज मैनेजर) स्थापित करने की आवश्यकता है। उसके बाद, आप अपने टर्मिनल या कमांड प्रॉम्प्ट में निम्न आदेश चला सकते हैं: npm install npmlog यह npmlog और इसकी निर्भरता के नवीनतम संस्करण को डाउनलोड और इंस्टॉल करेगा, जिससे आप इसे अपने Node.js प्रोजेक्ट में उपयोग कर सकेंगे। एनपीएमओएल का उपयोग करना यहाँ कैसे एक Node.js परियोजना में npmlog का उपयोग करने का एक उदाहरण दिया गया है: const log = require('npmlog'); log.level = 'verbose'; log.verbose('This is a verbose message'); log.info('This is an informational message'); log.warn('This is a warning'); log.error('This is an error'); इस उदाहरण में, हम मॉड्यूल की आवश्यकता से शुरू करते हैं और इसे एक चर के लिए निर्दिष्ट करते हैं। फिर, हम लॉग स्तर को पर सेट करते हैं, जिसका अर्थ है कि , , और के लॉग स्तर वाले संदेश प्रदर्शित किए जाएंगे। फिर हम , , और विधियों का उपयोग करके विभिन्न स्तरों पर संदेशों को लॉग करते हैं। npmlog verbose verbose info warn error verbose info warn error ध्यान दें कि डिफ़ॉल्ट रूप से, npmlog को लिखता है। अगर आपको पर लिखना है, तो आप प्रॉपर्टी का इस्तेमाल कर सकते हैं। process.stderr process.stdout log.stream # 8। दहाड़ गरजने से लाभ होता है roarr लाइब्रेरी एक Node.js लॉगिंग टूल है जिसे आरंभीकरण की आवश्यकता के बिना संरचित डेटा का उत्पादन करने के लिए डिज़ाइन किया गया है। इसमें एक कमांड-लाइन इंटरफ़ेस (CLI) है और यह पर्यावरण चर का समर्थन करता है, जिससे यह बहुमुखी और उपयोग में आसान हो जाता है। इसके अतिरिक्त, रोरर Node.js और ब्राउज़र वातावरण दोनों के साथ संगत है, जो इसे अनुप्रयोगों की एक विस्तृत श्रृंखला के लिए एक बहुमुखी लॉगिंग समाधान बनाता है। यहां कुछ प्रमुख बिंदु दिए गए हैं जो दहाड़ पुस्तकालय के अद्वितीय मूल्य को उजागर करते हैं: - पुस्तकालय एक संरचित प्रारूप में लॉग उत्पन्न करता है, जिससे मशीन-पठनीय उपकरणों का उपयोग करके लॉग को संसाधित करना और विश्लेषण करना आसान हो जाता है। संरचित लॉगिंग - रोर मेटाडेटा का एक समृद्ध सेट प्रदान करता है, जैसे कि अनुरोध और प्रतिक्रिया जानकारी, जिसका उपयोग समस्याओं का निदान करने और आपके लॉग की समग्र गुणवत्ता में सुधार करने के लिए किया जा सकता है। रिच मेटाडेटा - इसके संरचित प्रारूप के बावजूद, दहाड़ते लॉग भी मानव-पठनीय होने के लिए डिज़ाइन किए गए हैं, जिससे आपके लॉग के संदर्भ और सामग्री को समझना आसान हो जाता है। मानव-पठनीय - पुस्तकालय बिना किसी अनावश्यक जटिलता के लॉगिंग के लिए एक सरल और सहज एपीआई प्रदान करता है। उपयोग में आसान - दहाड़ पुस्तकालय आपको अपने लॉग की उपस्थिति और सामग्री को अनुकूलित करने की अनुमति देता है, जिसमें लॉग स्तर, स्ट्रीम और मेटाडेटा को अनुकूलित करने के विकल्प शामिल हैं। अनुकूलन योग्य रोर स्थापित करना सबसे पहले, एनपीएम का उपयोग करके दहाड़ स्थापित करें: npm install roarr रोर का उपयोग करना इसके बाद, roarr को अपने कोड में इम्पोर्ट करें और एक लकड़हारा बनाएँ: const Roarr = require('roarr').default; const logger = new Roarr({ context: { service: 'my-service' } }); लॉग संदेश विधि का उपयोग कर: log logger.info('Hello, world!'); डिफ़ॉल्ट रूप से, दहाड़ते लॉग कंसोल में आउटपुट होंगे। आप विकल्प का उपयोग करके फ़ाइल जैसे किसी भिन्न स्ट्रीम को निर्दिष्ट करके लॉग आउटपुट को अनुकूलित कर सकते हैं: stream const Roarr = require('roarr').default; const fs = require('fs'); const logger = new Roarr({ context: { service: 'my-service' }, stream: fs.createWriteStream('./my-service.log') }); यह कैसे दहाड़ का उपयोग करने का एक बुनियादी उदाहरण है। कई और विकल्प और सुविधाएँ उपलब्ध हैं, इसलिए अधिक जानकारी के लिए आधिकारिक दहाड़ दस्तावेज़ीकरण का संदर्भ लेना सुनिश्चित करें। #9। दरियाफ्त अनुरेखक लाभ ट्रेसर Node.js अनुप्रयोगों के लिए एक ओपन-सोर्स लॉगिंग लाइब्रेरी है, जिसे Node.js समुदाय द्वारा विकसित किया गया है। यह Node.js अनुप्रयोगों में संदेशों और डिबगिंग जानकारी को लॉग करने के लिए एक कुशल और लचीला तरीका प्रदान करने के लिए डिज़ाइन किया गया है। अनुरेखक को स्वयंसेवकों की एक टीम द्वारा सक्रिय रूप से बनाए रखा और विकसित किया गया है और यह किसी के लिए भी उपलब्ध है जो जीथब पर उपयोग और योगदान कर सकता है। यहां कुछ विशेषताएं दी गई हैं जो इसे अद्वितीय लॉगिंग लाइब्रेरी बनाती हैं: - ट्रेसर अतुल्यकालिक लॉगिंग का उपयोग करता है जिसका अर्थ है कि लॉग प्रोग्राम के निष्पादन को रोक नहीं रहे हैं। अतुल्यकालिक लॉगिंग - ट्रेसर संरचित लॉगिंग प्रदान करता है, जिसका अर्थ है कि लॉग कुंजी-मूल्य जोड़े में व्यवस्थित होते हैं, जिससे लॉग डेटा को खोजना, विश्लेषण करना और कल्पना करना आसान हो जाता है। संरचित लॉगिंग - ट्रैसर एक अनुकूलन योग्य आउटपुट स्वरूप प्रदान करता है, जिससे डेवलपर्स कंसोल, फ़ाइल, या क्लाउड-आधारित सेवाओं जैसे AWS CloudWatch सहित अपने लॉग के लिए प्रारूप और गंतव्य चुन सकते हैं। अनुकूलन योग्य आउटपुट - ट्रेसर एक समृद्ध लॉगिंग संदर्भ प्रदान करता है, जिसमें मेटाडेटा जैसे अनुरोध आईडी, उपयोगकर्ता आईडी और लॉग में अन्य जानकारी संलग्न करने की क्षमता शामिल है। रिच लॉगिंग संदर्भ - ट्रेसर मिडलवेयर समर्थन प्रदान करता है, जिससे डेवलपर्स आसानी से अपने Express.js या Koa.js अनुप्रयोगों में लॉगिंग जोड़ सकते हैं। मिडिलवेयर समर्थन ट्रेसर स्थापित करना ट्रेसर को नोड पैकेज मैनेजर (एनपीएम) का उपयोग करके स्थापित किया जा सकता है। ट्रैसर को स्थापित करने के चरण यहां दिए गए हैं: अपना टर्मिनल या कमांड प्रॉम्प्ट खोलें अपनी वर्तमान निर्देशिका को अपने Node.js प्रोजेक्ट निर्देशिका में बदलें ट्रेसर को स्थापित करने के लिए निम्नलिखित कमांड चलाएँ: npm install tracer यह ट्रैसर को आपके प्रोजेक्ट में एक निर्भरता के रूप में स्थापित करेगा। इसके बाद आप अपने कोड में इसकी आवश्यकता कर सकते हैं और संदेशों को लॉग करने के लिए इसका उपयोग करना शुरू कर सकते हैं। ट्रैसर का उपयोग करना अपने कोड में ट्रैसर का उपयोग करने का एक उदाहरण यहां दिया गया है: const tracer = require('tracer'); const logger = tracer.console(); logger.info('Starting the application...'); इस उदाहरण में, हमें पहले ट्रैसर लाइब्रेरी की आवश्यकता होती है, फिर विधि का उपयोग करके एक कंसोल लॉगर बनाएं। अंत में, हम लॉगर ऑब्जेक्ट पर विधि का उपयोग करके एक सूचनात्मक संदेश लॉग करते हैं। tracer.console() info ट्रैसर का उपयोग करने का एक और उदाहरण यहां दिया गया है: const tracer = require('tracer'); const logger = tracer.dailyfile({root: './logs', maxLogFiles: 10}); logger.error('An error has occurred:', new Error('Something went wrong')); इस उदाहरण में, हम एक फ़ाइल लकड़हारा बनाने के लिए विधि का उपयोग कर रहे हैं जो एक दैनिक घूमने वाली फ़ाइल में लॉग लिखता है। विकल्प उस निर्देशिका को निर्दिष्ट करता है जहां लॉग फ़ाइलें संग्रहीत की जाएंगी, और विकल्प लॉग फ़ाइलों की संख्या को सीमित करता है जिन्हें रखा जाएगा। tracer.dailyfile root maxLogFiles अंत में, हम लॉगर ऑब्जेक्ट पर मेथड का उपयोग करके एरर ऑब्जेक्ट के साथ एक एरर मैसेज लॉग करते हैं, जो हुई एरर के बारे में अधिक जानकारी प्रदान करता है। error #10। सिगनल सिगनल लाभ इसका जीथब पृष्ठ "हैक करने योग्य और मूल रूप से कॉन्फ़िगर करने योग्य" होने का दावा करता है, और यह नोड.जेएस समुदाय में सिग्नल को ऐसी प्यारी लॉगिंग लाइब्रेरी बनाने का एक प्रमुख हिस्सा है। लाइब्रेरी को उन कठिनाइयों के समाधान के रूप में बनाया गया था जिनका सामना डेवलपर्स को Node.js अनुप्रयोगों में संदेशों को लॉग करने का प्रयास करते समय करना पड़ता है, जैसे अव्यवस्थित और पढ़ने में मुश्किल लॉग। यहाँ वह है जो इसे पैक से अलग करता है: - Signale विभिन्न प्रकार के अनुकूलन योग्य लॉग आउटपुट प्रदान करता है, जिससे डेवलपर्स को सरल कंसोल आउटपुट से लेकर JSON और Logfmt जैसे अधिक उन्नत आउटपुट तक अपनी आवश्यकताओं के अनुरूप आउटपुट चुनने की अनुमति मिलती है। अनुकूलन योग्य लॉग आउटपुट - Signale में एक सरल और सहज API है, जो डेवलपर्स के लिए उपयोग करना और समझना आसान बनाता है, यहां तक कि उन लोगों के लिए भी जो लॉगिंग में नए हैं। सहज API - सिग्नेले स्टाइल आउटपुट प्रदान करता है, लॉग को अधिक पठनीय और देखने में आकर्षक बनाता है, जिससे महत्वपूर्ण लॉग संदेशों को जल्दी से पहचानना आसान हो जाता है। स्टाइल आउटपुट - सिग्नेले समृद्ध लॉग संदर्भ प्रदान करता है, जैसे टाइमस्टैम्प और लॉग स्तर, जिससे लॉग का विश्लेषण करना और समझना आसान हो जाता है। रिच लॉग प्रसंग - Signale के पास डेवलपर्स और योगदानकर्ताओं का एक बड़ा और सक्रिय समुदाय है, जो यह सुनिश्चित करता है कि पुस्तकालय अच्छी तरह से बनाए रखा गया है और नवीनतम तकनीकों और सर्वोत्तम प्रथाओं के साथ अद्यतित है। सक्रिय समुदाय सिगनल स्थापित करना Signale को स्थापित करने के लिए, आप अपने टर्मिनल में निम्नलिखित कमांड चलाकर npm, Node.js पैकेज प्रबंधक का उपयोग कर सकते हैं: npm install signale वैकल्पिक रूप से, आप अपने टर्मिनल में निम्न आदेश चलाकर Signale को स्थापित करने के लिए यार्न का उपयोग भी कर सकते हैं: yarn add signale एक बार इंस्टॉल हो जाने के बाद, आप Signale को अपने Node.js एप्लिकेशन में इम्पोर्ट कर सकते हैं और संदेशों और डिबगिंग जानकारी को लॉग करने के लिए इसका उपयोग करना शुरू कर सकते हैं। सिगनल का उपयोग करना यहां आपके Node.js एप्लिकेशन में Signale को आयात करने और संदेशों को लॉग करने के लिए इसका उपयोग करने का एक उदाहरण दिया गया है: const signale = require('signale'); // Log an info message signale.info('Starting up the server'); // Log a success message signale.success('Server started successfully'); // Log a warning message signale.warn('Low memory warning'); // Log an error message signale.error(new Error('An error occurred while processing data')); इस उदाहरण में, हम फ़ंक्शन का उपयोग करके अपने Node.js एप्लिकेशन में Signale को आयात करते हैं। फिर, हम विभिन्न प्रकार के संदेशों को लॉग करने के लिए Signale द्वारा प्रदान की गई विभिन्न लॉगिंग विधियों, जैसे कि , , और का उपयोग करते हैं। इन विधियों में से प्रत्येक का एक विशिष्ट प्रतीक और रंग है, जिससे लॉग संदेश के प्रकार को जल्दी से पहचानना आसान हो जाता है। require info success warn error आप अतिरिक्त लॉगिंग विधियों और अनुकूलन विकल्पों सहित, Signale का उपयोग करने के तरीके के बारे में अधिक जानकारी में प्राप्त कर सकते हैं। Signale दस्तावेज़ीकरण Node.js लॉग लाइब्रेरी के साथ अपनी डिबगिंग प्रक्रिया को अनुकूलित करें अपने Node.js एप्लिकेशन को डीबग करने के लिए एक तेज़ और कुशल विधि की तलाश में हैं? इस आलेख में उल्लिखित एक या अधिक पुस्तकालयों को देखें, उनमें से प्रत्येक एक बढ़िया विकल्प है। हालाँकि, पिनो हमारी पसंद की निजी लॉगिंग लाइब्रेरी है, जो 😉 लायक है परीक्षण/विकास वातावरण और उत्पादन दोनों में Node.js अनुप्रयोगों को डीबग करते समय ये लॉगिंग लाइब्रेरी महत्वपूर्ण साबित हुई हैं। साथ ही, उन्हें PlayerZero जैसे निगरानी समाधान के साथ एकीकृत करके, आप अपने Node.js अनुप्रयोगों के प्रदर्शन में और भी अधिक अंतर्दृष्टि प्राप्त कर सकते हैं। इस बारे में अधिक जानने के लिए एक डेमो बुक करें कि कैसे आज प्लेयरजीरो आपके बैकएंड एप्लिकेशन के प्रदर्शन को अनुकूलित करने में आपकी मदद कर सकता है! भी प्रकाशित हुआ। यहाँ