#pAlerts
لوحة التشغيل والتنبيهات والقياس عن بُعد المباشر
تعرض لوحة التشغيل (#pOps) مباشرةً وكسجل على مدى 24 ساعة: الرسائل في الدقيقة واردة وصادرة، والبريد المؤجل والمرتد، ونسبة البريد العشوائي، ومحاولات تسجيل الدخول الفاشلة، وحجم قائمة الانتظار وعمر أقدم رسالة، والاتصالات النشطة لكل بروتوكول، وCPU، والذاكرة، ومساحة القرص الحرة، وحجم قاعدة البيانات، وانتهاء صلاحية الشهادات، وعقد العنقود. وتُبلغ التنبيهات (#pAlerts) عن التجاوزات عبر البريد الإلكتروني أو webhook أو SMS أو Telegram أو Signal أو WhatsApp. وتقرأ الأدوات الخارجية البيانات نفسها عبر /metrics (Prometheus) أو OpenTelemetry أو تدفق الأحداث المباشر (Server-Sent Events).
عند التشغيل الأول ينشئ nextxch خمس قواعد دون أهداف (قائمة انتظار متوقفة، وقرص شبه ممتلئ، وشهادة توشك على الانتهاء، وكثرة محاولات تسجيل الدخول الفاشلة، وكثرة الارتدادات). وتظهر في السجل؛ ولتلقي الإشعارات، أضيفوا عنوان بريد إلكتروني أو webhook ضمن الأهداف وحدّدوه في القاعدة. ويبقى السجل محفوظًا بعد إعادة التشغيل (Ops:PersistHistory = false يعطّل ذلك).
بث مباشر للأحداث لأدوات المراقبة
المصادقة كما في واجهة API الإدارية (مفتاح API لمسؤول عبر X-Api-Key أو Bearer أو Basic). ولا يرى مسؤولو المستأجرين إلا مستأجرهم. عوامل التصفية: types وdirection وstatus وq؛ ويحدّ maxRate الأحداث في الثانية (الافتراضي 20، والحد الأقصى 200)؛ ويُبلَّغ عن الفائض في حدث dropped.
curl -N -H "X-Api-Key: $NEXTXCH_KEY" \
"https://mail.company.com/api/admin/telemetry/stream?types=delivery,rejection,auth-failure&maxRate=50"
event: delivery
data: {"at":"2026-11-02T08:15:01Z","direction":"Outbound","status":"Delivered","from":"billing@company.com","to":"customer@example.com","code":250,...}
event: auth-failure
data: {"account":"info@company.com","protocol":"IMAP","remoteIp":"203.0.113.7","reason":"invalid password"}
# Types: delivery, rejection, auth-failure, filter, alert, queue
الإعدادات والقيم الافتراضية وأفضل الممارسات
| الإعداد / الموقع | الوصف | القيمة الافتراضية | أفضل ممارسة للإنتاج |
|---|---|---|---|
Alarmregel |
المقياس والشرط (>، >=، <، <=) والعتبة والمدة بالدقائق. ولا يُطلق التنبيه إلا عندما يستمر الشرط طوال هذه المدة دون انقطاع. | 5 min |
تجاهلوا الارتفاعات القصيرة: 5 دقائق على الأقل للمعدلات (في الدقيقة)، و0 دقيقة لانتهاء صلاحية الشهادات. |
Abklingzeit, Wiederholung, Entwarnung |
فترة التهدئة هي الحد الأدنى للوقت بين رسالتين من القاعدة نفسها؛ ويُذكّر التكرار طالما ظل التنبيه نشطًا؛ ويُبلغ الاسترداد عن انتهائه. | 60 min / aus / an |
أبقوا فترة التهدئة 30 دقيقة أو أكثر حتى لا تتكرر التنبيهات بسبب قيمة متذبذبة. |
Ziele |
البريد الإلكتروني (المرسل هو المسؤول الذي حفظ الإعدادات)، وwebhook (JSON بالنوع nextxch.alert، موقّع بـ X-Nextxch-Signature: sha256=...)، وSMS وTelegram وSignal وWhatsApp عبر القنوات ضمن الإشعارات. | - |
أضيفوا هدفًا واحدًا على الأقل خارج خادم البريد الخاص بكم (SMS أو تطبيق مراسلة أو webhook): فإذا تعطّل التسليم، فلن تصل رسالة التنبيه البريدية. |
Messwerte in Prometheus und OpenTelemetry |
كل قيمة في لوحة المعلومات متاحة على /metrics: nextxch_mail_inbound_total، nextxch_mail_outbound_total، nextxch_mail_deferred_total، nextxch_mail_bounced_total، nextxch_mail_rejected_total، nextxch_mail_spam_total، nextxch_auth_failures_total، nextxch_mail_spam_rate_percent، nextxch_queue_messages، nextxch_queue_deferred_messages، nextxch_queue_oldest_age_minutes، nextxch_connections_active{protocol}، nextxch_process_cpu_percent، nextxch_process_working_set_bytes، nextxch_disk_free_percent، nextxch_disk_free_bytes، nextxch_database_size_bytes، nextxch_tls_certificate_min_expiry_days، nextxch_tls_certificate_expiry_days{domain}، nextxch_cluster_nodes_active، nextxch_alerts_firing، nextxch_smtp_filter_verdicts_total{type,verdict}، nextxch_smtp_filter_failures_total. | aktiv |
عبر OTLP تحمل الأدوات الأسماء نفسها مع نقاط بدلًا من الشرطات السفلية (nextxch.mail.inbound)؛ ويُنتج التحويل إلى Prometheus الأسماء نفسها مرة أخرى. |