हमारी Performance & Scalability श्रृंखला का हिस्सा
पूरी गाइड पढ़ेंउत्पादन निगरानी और चेतावनी: संपूर्ण सेटअप गाइड
औसत उत्पादन घटना की लागत प्रति मिनट $5,600 है। परिपक्व निगरानी वाली कंपनियां 5 मिनट से कम समय में समस्याओं का पता लगा लेती हैं, जबकि बिना निगरानी वाली कंपनियों को पता लगाने में औसतन 197 मिनट लगते हैं --- एक मामूली चूक और ग्राहक खोने वाली आपदा के बीच का अंतर।
यह मार्गदर्शिका शुरू से अंत तक उत्पादन निगरानी सेटअप को कवर करती है: क्या मापना है, इसे कैसे एकत्र करना है, इसे कहां देखना है और कब सचेत करना है।
मुख्य बातें
- अवलोकन के तीन स्तंभ (मेट्रिक्स, लॉग, ट्रेस) अलग-अलग उद्देश्यों की पूर्ति करते हैं और तीनों आवश्यक हैं
- लक्षणों पर अलर्ट (त्रुटि दर, विलंबता) शोर को 80% तक कम करने का कारण नहीं बनता (सीपीयू उपयोग)
- प्रत्येक अलर्ट से जुड़ी रनबुक, कॉल पर चाहे कोई भी हो, लगातार घटना प्रतिक्रिया सुनिश्चित करती है
- 5 आवश्यक अलर्ट से शुरुआत करें और आधार रेखा समझने पर ही विस्तार करें
अवलोकनशीलता के तीन स्तंभ
मेट्रिक्स
समय के साथ संख्यात्मक माप का नमूना लिया गया। मेट्रिक्स उत्तर "अभी क्या हो रहा है?"
एप्लिकेशन मेट्रिक्स:
- अनुरोध दर (प्रति सेकंड अनुरोध)
- त्रुटि दर (प्रति सेकंड 5xx प्रतिक्रियाएँ)
- विलंबता वितरण (P50, P95, P99)
- सक्रिय सत्र/समवर्ती उपयोगकर्ता
इंफ्रास्ट्रक्चर मेट्रिक्स:
- प्रति सेवा सीपीयू उपयोग
- मेमोरी उपयोग और कचरा संग्रहण
- डिस्क I/O और उपलब्ध स्थान
- नेटवर्क थ्रूपुट
बिजनेस मेट्रिक्स:
- प्रति मिनट ऑर्डर
- कार्ट परित्याग दर
- प्रति घंटा राजस्व
- एपीआई एंडपॉइंट द्वारा कॉल करता है
लॉग
अलग-अलग घटनाओं के टाइमस्टैम्प्ड, संरचित रिकॉर्ड। लॉग उत्तर देते हैं "ऐसा क्यों हुआ?"
{
"timestamp": "2026-03-16T14:32:01.234Z",
"level": "error",
"service": "api",
"requestId": "req_abc123",
"userId": "usr_456",
"message": "Payment processing failed",
"error": "Stripe API timeout after 30000ms",
"endpoint": "POST /billing/checkout",
"duration": 30142
}
सर्वोत्तम अभ्यास लॉग करें:
- संरचित JSON लॉगिंग का उपयोग करें, सादा पाठ का नहीं
- सभी सेवाओं में सहसंबंध आईडी (
requestId) शामिल करें - उचित स्तर पर लॉग इन करें (विफलताओं के लिए त्रुटि, गिरावट के लिए चेतावनी, प्रमुख घटनाओं के लिए जानकारी)
- संवेदनशील डेटा (पासवर्ड, टोकन, पूर्ण क्रेडिट कार्ड नंबर) कभी लॉग न करें
निशान
वितरित सिस्टम के माध्यम से एंड-टू-एंड अनुरोध पथ। ट्रेसेस उत्तर देते हैं "अड़चन कहाँ है?"
ईकॉमर्स चेकआउट के लिए एकल उपयोगकर्ता का अनुरोध निम्न को छू सकता है:
- Nginx (2ms) से Next.js फ्रंटएंड (50ms) से NestJS API (120ms) से PostgreSQL (45ms) से स्ट्राइप API (800ms) से ईमेल सेवा (200ms)
ट्रेस किए बिना, आप देखते हैं "चेकआउट में 1.2 सेकंड लगते हैं।" ट्रेसिंग के साथ, आप देखते हैं "स्ट्राइप एपीआई चेकआउट विलंबता का 67% हिस्सा है।"
मॉनिटरिंग स्टैक सेटअप
प्रोमेथियस + ग्राफाना (स्वयं-होस्टेड)
# docker-compose.monitoring.yml
services:
prometheus:
image: prom/prometheus:v2.50.0
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus-data:/prometheus
ports:
- "9090:9090"
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.retention.time=30d'
- '--web.enable-lifecycle'
grafana:
image: grafana/grafana:10.3.0
volumes:
- grafana-data:/var/lib/grafana
ports:
- "3030:3000"
environment:
- GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_PASSWORD}
- GF_USERS_ALLOW_SIGN_UP=false
loki:
image: grafana/loki:2.9.0
volumes:
- loki-data:/loki
ports:
- "3100:3100"
alertmanager:
image: prom/alertmanager:v0.27.0
volumes:
- ./alertmanager.yml:/etc/alertmanager/alertmanager.yml
ports:
- "9093:9093"
volumes:
prometheus-data:
grafana-data:
loki-data:
प्रोमेथियस कॉन्फ़िगरेशन
# prometheus.yml
global:
scrape_interval: 15s
evaluation_interval: 15s
rule_files:
- "alerts/*.yml"
alerting:
alertmanagers:
- static_configs:
- targets: ["alertmanager:9093"]
scrape_configs:
- job_name: "api"
metrics_path: /metrics
static_configs:
- targets: ["api:3001"]
- job_name: "node-exporter"
static_configs:
- targets: ["node-exporter:9100"]
- job_name: "postgres"
static_configs:
- targets: ["postgres-exporter:9187"]
- job_name: "redis"
static_configs:
- targets: ["redis-exporter:9121"]
NestJS एप्लिकेशन मेट्रिक्स
प्रोमेथियस मेट्रिक्स को उजागर करना
// metrics.module.ts
import { Module } from '@nestjs/common';
import { PrometheusModule } from '@willsoto/nestjs-prometheus';
import {
makeCounterProvider,
makeHistogramProvider,
makeGaugeProvider,
} from '@willsoto/nestjs-prometheus';
@Module({
imports: [
PrometheusModule.register({
path: '/metrics',
defaultMetrics: { enabled: true },
}),
],
providers: [
makeCounterProvider({
name: 'http_requests_total',
help: 'Total HTTP requests',
labelNames: ['method', 'path', 'status'],
}),
makeHistogramProvider({
name: 'http_request_duration_seconds',
help: 'HTTP request duration in seconds',
labelNames: ['method', 'path'],
buckets: [0.01, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10],
}),
makeGaugeProvider({
name: 'active_connections',
help: 'Number of active connections',
}),
],
exports: [PrometheusModule],
})
export class MetricsModule {}
अलर्ट कॉन्फ़िगरेशन
पाँच आवश्यक चेतावनियाँ
प्रत्येक उत्पादन प्रणाली को पहले दिन से ही इन अलर्ट की आवश्यकता होती है:
# alerts/essential.yml
groups:
- name: essential
rules:
- alert: ServiceDown
expr: up == 0
for: 1m
labels:
severity: critical
annotations:
summary: "Service {{ $labels.job }} is down"
runbook: "https://wiki.example.com/runbooks/service-down"
- alert: HighErrorRate
expr: |
rate(http_requests_total{status=~"5.."}[5m])
/ rate(http_requests_total[5m]) > 0.01
for: 5m
labels:
severity: critical
annotations:
summary: "Error rate above 1% for 5 minutes"
runbook: "https://wiki.example.com/runbooks/high-error-rate"
- alert: HighLatency
expr: |
histogram_quantile(0.95,
rate(http_request_duration_seconds_bucket[5m])
) > 2
for: 5m
labels:
severity: warning
annotations:
summary: "P95 latency above 2 seconds"
- alert: DiskSpaceLow
expr: |
node_filesystem_avail_bytes{mountpoint="/"}
/ node_filesystem_size_bytes{mountpoint="/"} < 0.2
for: 10m
labels:
severity: warning
annotations:
summary: "Disk space below 20% on {{ $labels.instance }}"
- alert: SSLCertExpiringSoon
expr: |
probe_ssl_earliest_cert_expiry - time() < 14 * 24 * 3600
labels:
severity: warning
annotations:
summary: "SSL certificate expires within 14 days"
अलर्ट रूटिंग
# alertmanager.yml
global:
slack_api_url: "${SLACK_WEBHOOK_URL}"
route:
group_by: ['alertname', 'severity']
group_wait: 30s
group_interval: 5m
repeat_interval: 4h
receiver: 'default'
routes:
- match:
severity: critical
receiver: 'pagerduty'
repeat_interval: 15m
- match:
severity: warning
receiver: 'slack'
receivers:
- name: 'default'
slack_configs:
- channel: '#alerts'
title: '{{ .GroupLabels.alertname }}'
text: '{{ .CommonAnnotations.summary }}'
- name: 'pagerduty'
pagerduty_configs:
- routing_key: "${PAGERDUTY_KEY}"
severity: '{{ .GroupLabels.severity }}'
- name: 'slack'
slack_configs:
- channel: '#alerts-warnings'
title: '{{ .GroupLabels.alertname }}'
चेतावनी गुणवत्ता नियम
| अभ्यास करें | क्यों |
|---|---|
| लक्षणों पर सचेत करें, कारणों पर नहीं | "त्रुटि दर उच्च" कार्रवाई योग्य है; "सीपीयू 80% पर" नहीं हो सकता |
| प्रत्येक अलर्ट में एक रनबुक होती है | ऑन-कॉल इंजीनियरों को सुबह 3 बजे सोचने की ज़रूरत नहीं होनी चाहिए |
| अलर्ट कार्रवाई योग्य होना चाहिए | यदि कोई इस पर कार्यवाही नहीं कर सकता तो यह शोर है, चेतावनी नहीं |
| 2 सप्ताह के बाद थ्रेशोल्ड ट्यून करें | प्रारंभिक सीमाएँ अनुमान हैं; आधारभूत आधार पर समायोजित करें |
| चेतावनी थकान की मासिक समीक्षा करें | यदि अलर्ट बिना किसी कार्रवाई के प्रतिदिन सक्रिय होते हैं, तो सीमाएँ बढ़ाएँ या उन्हें हटा दें |
ग्राफाना डैशबोर्ड
डैशबोर्ड पदानुक्रम
- अवलोकन डैशबोर्ड: सभी सेवाओं में उच्च-स्तरीय स्वास्थ्य। यह पहली स्क्रीन है जिसे कोई भी किसी घटना के दौरान देखता है।
- सेवा डैशबोर्ड: प्रत्येक सेवा (एपीआई, वेब, कर्मचारी) के लिए विस्तृत मेट्रिक्स।
- इंफ्रास्ट्रक्चर डैशबोर्ड: नोड-स्तरीय मेट्रिक्स (सीपीयू, मेमोरी, डिस्क, नेटवर्क)।
- व्यावसायिक डैशबोर्ड: राजस्व, ऑर्डर, उपयोगकर्ता गतिविधि।
सेवा डैशबोर्ड के लिए लाल विधि
प्रत्येक सेवा के लिए, प्रदर्शित करें:
- आरएट: अनुरोध प्रति सेकंड
- ईत्रुटि: प्रतिशत के रूप में त्रुटि दर
- डीउरेशन: विलंबता वितरण (पी50, पी95, पी99)
यह संज्ञानात्मक अधिभार के बिना सेवा स्वास्थ्य में तत्काल दृश्यता प्रदान करता है।
संतरी के साथ ट्रैकिंग में त्रुटि
// sentry.config.ts
import * as Sentry from '@sentry/nestjs';
Sentry.init({
dsn: process.env.SENTRY_DSN,
environment: process.env.NODE_ENV,
tracesSampleRate: 0.1,
profilesSampleRate: 0.1,
integrations: [
Sentry.postgresIntegration(),
],
beforeSend(event) {
// Strip sensitive data
if (event.request?.headers) {
delete event.request.headers['authorization'];
delete event.request.headers['cookie'];
}
return event;
},
});
संतरी प्रदान करता है:
- स्वचालित त्रुटि समूहन और डिडुप्लीकेशन
- स्रोत मानचित्रों के साथ ढेर के निशान
- रिलीज़ ट्रैकिंग (जिस परिनियोजन से त्रुटि उत्पन्न हुई)
- प्रदर्शन की निगरानी (लेन-देन के निशान)
अक्सर पूछे जाने वाले प्रश्न
एक निगरानी स्टैक की लागत कितनी है?
स्व-होस्टेड (प्रोमेथियस + ग्राफाना + लोकी): होस्टिंग संसाधनों के लिए लगभग $50-100/माह। प्रबंधित विकल्प: डेटाडॉग बुनियादी ढांचे के लिए $15/होस्ट/माह से शुरू होता है, साथ ही लॉग के लिए $0.10/जीबी से शुरू होता है। टीम योजना के लिए सेंट्री क्लाउड $26/माह है। एक छोटे व्यवसाय के लिए एक उचित प्रारंभिक बजट कुल $100-200/माह है।
निगरानी और अवलोकन के बीच क्या अंतर है?
मॉनिटरिंग आपको बताती है कि कब कुछ गलत है। अवलोकनशीलता आपको बताती है कि क्यों। मॉनिटरिंग ज्ञात विफलता मोड के लिए पूर्वनिर्धारित डैशबोर्ड और अलर्ट के बारे में है। अवलोकनशीलता मेट्रिक्स, लॉग और ट्रेस का उपयोग करके आपके सिस्टम के व्यवहार के बारे में मनमाने ढंग से प्रश्न पूछने की क्षमता के बारे में है। आपको दोनों की आवश्यकता है, लेकिन निगरानी इसका आधार है।
हम सतर्क थकान से कैसे बचें?
तीन नियम: (1) प्रत्येक अलर्ट के लिए मानवीय कार्रवाई की आवश्यकता होनी चाहिए, (2) सैद्धांतिक आदर्शों के बजाय वास्तविक आधार रेखाओं के आधार पर सीमाएँ निर्धारित करें, (3) अलर्ट की मासिक समीक्षा करें और ट्यून करें। यदि कोई अलर्ट बिना कार्रवाई की आवश्यकता के प्रति सप्ताह एक से अधिक बार सक्रिय होता है, तो या तो अंतर्निहित समस्या को ठीक करें या सीमा बढ़ाएँ। अलर्ट थकान से पीड़ित टीमें महत्वपूर्ण अलर्ट सहित सभी अलर्ट को नजरअंदाज कर देती हैं।
क्या हमें अपने ईआरपी सिस्टम की निगरानी अलग तरीके से करनी चाहिए?
ईआरपी सिस्टम की अद्वितीय निगरानी आवश्यकताएँ होती हैं। मानक वेब मेट्रिक्स से परे, मॉनिटर: डेटाबेस कनेक्शन पूल उपयोग, पृष्ठभूमि नौकरी कतार गहराई, एकीकरण सिंक स्थिति (शॉपिफाई, भुगतान गेटवे), निर्धारित रिपोर्ट निष्पादन समय, और मॉड्यूल द्वारा उपयोगकर्ता सत्र गणना। ECOSIRE हमारे समर्थन पैकेज के हिस्से के रूप में प्रबंधित ओडू मॉनिटरिंग प्रदान करता है।
आगे क्या आता है
निगरानी आपके उत्पादन बुनियादी ढांचे की आंखें और कान हैं। तैनाती के आत्मविश्वास के लिए इसे CI/CD स्वचालन और लचीलेपन के लिए आपदा पुनर्प्राप्ति योजना के साथ जोड़ें। व्यापक DevOps रोडमैप के लिए, हमारा छोटे व्यवसायों के लिए DevOps गाइड देखें।
सेटअप और प्रबंधित बुनियादी ढांचा सेवाओं की निगरानी के लिए ECOSIRE से संपर्क करें।
ECOSIRE द्वारा प्रकाशित - व्यवसायों को यह देखने में मदद करना कि उत्पादन में क्या मायने रखता है।
लेखक
ECOSIRE Research and Development Team
ECOSIRE में एंटरप्राइज़-ग्रेड डिजिटल उत्पाद बना रहे हैं। Odoo एकीकरण, ई-कॉमर्स ऑटोमेशन, और AI-संचालित व्यावसायिक समाधानों पर अंतर्दृष्टि साझा कर रहे हैं।
संबंधित लेख
Testing and Monitoring AI Agents: Reliability Engineering for Autonomous Systems
Complete guide to testing and monitoring AI agents covering unit testing, integration testing, behavioral testing, observability, and production monitoring strategies.
API Gateway Patterns and Best Practices for Modern Applications
Implement API gateway patterns including rate limiting, authentication, request routing, circuit breakers, and API versioning for scalable web architectures.
CDN Performance Optimization: The Complete Guide to Faster Global Delivery
Optimize CDN performance with caching strategies, edge computing, image optimization, and multi-CDN architectures for faster global content delivery.
Performance & Scalability से और अधिक
AI Agent Performance Optimization: Speed, Accuracy, and Cost Efficiency
Optimize AI agent performance across response time, accuracy, and cost with proven techniques for prompt engineering, caching, model selection, and monitoring.
Testing and Monitoring AI Agents: Reliability Engineering for Autonomous Systems
Complete guide to testing and monitoring AI agents covering unit testing, integration testing, behavioral testing, observability, and production monitoring strategies.
CDN Performance Optimization: The Complete Guide to Faster Global Delivery
Optimize CDN performance with caching strategies, edge computing, image optimization, and multi-CDN architectures for faster global content delivery.
Load Testing Strategies for Web Applications: Find Breaking Points Before Users Do
Load test web applications with k6, Artillery, and Locust. Covers test design, traffic modeling, performance baselines, and result interpretation strategies.
Mobile SEO for eCommerce: Complete Optimization Guide for 2026
Mobile SEO guide for eCommerce sites. Covers mobile-first indexing, Core Web Vitals, structured data, page speed optimization, and mobile search ranking factors.
API Performance: Rate Limiting, Pagination & Async Processing
Build high-performance APIs with rate limiting algorithms, cursor-based pagination, async job queues, and response compression best practices.