Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

Node.js . में लॉग इन करना

<घंटा/>

लॉगिंग किसी भी एप्लिकेशन में एक बहुत ही आवश्यक हिस्सा है चाहे वह Node.js या किसी अन्य प्रोग्रामिंग भाषा में बनाया गया हो। लॉगिंग हमें वास्तविक समय की त्रुटियों और अपवादों के साथ-साथ किसी एप्लिकेशन के अजीब व्यवहार का पता लगाने में मदद करती है। किसी को भी अपने आवेदन में तार्किक लॉग अवश्य डालने चाहिए। ये लॉग उपयोगकर्ता को किसी भी गलती की पहचान करने और तत्काल आधार पर इसे हल करने में मदद करते हैं।

5 अलग-अलग लॉग स्तर हैं जो इस समय उपयोगकर्ता के पास मौजूद हैं। इन लॉग स्तरों का उपयोग विभिन्न प्रकार के लॉग को परिभाषित करने के लिए किया जाता है और उपयोगकर्ता को विभिन्न परिदृश्यों की पहचान करने में मदद करता है। इन लॉग्स से सर्वोत्तम डील प्राप्त करने के लिए लॉग स्तरों को सावधानीपूर्वक कॉन्फ़िगर किया जाना चाहिए -

  • त्रुटि

  • चेतावनी

  • जानकारी

  • वर्बोज़

  • डिबग

मिडलवेयर

आप इस मिडलवेयर को अनुरोध पाइपलाइन में डाल सकते हैं ताकि आप लॉग प्रिंट करने के लिए सीधे डीबग मॉड्यूल की शक्ति का उपयोग कर सकें। डिबग मॉड्यूल का सबसे अच्छा लाभ यह है कि लगभग सभी मॉड्यूल मुद्रण लॉग के लिए डिबग का उपयोग करते हैं। आप लॉग और त्रुटियों को प्रिंट करने के लिए डीबग मॉड्यूल का उपयोग कर सकते हैं।

यह मिडलवेयर मुख्य रूप से मध्य पाइपलाइन के रूप में कार्य करने के लिए उपयोग किया जाता है - आप इस पाइपलाइन में लॉग पास कर सकते हैं जो लॉग फ़ाइल में मुद्रित होगा। लॉगिंग उद्देश्यों के लिए इस मिडलवेयर के माध्यम से अनुरोध और प्रतिक्रियाएं भी पारित की जाती हैं। एक्सप्रेस ऐप में यह बहुत फायदेमंद है। मिडलवेयर सेट करना आसान है और इसे किसी भी फ्रेमवर्क में इस्तेमाल किया जा सकता है।

मिडलवेयर के लिए फ़ाइलें कॉन्फ़िगर करना

आवेदन

const app = express()
const logMiddleware = require('my-logging-middleware')
app.use(logMiddleware)

राउटर

const router = express.Router()
const routeLoggingMiddleware = require('my-route-logging-middleware')
router.use(routeLoggingMiddleware)

त्रुटियां

const app = express();
const errorLoggingMiddleware = require('my-error-logging-middleware')
app.use(errorLoggingMiddleware)

विंस्टन पैकेज

आप लॉगिंग उद्देश्यों के लिए विंस्टन पैकेज का भी उपयोग कर सकते हैं। यह विभिन्न लॉग स्तरों, प्रश्नों के साथ-साथ एक प्रोफाइलर भी प्रदान करता है।

आवेदन

const app = express()
const winstonPackage = require('winston')
const consoleTransport = new winstonPackage.transports.Console()
const myWinstonOptions = {
   transports: [consoleTransport]
}
const logger = new winstonPackage.createLogger(myWinstonOptions)

function logRequest(req, res, next) {
   logger.info(req.url)
   next()
}
app.use(logRequest)

function logError(err, req, res, next) {
   logger.error(err)
   next()
}
app.use(logError)

  1. जावास्क्रिप्ट कॉन्स्ट

    जावास्क्रिप्ट कॉन्स्ट घोषणाएं वेरिएबल बनाती हैं जिन्हें किसी अन्य मान पर पुन:असाइन नहीं किया जा सकता है या बाद में पुन:घोषित नहीं किया जा सकता है। इसे ES2015 में पेश किया गया था। जावास्क्रिप्ट कॉन्स्टेबल डिक्लेरेशन के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html> <head> &l

  1. जावास्क्रिप्ट में कॉन्स्ट बनाम लेट।

    Const and let को ES2015 में ब्लॉक स्कोप्ड वेरिएबल घोषित करने के लिए पेश किया गया था। जबकि लेट का उपयोग करके घोषित चर को पुन:असाइन किया जा सकता है, यदि उन्हें कॉन्स का उपयोग करके घोषित किया गया है तो उन्हें पुन:असाइन नहीं किया जा सकता है। जावास्क्रिप्ट में लेट और कॉन्स्ट दिखाने वाला कोड निम्नलिखित ह

  1. Node.js . में एक्सप्रेस-दर-सीमा को एकीकृत करना

    वेबसाइटों को डॉस और डीडीओएस हमलों से बचाने के लिए दर-सीमित करना दिन-प्रतिदिन महत्वपूर्ण होता जा रहा है। दर-सीमित प्रणाली को किसी भी प्रकार के नकली अनुरोधों या अन्य क्रूर बल के हमलों से रोकता है। दर सीमित करने से आईपी द्वारा अनुरोध किए जाने की संख्या सीमित हो जाती है। एक्सप्रेसरेट-सीमा एक उपयोगकर्ता