Zum Hauptinhalt springen
Version: Classic

Health Monitor


Der Health Monitor ist ein eigenständiger Dienst innerhalb der primedocs-Infrastruktur, der den Systemzustand kontinuierlich überwacht. Er prüft periodisch alle konfigurierten Dienste und Datenquellen und stellt die Ergebnisse sowohl über ein Dashboard in der DataSourceAdminApp als auch über eine API zur Verfügung. Der Health Monitor muss via die primedocs.config aktiviert werden (primedocs.config ).

Allgemeine Funktion

Dashboard

Das Health Monitor Dashboard ist über den DataSource Admin App zugänglich und gibt einen Überblick über den aktuellen Systemzustand. Es zeigt den Status aller PrimeDocs-Dienste und Datenquellen und erlaubt es, den Status manuell zu aktualisieren (Refresh). Erkannte Warn- und Fehlermeldungen aus dem Anwendungsprotokoll können zudem als gelesen markiert werden.

Das Dashboard aktualisiert sich automatisch, sofern der Status noch unbekannt ist (z. B. direkt nach dem Start des Dienstes).

API

Der aktuelle Systemzustand ist auch programmatisch abrufbar. Die API kann ohne Authentifizierung aufgerufen werden:

Code

GET {HealthMonitorUrl}/v1/status

Rückgabewerte:

WertStatusHTTP-CodeBeschreibung
0OK200Keine Probleme erkannt. Alle Dienste laufen normal.
1Degraded200Es liegen Warnungen vor. Dienste könnten eingeschränkt funktionieren.
2Severely degraded
or nonoperational
500Es liegen Fehler vor. Dienste sind möglicherweise nicht erreichbar oder nicht funktionsfähig.
3Unknown200Der Status wird gerade ermittelt. Tritt typischerweise nur beim Start des Health Monitor Dienstes auf.

Für detaillierte Informationen steht ein weiterer Endpunkt zur Verfügung, der Basic Authentication erfordert (Zugangsdaten werden in der primedocs.config konfiguriert):

GET {HealthMonitorUrl}/v1/status/detailed

Erkannte Fehler und Warnungen

Der Health Monitor führt verschiedene Prüfungen auf System- und Datenquellenebene durch. Die Checks lassen sich thematisch in folgende Kategorien einteilen:

Konfiguration

Prüft die Gültigkeit der primedocs.config. Dazu gehören:

  • Syntaktische und strukturelle Korrektheit der XML-Konfigurationsdatei
  • Gültige App-Typen für alle konfigurierten Applikationen

Mögliche Auswirkung: 🔴 Error

Erreichbarkeit der Dienste

Prüft, ob die konfigurierten PrimeDocs-Dienste (z. B. Web API, weitere Server-Applikationen) unter ihrer konfigurierten URL erreichbar sind.

Mögliche Auswirkung: 🔴 Error

Zertifikate

Prüft die Gültigkeit des für den Identity Server konfigurierten Signatur-Zertifikats.

Mögliche Auswirkung: ⚠️ Warning (läuft in < 30 Tagen ab), 🔴 Error (läuft in < 14 Tagen ab oder konnte nicht geladen werden)

Anwendungsprotokoll

Analysiert die NLog-Datenbank auf Warn- und Fehlermeldungen der letzten 24 Stunden. Über die optionale errorRatePolicy in der primedocs.config kann konfiguriert werden, ab welcher Fehlerrate pro Stunde ein Error ausgelöst wird:

XML

<healthMonitor basicAuth="user:pass" clientSecret="secret" intervalInSeconds="600">
<errorRatePolicy errorsPerHourThreshold="10"
statusBelowThreshold="Warning"
statusAboveThreshold="Error" />
</healthMonitor>

Ohne konfigurierte Policy werden Einträge im Fehlerprotokoll als Warnung dargestellt.

Diese Funktion muss via das Attribut databaseLoggingEnabled="true" auf dem primedocs Element in der primedocs.config aktiviert werden.

Mögliche Auswirkung: ⚠️ Warning, 🔴 Error (je nach Konfiguration)

Datenquellen-Konfiguration und -Inhalte

Pro konfigurierter Datenquelle werden weitere Prüfungen durchgeführt, z. B. auf globale Einstellungen, Themes und Inhalte (beispielsweise Snippets).

Mögliche Auswirkung: ⚠️ Warning, 🔴 Error

Unerwartete Fehler

Tritt beim Ausführen eines beliebigen Checks eine unbehandelte Ausnahme auf, wird diese als Fehler erfasst und im Dashboard angezeigt.

Mögliche Auswirkung: 🔴 Error