Added new functionality: checking HIP hosts for TCP connectivity and whether they can be reached via RDP.
This commit is contained in:
@@ -3,7 +3,8 @@
|
||||
Dieses Repository ist für eine **Gitea-kompatible Repo-Struktur** aufgebaut und enthält zwei Konsolenanwendungen für **Windows Server 2019 / BizTalk Server 2019** auf **.NET Framework 4.7.2**:
|
||||
|
||||
1. **HostAvailabilityMonitor**
|
||||
- prüft Endpunkte wie UNC/SMB, `file://`, HTTP/HTTPS, SFTP, FTP, TCP und ICMP
|
||||
- prüft Endpunkte wie UNC/SMB, `file://`, HTTP/HTTPS, SFTP, FTP, TCP, ICMP und RDP
|
||||
- lädt optional eine statische HIP-VM-Liste aus `hip-vms.json` und prüft pro VM Netzwerk/Ping sowie RDP/TCP 3389
|
||||
- schreibt Rolling-Logs, Windows Application Event Log und E-Mails bei DOWN, Recovery und täglichem Status
|
||||
|
||||
2. **BizTalkMonitorConfigGenerator**
|
||||
@@ -61,7 +62,8 @@ Der typische Betrieb auf einer BizTalk-Maschine ist:
|
||||
├── App.config
|
||||
├── HostAvailabilityMonitor.csproj
|
||||
├── Program.cs
|
||||
└── appsettings.json
|
||||
├── appsettings.json
|
||||
└── hip-vms.json
|
||||
```
|
||||
|
||||
Diese Struktur ist bewusst einfach gehalten, damit das Repository sauber in **Gitea** eingecheckt, gebaut und auf Windows-Servern ausgerollt werden kann.
|
||||
@@ -88,6 +90,8 @@ Diese Struktur ist bewusst einfach gehalten, damit das Repository sauber in **Gi
|
||||
- Windows Application Event Log
|
||||
- SMTP-Mails bei DOWN, Recovery (`DOWN -> UP`) und täglichem Status
|
||||
- SMTP-Sendports bzw. reine E-Mail-Empfaengerlisten werden vom Generator uebersprungen und vom Monitor defensiv nur als `Skipped` protokolliert, nicht alarmiert
|
||||
- statische HIP-VM-Prüfung über separate `hip-vms.json`, damit durch BizTalk neu erzeugte Endpunktlisten nicht mit der VM-Liste kollidieren
|
||||
- pro HIP-VM werden zwei normale Monitor-Targets erzeugt: `icmp://<ip>` für Netzwerk-Konnektivität und `rdp://<ip>:3389` für RDP
|
||||
- tägliche Status-Mail auf Basis des **ersten Laufs ab der konfigurierten Uhrzeit**
|
||||
- State-Datei gegen Mail-Spam und für die Einmal-pro-Tag-Logik der Status-Mail
|
||||
- `ApplicationName` pro Target
|
||||
@@ -257,6 +261,36 @@ Inhalt der Tagesstatus-Mail:
|
||||
- Anzahl heutiger erfolgreicher und fehlgeschlagener Checks
|
||||
- aktueller Snapshot des letzten Laufs
|
||||
- Liste der aktuell DOWN befindlichen Endpunkte mit Anwendung und Umgebung
|
||||
- HIP-VM-Snapshot mit Netzwerk- und RDP-Status pro VM
|
||||
|
||||
## HIP-VM-Monitoring
|
||||
|
||||
Die statischen HIP-VMs liegen getrennt von den BizTalk-Endpunkten in:
|
||||
|
||||
```text
|
||||
src\HostAvailabilityMonitor\hip-vms.json
|
||||
```
|
||||
|
||||
Aktiviert wird die Erweiterung in `appsettings.json`:
|
||||
|
||||
```json
|
||||
"HipVirtualMachines": {
|
||||
"Enabled": true,
|
||||
"ConfigPath": "hip-vms.json",
|
||||
"ApplicationName": "HIP Virtual Machines",
|
||||
"TimeoutSeconds": 5,
|
||||
"RdpPort": 3389,
|
||||
"CheckNetwork": true,
|
||||
"CheckRdp": true
|
||||
}
|
||||
```
|
||||
|
||||
Pro VM erzeugt der Monitor beim Start zwei normale Checks:
|
||||
|
||||
- `Network`: Ping/ICMP gegen die konfigurierte Adresse
|
||||
- `RDP`: TCP-Verbindung auf den konfigurierten RDP-Port, standardmäßig `3389`
|
||||
|
||||
Ausfälle und Recoveries laufen über dieselbe State-Datei und dieselbe Mail-Logik wie alle anderen Targets. Die tägliche Status-Mail enthält zusätzlich eine kompakte HIP-VM-Übersicht je Gruppe, Maschine und Beschreibung.
|
||||
|
||||
## Mehrere Mail-Empfaenger konfigurieren
|
||||
|
||||
@@ -307,6 +341,7 @@ Wichtige Felder:
|
||||
- `BizTalk.ApplicationMappings`: Mapping von BizTalk-Anwendungsnamen auf fachliche App-Namen
|
||||
- `Output.Path`: Pfad der zu erzeugenden Monitor-JSON
|
||||
- `GeneratedMonitorConfig`: Vorlage für Logging, Runtime, Event Log und Mail des Monitors
|
||||
- `GeneratedMonitorConfig.HipVirtualMachines`: statische HIP-VM-Prüfung in der generierten Monitor-JSON einschalten
|
||||
- `GeneratedMonitorConfig.Email.SendDailySummary`: tägliche Status-Mail in der generierten Monitor-JSON einschalten
|
||||
- `GeneratedMonitorConfig.Email.DailySummaryHourLocal`: lokale Uhrzeit der Tageszusammenfassung
|
||||
- `GeneratedMonitorConfig.Email.DailySummaryMinuteLocal`: lokale Minute der Tageszusammenfassung
|
||||
|
||||
Reference in New Issue
Block a user