Skip to content

Alerting Architektur

Alerting ist die tenant-spezifische Auswertungsschicht, die gesammelte CPI- und Keystore-Laufzeitdaten in bearbeitbare Alert-Datensaetze ueberfuehrt. Sie liegt zwischen Hintergrundsammlung und operativem Review.

Verwandte Seiten

Fachliche Rolle

Die aktuelle CPI-orientierte Alert-Engine ueberwacht vor allem:

  • Message-Verarbeitung und Fehlerbilder
  • Deployment-Status von iFlows und Artefakten
  • Keystore- und Zertifikatszustand
  • taegliche Pruefungen auf iFlows ohne erwartete Messages

Persistenzmodell

Die Alert-Konfiguration liegt primaer in cConfigExt:

  • name = "jobs.alerts"
  • data_type = "config"

Der Alert-Laufzeitzustand liegt ebenfalls in cConfigExt:

  • name = "jobs.alerts"
  • data_type = "runtime"

Ausgeloeste Alerts werden in cpiAlert gespeichert und ueber objektspezifische Relationstabellen verknuepft, zum Beispiel:

  • cpiMessageAlert
  • cpiFlowAlert
  • cpiKeystoreEntryAlert

Laufzeitgrenze

flowchart LR
    CFG[cConfigExt jobs.alerts.config und runtime] --> TASK[task_alerts.py]
    MSGDATA[cpiMessageLog und verwandte Laufzeitdaten] --> MSG[alerts_message.py]
    FLOWDATA[cpiFlow und Package-Zustand] --> FLOW[alerts_iflow.py]
    KEYDATA[cpiKeystoreEntry] --> KEY[alerts_keystore.py]
    TASK --> MSG[alerts_message.py]
    TASK --> FLOW[alerts_iflow.py]
    TASK --> KEY[alerts_keystore.py]
    TASK --> DAILY[alerts_iflow_no_messages.py]
    DAILY --> FLOWDATA
    MSG --> ALERT[cpiAlert]
    FLOW --> ALERT
    KEY --> ALERT
    DAILY --> ALERT
    ALERT --> UI[AlertPopup und Overview Karten]
    UI --> ACK[Acknowledge und Unterdrueckung]

Abhaengigkeiten

Alerting erzeugt keine eigene fachliche Wahrheitsquelle fuer operative Fakten. Es baut auf zuvor synchronisierten Laufzeitdaten auf:

  • Message-Alerts haengen von synchronisierten Message-Daten ab
  • iFlow-Alerts haengen von Flow- und Deployment-Zustand ab
  • Keystore-Alerts haengen vom synchronisierten Zertifikatsinventar ab
  • die UI liest persistierte Alert-Zeilen und berechnet Bedingungen nicht live neu

Wichtige Abgrenzung

backend/src/core/models.py enthaelt noch eine allgemeinere Alert-Modellschicht mit cAlertType und cAlert. Der operative CPI-Alert-Flow stuetzt sich aktuell stattdessen auf:

  • jobs.alerts.config
  • jobs.alerts.runtime
  • cpiAlert und die zugehoerigen Relationstabellen

Diese Trennung ist wichtig, sobald neue Alert-Anforderungen umgesetzt werden.