371 lines
18 KiB
Markdown
371 lines
18 KiB
Markdown
# Dokumentation: BizTalk Checkmk Pulse
|
|
|
|
## Zielbild
|
|
|
|
Ziel ist ein wartbares Monitoring fuer BizTalk Server 2020 in den Umgebungen `ACC`, `DEV`, `TST` und `PRD`. Jede Umgebung besitzt einen BizTalk Server 2020 und einen SQL Server. SQL Server wird mit dem Checkmk-eigenen MSSQL-Plugin ueberwacht; fuer BizTalk liefert dieses Projekt die fehlende fachliche und technische Laufzeitsicht.
|
|
|
|
Das Monitoring soll:
|
|
|
|
- auf jeder BizTalk-Maschine lokal laufen
|
|
- ohne PowerShell-Abhaengigkeit funktionieren
|
|
- keine BizTalk-DLLs im Build erzwingen
|
|
- Checkmk-2.4-kompatible Services und Metriken erzeugen
|
|
- service-discovery-freundlich und dashboard-tauglich sein
|
|
- bei Fehlern gueltige `UNKNOWN`-Services statt kaputter Agent-Ausgaben liefern
|
|
|
|
## Technische Bewertung
|
|
|
|
### Option A: Checkmk Local Check mit C#/.NET Framework
|
|
|
|
Bewertung: empfohlen und umgesetzt.
|
|
|
|
Vorteile:
|
|
|
|
- Checkmk 2.4 unterstuetzt Local Checks direkt.
|
|
- Windows Server mit BizTalk 2020 bringt .NET Framework in der Regel passend mit.
|
|
- `System.Management` kann BizTalk-WMI lesen.
|
|
- Keine PowerShell Execution Policy, keine Script-Signing-Frage.
|
|
- Kein serverseitiges Checkmk-Python-Plugin notwendig.
|
|
- Rollout ist eine einfache Dateiablage unter `%ProgramData%\checkmk\agent\local`.
|
|
|
|
Nachteile:
|
|
|
|
- Schwellwerte sind in der `.exe.config`, nicht als Checkmk-Regelsatz in WATO.
|
|
- Eigene Graphing-Definitionen sind nicht enthalten; Checkmk zeigt Local-Check-Metriken trotzdem als Performance-Daten und Graphen.
|
|
|
|
### Option B: Agent Plugin plus serverseitiges Checkmk-Plugin
|
|
|
|
Bewertung: technisch elegant, aber fuer den ersten produktiven Schritt schwerer.
|
|
|
|
Vorteile:
|
|
|
|
- Checkmk-Regeln, Discovery und Metrikdefinitionen koennen sauber zentral modelliert werden.
|
|
- Bessere langfristige Erweiterbarkeit als MKP.
|
|
|
|
Nachteile:
|
|
|
|
- Checkmk-Check-API-Versionen muessen enger gepflegt werden.
|
|
- Server-seitige Installation in jeder Site erforderlich.
|
|
- Mehr Aufwand fuer Managed-Services-Betrieb und Updates.
|
|
|
|
Empfehlung: als Version 2 dieses Projekts denkbar, wenn die Local-Check-Variante stabil in PRD laeuft und zentrale Regelsaetze wirklich benoetigt werden.
|
|
|
|
### Option C: PowerShell Local Check
|
|
|
|
Bewertung: nicht empfohlen fuer diese Umgebung.
|
|
|
|
Vorteile:
|
|
|
|
- Schnell zu schreiben.
|
|
- WMI/CIM-Zugriff ist komfortabel.
|
|
|
|
Nachteile:
|
|
|
|
- PowerShell ist in vielen Serverumgebungen eingeschraenkt oder signaturpflichtig.
|
|
- Ausfuehrungsverhalten im Checkmk-Agent-Kontext ist haeufiger fehleranfaellig.
|
|
|
|
### Option D: BizTalk ExplorerOM/OperationsOM
|
|
|
|
Bewertung: fachlich stark, deployseitig unnoetig schwer.
|
|
|
|
Vorteile:
|
|
|
|
- Hoehere BizTalk-Abstraktion als rohe WMI-Klassen.
|
|
|
|
Nachteile:
|
|
|
|
- BizTalk-DLL-Versionen muessen beim Build und teilweise zur Laufzeit passen.
|
|
- Build-Agenten brauchen BizTalk-Komponenten oder SDK-Dateien.
|
|
- Fuer die benoetigten Zustandsdaten reicht WMI aus.
|
|
|
|
## Architektur
|
|
|
|
```text
|
|
Checkmk Windows Agent
|
|
|
|
|
| startet lokale Checks aus %ProgramData%\checkmk\agent\local
|
|
v
|
|
biztalk_checkmk_pulse.cmd
|
|
|
|
|
| startet
|
|
v
|
|
BizTalkCheckmkPulse.exe
|
|
|
|
|
| liest lokal und prueft im gleichen Sicherheitskontext
|
|
+-- WMI root\MicrosoftBizTalkServer
|
|
+-- Windows Application Event Log
|
|
+-- SQL-Verbindung zu BizTalkMgmtDb/BizTalkMsgBoxDb
|
|
|
|
|
v
|
|
Checkmk Local Check Zeilen nach STDOUT
|
|
```
|
|
|
|
Der `.cmd`-Wrapper liefert auch dann eine gueltige `UNKNOWN`-Zeile mit Massnahme, wenn die EXE fehlt oder bereits der Prozessstart mit einem Exitcode fehlschlaegt. Die EXE selbst faengt Laufzeitfehler ab und schreibt fuer alle stabilen Services `UNKNOWN`, damit unvollstaendige Deployments oder WMI-Probleme in Checkmk sichtbar bleiben.
|
|
|
|
## Datenquellen
|
|
|
|
### BizTalk WMI Namespace
|
|
|
|
Namespace:
|
|
|
|
```text
|
|
root\MicrosoftBizTalkServer
|
|
```
|
|
|
|
Genutzte Klassen:
|
|
|
|
| Klasse | Zweck |
|
|
| --- | --- |
|
|
| `MSBTS_GroupSetting` | BizTalk-Gruppe und Management-DB-Hinweise. |
|
|
| `MSBTS_MessageBoxSetting` | MessageBox-DB-Hinweise. |
|
|
| `MSBTS_HostInstance` | Host-Instance-Zustand. |
|
|
| `MSBTS_ServiceInstance` | Suspended service instances. |
|
|
| `MSBTS_ReceiveLocation` | Receive-Location-Zustand. |
|
|
| `MSBTS_SendPort` | Send-Port-Zustand. |
|
|
| `MSBTS_Orchestration` | Orchestration-Zustand. |
|
|
| `MSBTS_ReceivePort` | Application-Mapping fuer Details. |
|
|
|
|
### Windows Application Event Log
|
|
|
|
Der Check liest standardmaessig das lokale Application Log fuer die letzten 60 Minuten und filtert auf Quellen wie:
|
|
|
|
- `BizTalk Server`
|
|
- `XLANG/s`
|
|
- `ENTSSO`
|
|
- `BizTalk Server Application`
|
|
- `BizTalk Server EDI`
|
|
|
|
Die Liste ist ueber `EventLogSources` konfigurierbar.
|
|
|
|
### SQL-Zugriffsprobe
|
|
|
|
Nach erfolgreicher oder teilweise erfolgreicher Plattformabfrage uebernimmt der SQL-Probe die per WMI ermittelten Management- und MessageBox-Ziele. Fuer jedes eindeutige Ziel wird mit `System.Data.SqlClient` eine Verbindung mit integrierter Windows-Authentifizierung geoeffnet und `SELECT 1` ausgefuehrt. Die Verbindung wird unmittelbar danach geschlossen; es werden keine BizTalk-Tabellen gelesen oder veraendert.
|
|
|
|
Der Test laeuft unter derselben Identitaet wie der Checkmk Local Check. Damit wird sichtbar, ob `LocalSystem` beziehungsweise das Maschinenkonto des BizTalk-Servers das SQL-Ziel tatsaechlich erreichen und die Datenbank oeffnen kann. Die Probe ist mit `ProbeSqlConnectivity=false` deaktivierbar und verwendet `SqlConnectionTimeoutSeconds` mit dem Default 5 Sekunden je Ziel als Timeout.
|
|
|
|
Im produktiven Betrieb sollte der komplette Local Check asynchron mit 300 Sekunden Cache ausgefuehrt werden. So fuehren fehlende SQL-Rechte nicht bei jedem Checkmk-Abruf zu weiteren fehlgeschlagenen Login-Ereignissen. Der Trade-off ist eine Zustandsverzoegerung von maximal fuenf Minuten.
|
|
|
|
## Berechtigungsmodell
|
|
|
|
### LocalSystem und lokaler WMI-Zugriff
|
|
|
|
Der Checkmk Windows Agent und der Agent Controller laufen standardmaessig als `LocalSystem` (`NT AUTHORITY\SYSTEM`). Der Wrapper und die EXE erben diesen Kontext. Das Plugin verbindet sich lokal mit `\\<eigener-server>\root\MicrosoftBizTalkServer`, setzt keine eigenen Anmeldedaten, nutzt kein Remote-WMI und fuehrt keine veraendernden WMI-Methoden aus. Das lokale Windows Application Event Log wird ebenfalls nur gelesen.
|
|
|
|
Die lokalen Rechte von `LocalSystem` reichen fuer diese Zugriffe normalerweise aus. Im regulaeren lokalen Betrieb werden deshalb keine zusaetzlichen DCOM-, Firewall- oder pauschalen WMI-Namespace-Freigaben benoetigt.
|
|
|
|
### Netzwerkidentitaet zum SQL Server
|
|
|
|
BizTalk-WMI-Klassen koennen ihre Daten aus der BizTalk Management- oder MessageBox-Datenbank beziehen. Liegt SQL Server auf einer anderen Maschine, authentifiziert sich `LocalSystem` dort mit dem Active-Directory-Computerkonto des BizTalk-Servers:
|
|
|
|
```text
|
|
DOMAIN\BIZTALKSERVER$
|
|
```
|
|
|
|
Dieses Konto besitzt nicht automatisch BizTalk- oder SQL-Berechtigungen. Daraus kann die Situation entstehen, dass die Verbindung zum lokalen WMI-Namespace erfolgreich ist, einzelne SQL-gestuetzte WMI-Klassen aber `Access denied`, `UnauthorizedAccessException` oder `UNKNOWN` liefern.
|
|
|
|
### Pruefung und Freigabe
|
|
|
|
Der direkte Programmstart in einer administrativen Shell laeuft unter dem angemeldeten Benutzer und ist deshalb kein ausreichender Berechtigungstest. Verbindlich ist die Ausfuehrung durch den Checkmk Agent Controller als `LocalSystem`:
|
|
|
|
```powershell
|
|
& "C:\Program Files (x86)\checkmk\service\cmk-agent-ctl.exe" dump |
|
|
Select-String -Pattern "BizTalk|Access denied|Unauthorized|UNKNOWN" -Context 0,1
|
|
```
|
|
|
|
Bei Zugriffsfehlern gilt folgendes Least-Privilege-Vorgehen:
|
|
|
|
1. Computerkonto des BizTalk-Servers ermitteln, normalerweise `DOMAIN\BIZTALKSERVER$`.
|
|
2. Die bei der BizTalk-Konfiguration verwendete Operator-Gruppe feststellen.
|
|
3. Das Computerkonto in `BizTalk Server Operators` beziehungsweise die kundenspezifisch benannte Operator-Gruppe aufnehmen.
|
|
4. Kerberos-Tickets des Systemkontos erneuern oder den Server im Wartungsfenster neu starten.
|
|
5. Den Agent-Dump wiederholen.
|
|
6. Nur fuer weiterhin abgelehnte, konkret identifizierte WMI-Klassen mit BizTalk- und SQL-Administration pruefen, ob Administratorrechte erforderlich sind.
|
|
|
|
Die Operator-Rolle ist fuer grundlegendes Monitoring und Zustandsabfragen vorgesehen. Direkte manuelle Aenderungen an den Rollen der BizTalk-SQL-Datenbanken sind zu vermeiden; die durch BizTalk konfigurierte Windows-Gruppe ist die vorgesehene Berechtigungsgrenze.
|
|
|
|
| Agent-Dump-Ergebnis | Massnahme |
|
|
| --- | --- |
|
|
| Plausible Werte fuer alle BizTalk-Services | Keine Berechtigungsaenderung. |
|
|
| WMI-Namespace nicht erreichbar | BizTalk-WMI-Provider, WMI-Dienst, Namespace und ACL gezielt pruefen. |
|
|
| Nur SQL-gestuetzte Klassen scheitern | Computerkonto in die BizTalk-Operator-Gruppe aufnehmen. |
|
|
| Nur Event-Log-Service ist `UNKNOWN` | Lokalen Application-Log-Zugriff pruefen. |
|
|
| Fehler bleibt mit Operator-Rolle bestehen | Betroffene Klasse und konkrete BizTalk-/SQL-Rollenanforderung untersuchen. |
|
|
|
|
### Automatische Diagnose im Programm
|
|
|
|
WMI-Verbindungsaufbau und jede erforderliche WMI-Klasse werden separat bewertet. Erwartbare Exceptions werden in folgende Kategorien eingeordnet:
|
|
|
|
| Diagnose | Bedeutung | Ausgegebene Massnahme |
|
|
| --- | --- | --- |
|
|
| `Wmi/Permission` | Namespace oder BizTalk-WMI-Klasse verweigert den Zugriff. | Namespace-ACL bei Verbindungsfehlern beziehungsweise BizTalk-Operator-Gruppe bei Klassenfehlern pruefen. |
|
|
| `Wmi/Connectivity` | WMI-/RPC-Ziel nicht erreichbar. | WMI-Dienst, Provider und bei Remote-WMI zusaetzlich DNS/RPC/Firewall pruefen. |
|
|
| `Wmi/Timeout` | WMI-Abfrage ueberschreitet `QueryTimeoutSeconds`. | WMI-, BizTalk- und SQL-Auslastung untersuchen, bevor der Timeout erhoeht wird. |
|
|
| `Wmi/Configuration` | Namespace oder Klasse fehlt. | BizTalk-WMI-Provider und BizTalk-Installation pruefen beziehungsweise reparieren. |
|
|
| `Sql/Permission` | Login oder Datenbankzugriff wird abgelehnt. | Maschinenkonto der BizTalk-Operator-Gruppe zuordnen, Kerberos erneuern, keine direkten DB-Rollen vergeben. |
|
|
| `Sql/Connectivity` | SQL-Server oder Instanz nicht erreichbar. | Servername, DNS, SQL-Dienst, TCP-Protokoll, Port und Firewall pruefen. |
|
|
| `Sql/Timeout` | SQL-Verbindung oder Testabfrage laeuft in den Timeout. | Netzwerk und SQL-Auslastung pruefen; Timeout nur begruendet anheben. |
|
|
| `Sql/Configuration` | WMI-Ziele unvollstaendig oder TLS-, Zertifikats-, SPN-/SSPI-Konfiguration fehlerhaft. | Plattformabfragen beziehungsweise Zertifikatskette, Verschluesselung, SPN und Kerberos gezielt pruefen. |
|
|
|
|
Jede Diagnose enthaelt Bereich/Kategorie, betroffene Komponente, eine kurze Ursache, `Massnahme:` und `Technik:` mit Exception-Typ, HRESULT oder SQL-Fehlernummer. Erforderliche Datenquellen besitzen eigene Verfuegbarkeitsflags. Schlaegt beispielsweise `MSBTS_ServiceInstance` fehl, wird `BizTalk Suspended Instances` zwingend `UNKNOWN`; eine leere Ergebnisliste darf nicht als 'keine Suspensions' fehlinterpretiert werden.
|
|
|
|
Die Operator-Mitgliedschaft des Computerkontos steht allen auf diesem Server als `LocalSystem` laufenden Diensten fuer Netzwerkzugriffe zur Verfuegung. Falls diese Sicherheitsauswirkung nicht akzeptabel ist, kann ein separater Collector unter einem dedizierten gMSA- oder Dienstkonto mit Operator-Rechten Checkmk-Spooldaten erzeugen. Diese Variante ist noch nicht Bestandteil der aktuellen Implementierung. Der komplette Checkmk-Agent sollte nicht allein fuer dieses Plugin auf eine andere Identitaet umgestellt werden, weil dies alle Agent-Sektionen und Local Checks betrifft.
|
|
|
|
Quellen:
|
|
|
|
- https://docs.checkmk.com/latest/en/agent_windows.html
|
|
- https://docs.checkmk.com/latest/en/localchecks.html
|
|
- https://learn.microsoft.com/en-us/biztalk/core/minimum-security-user-rights
|
|
- https://learn.microsoft.com/en-us/biztalk/core/access-control-and-data-security
|
|
- https://learn.microsoft.com/en-us/entra/architecture/service-accounts-computer
|
|
- https://learn.microsoft.com/en-us/windows/win32/wmisdk/access-to-wmi-namespaces
|
|
|
|
## Resilienz
|
|
|
|
Das Plugin ist bewusst defensiv gebaut:
|
|
|
|
- WMI-Queries haben ein konfigurierbares Timeout.
|
|
- WMI-Namespace und Pflichtklassen werden getrennt auf Berechtigung, Konfiguration, Erreichbarkeit und Timeout geprueft.
|
|
- Management- und MessageBox-Datenbank werden mit der echten Agent-Identitaet getestet.
|
|
- SQL-Fehlernummern werden in Berechtigung, Erreichbarkeit, Timeout oder Providerfehler klassifiziert.
|
|
- Fehlgeschlagene Pflichtabfragen erzeugen `UNKNOWN` statt irrefuehrender Nullwerte.
|
|
- Optionale WMI-Klassen erzeugen Diagnosehinweise statt Totalabbruch.
|
|
- Fehlende Properties werden als leer/unknown behandelt.
|
|
- Local-Check-Ausgaben verwenden gueltige Checkmk-Zeilen mit genau vier Feldern.
|
|
- Fatal Errors erzeugen `UNKNOWN` fuer alle stabilen Services.
|
|
- Event-Log-Auswertung ist isoliert; ein Fehler dort bricht WMI-Monitoring nicht ab.
|
|
- Service-Namen sind stabil, damit Service Discovery nicht bei jedem Lauf neue Services erzeugt.
|
|
|
|
## Statusmodell
|
|
|
|
### BizTalk Platform
|
|
|
|
- `OK`: BizTalk-WMI erreichbar.
|
|
- `UNKNOWN`: WMI nicht erreichbar oder kompletter Programmfehler.
|
|
|
|
Dieser Service ist der Integrationsindikator. Wenn er `UNKNOWN` ist, sind Berechtigungen, BizTalk-Installation oder WMI-Repository zu pruefen.
|
|
|
|
### BizTalk SQL Access
|
|
|
|
- `OK`: Datenbankziele vollstaendig ermittelt und integrierte Anmeldung an allen Zielen erfolgreich.
|
|
- `UNKNOWN`: Zielermittlung unvollstaendig, Anmeldung verweigert, SQL nicht erreichbar, Timeout oder Providerfehler.
|
|
- Bei `ProbeSqlConnectivity=false`: `OK` mit sichtbarem Hinweis, dass die Probe deaktiviert ist.
|
|
|
|
Metriken: `biztalk_sql_targets_total`, `biztalk_sql_targets_available` und `biztalk_sql_targets_failed`. Die Ausgabe nennt ausserdem `execution_identity`, `network_identity` und den Zustand jedes getesteten Datenbankziels.
|
|
|
|
### BizTalk Suspended Instances
|
|
|
|
- `OK`: keine suspendierten Instanzen.
|
|
- `WARN`: mindestens `WarnResumableThreshold` resumable suspended instances.
|
|
- `CRIT`: mindestens `CritNonResumableThreshold` non-resumable suspended instances.
|
|
- `UNKNOWN`: Datenquelle nicht lesbar.
|
|
|
|
### BizTalk Host Instances
|
|
|
|
- `OK`: alle Host-Instanzen sind started.
|
|
- `WARN`: mindestens eine Host-Instanz ist pending.
|
|
- `CRIT`: mindestens eine Host-Instanz ist stopped oder unknown.
|
|
- `UNKNOWN`: keine Host-Instanzen gefunden oder Datenquelle nicht lesbar.
|
|
|
|
### BizTalk Runtime Artifacts
|
|
|
|
- `OK`: Artefakte lesbar, keine unbekannten Statuswerte.
|
|
- `WARN`: nur wenn `AlertOnArtifactRuntimeIssues=true` und deaktivierte/inaktive Artefakte vorhanden sind.
|
|
- `CRIT`: unbekannte Send-Port- oder Orchestration-Statuswerte.
|
|
- `UNKNOWN`: mindestens eine erforderliche WMI-Artefaktklasse nicht lesbar.
|
|
|
|
Deaktivierte Receive Locations und gestoppte Ports koennen in BizTalk fachlich korrekt sein. Deshalb ist die Alarmierung hier standardmaessig informativ.
|
|
|
|
### BizTalk Event Log
|
|
|
|
- `OK`: keine relevanten Fehler/Warnungen ueber Schwellwert.
|
|
- `WARN`: Fehler oder Warnungen ab `EventLogWarnThreshold`.
|
|
- `CRIT`: Fehler ab `EventLogCritThreshold`.
|
|
- `UNKNOWN`: Event Log nicht lesbar.
|
|
|
|
## Dashboard-Empfehlung
|
|
|
|
Pro Umgebung sollte der BizTalk-Host in einem eigenen Host-Ordner oder Host-Tag fuer `ACC`, `DEV`, `TST`, `PRD` liegen. Im Dashboard eignen sich:
|
|
|
|
- Service State Widgets fuer die sechs stabilen BizTalk-Services
|
|
- Graphen fuer `biztalk_sql_targets_failed`, `biztalk_suspended_total`, `biztalk_host_instances_stopped`, `biztalk_eventlog_errors`
|
|
- Hostgruppe/Ordner pro Umgebung
|
|
- Optional eine View gefiltert auf `Service starts with BizTalk`
|
|
|
|
Empfohlene Reihenfolge im Dashboard:
|
|
|
|
1. `BizTalk Platform`
|
|
2. `BizTalk SQL Access`
|
|
3. `BizTalk Suspended Instances`
|
|
4. `BizTalk Host Instances`
|
|
5. `BizTalk Event Log`
|
|
6. `BizTalk Runtime Artifacts`
|
|
7. SQL-Server-Services aus dem Checkmk-MSSQL-Plugin
|
|
|
|
## Rollout-Vorgehen
|
|
|
|
1. Build-Paket erzeugen.
|
|
2. In `DEV` auf dem BizTalk-Server installieren.
|
|
3. `--self-test` und normalen Lauf ausfuehren.
|
|
4. Agent-Dump pruefen.
|
|
5. Checkmk Discovery durchfuehren.
|
|
6. Eine Woche Messwerte und false positives beobachten.
|
|
7. Nach `TST` und `ACC` uebernehmen.
|
|
8. In `PRD` mit `AlertOnArtifactRuntimeIssues=false` starten.
|
|
9. Nach Betriebsfreigabe Schwellwerte feinjustieren.
|
|
|
|
## Troubleshooting
|
|
|
|
### Service bleibt UNKNOWN
|
|
|
|
Pruefen:
|
|
|
|
```cmd
|
|
"%ProgramData%\checkmk\agent\local\biztalk_checkmk_pulse.cmd"
|
|
```
|
|
|
|
Wenn WMI nicht erreichbar ist:
|
|
|
|
```cmd
|
|
wmic /namespace:\\root\MicrosoftBizTalkServer path MSBTS_HostInstance get HostName,RunningServer,ServiceState
|
|
```
|
|
|
|
Der Checkmk Windows Agent laeuft normalerweise als LocalSystem. Daher immer auch den Agent-Dump verwenden:
|
|
|
|
```cmd
|
|
"C:\Program Files (x86)\checkmk\service\cmk-agent-ctl.exe" dump
|
|
```
|
|
|
|
Die Diagnose im Service-Text nach `Massnahme:` abarbeiten. Wichtige Kategorien:
|
|
|
|
- `Wmi/Permission`: lokale Namespace-ACL oder BizTalk-Operator-Zuordnung pruefen.
|
|
- `Sql/Permission`: Maschinenkonto `DOMAIN\BIZTALKSERVER$` und BizTalk-Operator-Gruppe pruefen.
|
|
- `Sql/Connectivity`: SQL-Server-/Instanzname, DNS, SQL-Dienst, TCP und Firewall pruefen.
|
|
- `Sql/Timeout`: SQL- und Netzwerkauslastung pruefen; Timeout nicht als erste Massnahme erhoehen.
|
|
|
|
Der direkte Aufruf des Wrappers kann wegen des angemeldeten Administratorkontos ein anderes Ergebnis liefern als der Agent-Dump. Fuer die Freigabe ist immer der Agent-Dump massgeblich.
|
|
|
|
### Keine Services in Discovery
|
|
|
|
Pruefen:
|
|
|
|
- Liegt `biztalk_checkmk_pulse.cmd` direkt unter `%ProgramData%\checkmk\agent\local`?
|
|
- Gibt der Wrapper direkt eine Zeile im Format `0 "Service" metric=value Details` aus?
|
|
- Wurde der Checkmk-Agent nach Policy-/Bakery-Aenderungen neu ausgerollt?
|
|
|
|
### Runtime Artifacts zeigt deaktivierte Artefakte
|
|
|
|
Das ist standardmaessig `OK`, damit gewollt deaktivierte BizTalk-Artefakte nicht alarmieren. Fuer strengere PRD-Standards:
|
|
|
|
```xml
|
|
<add key="AlertOnArtifactRuntimeIssues" value="true" />
|
|
```
|
|
|
|
## Weiterentwicklung
|
|
|
|
Sinnvolle naechste Ausbaustufen:
|
|
|
|
- MKP mit Agent-Bakery-Regel fuer zentrale Konfiguration.
|
|
- Optionales serverseitiges Check-Plugin nach Checkmk Check API V2.
|
|
- Custom Dashboard/View als Checkmk GUI Extension.
|
|
- Ergaenzung um MessageBox-Spool/Tracking-Daten, falls operativ benoetigt.
|