
समय-श्रृंखला निगरानी डेटा के लिए ओपन-सोर्स अलर्टिंग इंजन। Prometheus, VictoriaMetrics, ElasticSearch और अन्य डेटा स्रोतों से जुड़ता है। 20+ सूचना चैनल, अलर्ट शोर कमी, एस्केलेशन और स्व-उपचार स्वचालन का समर्थन करता है।
ओपन-सोर्स अलर्टिंग विशेषज्ञ
Nightingale एक ओपन-सोर्स मॉनिटरिंग प्रोजेक्ट है जो अलर्टिंग पर केंद्रित है। Grafana की तरह, Nightingale भी विभिन्न मौजूदा डेटा स्रोतों से जुड़ता है। हालाँकि, जहाँ Grafana विज़ुअलाइज़ेशन पर ज़ोर देता है, वहीं Nightingale अलर्टिंग इंजन के साथ-साथ अलार्म के प्रोसेसिंग और वितरण पर अधिक ज़ोर देता है।
💡 Nightingale अब बॉक्स से बाहर (out of the box) ही MCP बोलता है: सर्वर स्वयं
/mcpपर एक अंतर्निहित MCP एंडपॉइंट उजागर करता है, जिससे AI सहायक बिना किसी अतिरिक्त प्रक्रिया को डिप्लॉय किए प्राकृतिक भाषा में अलर्टिंग प्रबंधित कर सकते हैं और ऑब्ज़र्वेबिलिटी डेटा का अन्वेषण कर सकते हैं। नीचे MCP सर्वर देखें।Nightingale प्रोजेक्ट को प्रारंभ में DiDi.inc द्वारा विकसित और ओपन-सोर्स किया गया था। 11 मई, 2022 को इसे चाइना कंप्यूटर फेडरेशन की ओपन सोर्स डेवलपमेंट कमेटी (CCF ODTC) को दान कर दिया गया।

कई उपयोगकर्ता पहले से ही मेट्रिक्स और लॉग डेटा एकत्र कर चुके हैं। ऐसे में, आप अपने स्टोरेज रिपॉजिटरी (जैसे VictoriaMetrics, ElasticSearch, आदि) को Nightingale में डेटा स्रोतों के रूप में जोड़ सकते हैं। इससे आप Nightingale के भीतर अलर्टिंग नियम और नोटिफिकेशन नियम कॉन्फ़िगर कर सकते हैं, जिससे अलार्म का निर्माण और वितरण संभव होता है।

Nightingale स्वयं मॉनिटरिंग डेटा संग्रहण क्षमताएं प्रदान नहीं करता है। हम Categraf को कलेक्टर के रूप में उपयोग करने की अनुशंसा करते हैं, जो Nightingale के साथ सहज रूप से एकीकृत होता है।
Categraf ऑपरेटिंग सिस्टम, नेटवर्क डिवाइस, विभिन्न मिडलवेयर और डेटाबेस से मॉनिटरिंग डेटा एकत्र कर सकता है। यह इस डेटा को Prometheus Remote Write प्रोटोकॉल के माध्यम से Nightingale में भेजता है। फिर Nightingale मॉनिटरिंग डेटा को टाइम-सीरीज़ डेटाबेस (जैसे Prometheus, VictoriaMetrics, आदि) में संग्रहीत करता है और अलर्टिंग तथा विज़ुअलाइज़ेशन क्षमताएं प्रदान करता है।
केंद्रीय Nightingale सर्वर से खराब नेटवर्क कनेक्टिविटी वाले कुछ एज डेटा सेंटरों के लिए, हम अलर्टिंग इंजन के लिए एक वितरित डिप्लॉयमेंट मोड प्रदान करते हैं। इस मोड में, नेटवर्क डिस्कनेक्ट होने पर भी अलर्टिंग कार्यक्षमता प्रभावित नहीं होती।

उपरोक्त चित्र में, Data Center A का केंद्रीय डेटा सेंटर के साथ अच्छा नेटवर्क है, इसलिए यह केंद्रीय डेटा सेंटर में Nightingale प्रक्रिया को अलर्टिंग इंजन के रूप में उपयोग करता है। Data Center B का केंद्रीय डेटा सेंटर के साथ खराब नेटवर्क है, इसलिए यह अपने स्वयं के डेटा स्रोतों के लिए अलर्टिंग संभालने हेतु
n9e-edgeको अलर्टिंग इंजन के रूप में डिप्लॉय करता है।
Nightingale में अंतर्निहित MCP सर्वर है: n9e प्रक्रिया स्वयं Streamable HTTP ट्रांसपोर्ट पर /mcp पर Model Context Protocol प्रदान करती है। कोई भी MCP क्लाइंट — Claude Code / Claude Desktop, Cursor, ChatGPT कनेक्टर, या आपका अपना एजेंट — बिना किसी अतिरिक्त प्रक्रिया को डिप्लॉय किए, प्राकृतिक भाषा में Nightingale को क्वेरी और प्रबंधित कर सकता है।
एंडपॉइंट http(s)://<nightingale>:17000/mcp है — एक रूट पाथ, न कि /api/n9e के अंतर्गत। X-User-Token हेडर में भेजे गए पर्सनल एक्सेस टोकन से प्रमाणित करें (वेब UI में प्रोफ़ाइल → टोकन प्रबंधन के अंतर्गत एक बनाएं):
{
"mcpServers": {
"nightingale": {
"type": "http",
"url": "http://127.0.0.1:17000/mcp",
"headers": { "X-User-Token": "<your-token>" }
}
}
}
प्रत्येक टूल कॉल आपके टोकन को लेकर प्रक्रिया के भीतर Nightingale के स्वयं के HTTP API पर भेजी जाती है, इसलिए RBAC और व्यवसाय-समूह अनुमतियाँ ठीक वैसे ही लागू होती हैं जैसे वे UI में उस उपयोगकर्ता के लिए होती हैं — एक क्लाइंट कभी भी उस चीज़ तक नहीं पहुँच सकता जिस तक उसके टोकन का स्वामी नहीं पहुँच सकता।
13 टूलसेट्स में 74 बारीक-विभाजित टूल (42 रीड, 32 राइट): alerts, targets, datasource, mutes, busi_groups, notify_rules, alert_subscribes, event_pipelines, users, metrics, logs, dashboards, roles।
एंडपॉइंट डिफ़ॉल्ट रूप से रीड-ओनली है — राइट टूल (क्रिएट / अपडेट / डिलीट) एक स्पष्ट कॉन्फ़िग ऑप्ट-इन हैं।
नीचे दी गई सभी चीज़ें वैकल्पिक हैं; /mcp बॉक्स से बाहर (out of the box) सक्षम है (etc/config.toml):
[HTTP.A2A]
# DisableMCP = true # turn off /mcp (Disable = true turns off /a2a as well)
# MCPToolsets = ["alerts", "dashboards"] # restrict the exposed toolsets; empty = all of them
# MCPEnableWriteTools = true # also register the write tools; read-only by default
/mcp प्रमाणीकरण के लिए [HTTP.TokenAuth] का पुन: उपयोग करता है, इसलिए इसे सक्षम रखें।
/mcp Authorization: Bearer के माध्यम से OAuth एक्सेस टोकन भी स्वीकार करता है, दो रूपों में:
MCP के साथ-साथ, यही प्रक्रिया /a2a पर एक A2A एंडपॉइंट भी उजागर करती है जो एजेंट-से-एजेंट एकीकरण के लिए Nightingale के अंतर्निहित AI असिस्टेंट को रैप करती है (doc/api/a2a.md)। यदि आप MCP को किसी दूरस्थ Nightingale के विरुद्ध एक अलग प्रक्रिया के रूप में चलाना चाहते हैं, तो स्टैंडअलोन n9e-mcp-server समान टूल प्रदान करता है।
Nightingale एक अलर्टिंग इंजन होने पर केंद्रित है, जो अलार्म उत्पन्न करने और नियमों के आधार पर उन्हें लचीले ढंग से वितरित करने के लिए ज़िम्मेदार है। यह 20 अंतर्निहित नोटिफिकेशन मीडिया (जैसे फोन कॉल, SMS, ईमेल, DingTalk, Slack, आदि) का समर्थन करता है।
यदि आपके पास अधिक उन्नत आवश्यकताएं हैं, जैसे:
तो Nightingale उपयुक्त नहीं है। यह अनुशंसा की जाती है कि आप PagerDuty और FlashDuty जैसे ऑन-कॉल उत्पाद चुनें। ये उत्पाद सरल और उपयोग में आसान हैं।




