मॉनिटरिंग टूल्स: ग्राफाना, प्रोमिथियस, और लौकी

Jun 28, 2024

मॉनिटरिंग टूल्स: ग्राफाना, प्रोमिथियस, और लौकी

परिचय

  • मॉनिटरिंग टूल्स बैकएंड इंजीनियर के लिए महत्वपूर्ण
  • प्रमुख टूल्स: ग्राफाना, प्रोमिथियस और लौकी

ग्राफाना

  • ग्राफ्स और चार्ट्स सेटअप करने का टूल
  • विज़ुअलाइज़ेशन और मॉनिटरिंग के लिए उपयोगी
  • डैशबोर्ड ग्राफाना में सेटअप होता है
  • डेटा सोर्स जोड़ने की सुविधा, उदाहरण: प्रोमिथियस, लाउकी
  • इंस्टॉलेशन: डॉकर कंटेनर में रन ( dर: docker run -d --name=grafana -p 3000:3000 grafana/grafana )
  • डैशबोर्ड इम्पोर्ट करने की सुविधा (e.g., चुनें “Import” फीचर से)

प्रोमिथियस

  • डेटा कलेक्शन और मैट्रिक्स के लिए उपयोगी टूल
  • मैट्रिक्स: CPU उपयोग, मेमोरी, रिस्पांस टाइम इत्यादि
  • सेटअप :
    1. प्रॉमिस क्लाइंट इंस्टॉल (npm install prom-client)
    2. मैट्रिक्स एक्सपोज
    const promClient = require('prom-client');
    const collectDefaultMetrics = promClient.collectDefaultMetrics;
    collectDefaultMetrics({ register: promClient.register });
    app.get('/metrics', (req, res) => {
      res.set('Content-Type', promClient.register.contentType);
      res.end(promClient.register.metrics());
    });
    

लौकी

  • लॉग कलेक्शन के लिए उपयोगी टूल
  • डॉकर कंटेनर इंस्टॉलेशन
    • विन्सटन लौकी के साथ:
    npm install winston winston-loki
    
    • लोगर सेटअप:
    const winston = require('winston');
    const LokiTransport = require('winston-loki');
    const logger = winston.createLogger({
      transports: [
        new LokiTransport({
          host: 'http://localhost:3100',
          json: true,
        }),
      ],
    });
    

उपयोग के मामले

  • प्रॉब्लम सॉल्विंग का एक्जांपल:
    • सर्वर सेटअप, ऑटो-स्केलिंग और डॉकर कंटेनर्स
    • मॉनिटरिंग सिस्टम न होने पर समस्या: एप्लीकेशन स्लो, एर्रर्स आदि
    • मॉनिटरिंग सिस्टम से ट्रैक करें महत्वपूर्ण मेट्रिक्स और लॉग्स

कस्टम मैट्रिक्स और लॉग्स

  • कस्टम मैट्रिक्स: परफॉर्मेंस मेट्रिक्स, जैसे HTTP रेस्पोंस टाइम
  • कस्टम लॉग्स: विशेष फील्ड्स जैसे मेथड, रूट, और स्टेटस

निष्कर्ष

  • ग्राफाना, प्रोमिथियस, और लौकी का सेटअप और उपयोग एक मॉनिटरिंग सिस्टम बनाने के लिए
  • बैकएंड इंजीनियर्स के लिए अनिवार्य टूल्स
  • ग्राफाना: उज्वलीज़ेशन,
  • प्रॉमिसीस: डेटा कलेक्शन,
  • लौकी: लॉग कलेक्शन