Coverage Report (Runbooks / Quick Fixes)
מטרה
עמוד ה-Coverage נועד להיות Gap Analysis קבוע: To‑Do List לצוות שמראה אילו alert_type נצפו במערכת ועדיין חסר להם Runbook/Quick Fix, ואילו הגדרות בקונפיג הפכו ליתומות.
בניגוד לדוחות ”לפי חלון זמן“, כאן ברירת המחדל היא All‑time — כדי שחוב תיעודי לא ייעלם רק כי ההתראה לא קפצה לאחרונה.
מקור האמת (Catalog / Registry)
בכל record_alert נשמרת/מתעדכנת רשומה ב-DB ב-collection alert_types_catalog (או לפי ALERT_TYPES_CATALOG_COLLECTION):
first_seen_dt— פעם ראשונה שההתראה נצפתהlast_seen_dt— פעם אחרונה שההתראה נצפתהtotal_count— כמה פעמים ההתראה נצפתה (ב‑All‑time)
הערה
Drill alerts (is_drill: true) לא נכנסים לקטלוג, כדי לא לזהם את ה-To‑Do.
הגדרות כיסוי (Matching)
Runbooks
Runbook נחשב ”קיים“ עבור alert_type אם יש התאמה ל:
Runbook key בקובץ
config/observability_runbooks.ymlאו אחד ה-
aliasesשל אותו Runbook
חשוב
Runbook ברירת מחדל (default) לא נחשב כיסוי. אם אין Runbook ייעודי — ההתראה תופיע כ-Missing Runbook גם אם היא נופלת ל-default.
Quick Fixes
Quick Fix נחשב ”קיים“ עבור alert_type אם קיימת לפחות פעולה אחת פר-התראה באחד מהמקורות:
actionבתוך אחד ה-steps של ה-Runbook הייעודיאו
by_alert_type.<alert_type>בקובץconfig/alert_quick_fixes.json
הערה
כללים כלליים כמו by_severity או fallback אינם נחשבים כ-”כיסוי“ פר-התראה עבור הרשימה Missing Quick Fixes.
מה מוצג בדוח
Missing Runbooks: כל
alert_typeמהקטלוג שאין לו Runbook ייעודי (key/alias), כולל Last Seen ו-Count (All‑time).Missing Quick Fixes:
alert_typeשיש לו Runbook ייעודי, אבל אין לו פעולות פר-התראה.Orphan Runbooks: Runbooks/aliases בקונפיג שלא תואמים לשום
alert_typeבקטלוג (default מוחרג).Orphan Quick Fixes: מפתחות תחת
by_alert_typeבקונפיג שלא תואמים לשוםalert_typeבקטלוג.
API
GET /api/observability/coverage (Admin only)
Query params:
- min_count: מינימום הופעות בקטלוג (All‑time). ברירת מחדל: 1.
Response (תקציר):
- missing_runbooks / missing_quick_fixes: כולל alert_type, count, last_seen_ts, sample_title
- orphan_runbooks / orphan_quick_fixes
- meta.mode: catalog