
محرك تنبيه مفتوح المصدر لبيانات المراقبة الزمنية. يتصل بـ Prometheus وVictoriaMetrics وElasticSearch ومصادر بيانات أخرى. يدعم أكثر من 20 قناة إشعار، تقليل ضوضاء التنبيهات، التصعيد، وأتمتة الإصلاح الذاتي.
خبير التنبيه مفتوح المصدر
Nightingale هو مشروع مراقبة مفتوح المصدر يركز على التنبيه. وكما هو الحال مع Grafana، يتصل Nightingale أيضًا بمصادر بيانات متنوعة موجودة مسبقًا. لكن بينما تركّز Grafana على التصوير المرئي، يركّز Nightingale بدرجة أكبر على محرك التنبيه، وكذلك على معالجة الإنذارات وتوزيعها.
💡 يدعم Nightingale الآن MCP بشكل جاهز: يعرّض الخادم نفسه نقطة نهاية MCP مدمجة في
/mcp، بحيث يمكن للمساعدين الذكيين إدارة التنبيه واستكشاف بيانات قابلية المراقبة بلغة طبيعية دون نشر أي عملية إضافية. انظر خادم MCP أدناه.طُوّر مشروع Nightingale في البداية وأُطلق كمصدر مفتوح بواسطة DiDi.inc. وفي 11 مايو 2022، تم التبرع به إلى لجنة تطوير المصادر المفتوحة التابعة لجمعية الحاسوب الصينية (CCF ODTC).

لقد جمع العديد من المستخدمين بالفعل بيانات القياسات والسجلات. في هذه الحالة، يمكنك ربط مستودعات التخزين لديك (مثل VictoriaMetrics وElasticSearch وغيرها) كمصادر بيانات في Nightingale. يتيح لك ذلك تكوين قواعد التنبيه وقواعد الإشعار داخل Nightingale، مما يتيح توليد الإنذارات وتوزيعها.

لا يوفر Nightingale نفسه إمكانات جمع بيانات المراقبة. نوصي باستخدام Categraf كأداة الجمع، فهو يتكامل بسلاسة مع Nightingale.
يمكن لـ Categraf جمع بيانات المراقبة من أنظمة التشغيل وأجهزة الشبكة والبرمجيات الوسيطة المتنوعة وقواعد البيانات. يدفع هذه البيانات إلى Nightingale عبر بروتوكول Prometheus Remote Write. ثم يخزّن Nightingale بيانات المراقبة في قاعدة بيانات للسلاسل الزمنية (مثل Prometheus وVictoriaMetrics وغيرها) ويوفّر إمكانات التنبيه والتصوير المرئي.
بالنسبة لبعض مراكز البيانات الطرفية (edge) ذات الاتصال الشبكي الضعيف بخادم Nightingale المركزي، نقدّم وضع نشر موزّع لمحرك التنبيه. في هذا الوضع، حتى إذا انقطع الاتصال بالشبكة، تظل وظيفة التنبيه غير متأثرة.

في الرسم أعلاه، يتمتع مركز البيانات A باتصال شبكي جيد مع مركز البيانات المركزي، لذلك يستخدم عملية Nightingale في مركز البيانات المركزي كمحرك تنبيه. أما مركز البيانات B فاتصاله الشبكي مع المركز المركزي ضعيف، لذلك ينشر
n9e-edgeكمحرك تنبيه للتعامل مع التنبيه عن مصادر البيانات الخاصة به.
يضم Nightingale خادم MCP مدمجًا: عملية n9e نفسها توفّر بروتوكول سياق النموذج (Model Context Protocol) عند /mcp عبر ناقل Streamable HTTP. يمكن لأي عميل MCP — سواء Claude Code / Claude Desktop أو Cursor أو موصلات ChatGPT أو وكيلك الخاص — الاستعلام عن Nightingale وإدارته بلغة طبيعية، دون الحاجة إلى نشر أي عملية إضافية.
نقطة النهاية هي http(s)://<nightingale>:17000/mcp — مسار جذر، وليس تحت /api/n9e. قم بالمصادقة باستخدام رمز وصول شخصي (أنشئ واحدًا من واجهة الويب ضمن الملف الشخصي → إدارة الرموز) يُرسَل في ترويسة X-User-Token:
{
"mcpServers": {
"nightingale": {
"type": "http",
"url": "http://127.0.0.1:17000/mcp",
"headers": { "X-User-Token": "<your-token>" }
}
}
}
يُوجَّه كل استدعاء أداة إلى واجهة HTTP API الخاصة بـ Nightingale داخل العملية، حاملًا رمزك، بحيث تُطبَّق صلاحيات RBAC ومجموعات الأعمال تمامًا كما تُطبَّق لذلك المستخدم في الواجهة — لا يمكن لأي عميل الوصول إلى أي شيء لا يمكن لمالك الرمز الوصول إليه.
74 أداة دقيقة (42 للقراءة و32 للكتابة) موزعة على 13 مجموعة أدوات: alerts, targets, datasource, mutes, busi_groups, notify_rules, alert_subscribes, event_pipelines, users, metrics, logs, dashboards, roles.
نقطة النهاية للقراءة فقط افتراضيًا — أدوات الكتابة (إنشاء / تحديث / حذف) تتطلب تفعيلًا صريحًا عبر الإعدادات.
كل ما يلي اختياري؛ /mcp مفعّل افتراضيًا مباشرةً (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 أيضًا رموز وصول OAuth عبر Authorization: Bearer، بنوعين:
إلى جانب MCP، تعرّض العملية نفسها نقطة نهاية A2A عند /a2a تغلّف المساعد الذكي المدمج في Nightingale للتكامل بين الوكلاء (agent-to-agent) (doc/api/a2a.md). وإذا كنت تفضّل تشغيل MCP كعملية منفصلة تتصل بـ Nightingale عن بُعد، فإن n9e-mcp-server المستقل يوفّر الأدوات نفسها.
يركّز Nightingale على كونه محرك تنبيه، مسؤولًا عن توليد الإنذارات وتوزيعها بمرونة وفق القواعد. وهو يدعم 20 وسيلة إشعار مدمجة (مثل المكالمات الهاتفية والرسائل النصية القصيرة والبريد الإلكتروني وDingTalk وSlack وغيرها).
إذا كانت لديك متطلبات أكثر تقدمًا، مثل:
فإن Nightingale ليس مناسبًا. يُنصح باختيار منتجات المناوبة مثل PagerDuty وFlashDuty. هذه المنتجات بسيطة وسهلة الاستخدام.




