Ein System zur Überwachung von Servern und Diensten mit LocalNetAppChat.
- Monitor Agents: Sammeln Metriken von Servern
- Alert Manager: Verarbeitet Warnungen
- Dashboard: Zeigt Status in Echtzeit
Dieses Szenario enthält alle benötigten Script-Dateien:
collect-metrics.py- Sammelt echte System-Metriken (benötigt psutil)simple-monitor.py- Einfache Alternative mit simulierten Metrikenwebsite-monitor.py- Überwacht Website-Verfügbarkeit
check-alert.ps1- Verarbeitet eingehende Alertscheck-processes.ps1- Überwacht kritische Prozesse
LocalNetAppChat.Server --port 5000 --key "monitor123"Mit echten System-Metriken (benötigt pip install psutil):
LocalNetAppChat.ConsoleClient emitter --server monitorserver --port 5000 --key "monitor123" --clientName "Server01" --command "python -u python/collect-metrics.py"Oder mit simulierten Metriken (keine zusätzlichen Pakete nötig):
LocalNetAppChat.ConsoleClient emitter --server monitorserver --port 5000 --key "monitor123" --clientName "Server01" --command "python -u python/simple-monitor.py"LocalNetAppChat.Bot --server monitorserver --port 5000 --key "monitor123" --clientName "AlertManager" --scriptspath "./scripts"LocalNetAppChat.ConsoleClient listener --server monitorserver --port 5000 --key "monitor123" --clientName "Dashboard"Sammelt echte System-Metriken:
- CPU-Auslastung in Prozent
- Speicher-Auslastung in Prozent
- Festplatten-Auslastung in Prozent
- Sendet ALERT bei kritischen Werten (CPU > 80%, Memory > 90%)
Alternative ohne externe Abhängigkeiten:
- Simuliert realistische Metriken
- Generiert zufällige Alerts
- Ideal für Tests und Demos
Überwacht Website-Verfügbarkeit:
- Prüft HTTP-Status-Codes
- Meldet Verbindungsfehler
- Kann einfach erweitert werden
Verarbeitet eingehende Nachrichten:
- Erkennt ALERT-Meldungen
- Prüft Metriken auf Schwellwerte
- Kann erweitert werden für E-Mail/Teams-Benachrichtigungen
Überwacht kritische Prozesse:
- Prüft ob definierte Prozesse laufen
- Sendet Alerts bei fehlenden Prozessen
Starten Sie für jeden Server einen eigenen Monitor Agent mit eindeutigem Namen:
# Server 1
LocalNetAppChat.ConsoleClient emitter --clientName "WebServer01" --command "python -u python/collect-metrics.py"
# Server 2
LocalNetAppChat.ConsoleClient emitter --clientName "DBServer01" --command "python -u python/collect-metrics.py"
# Server 3
LocalNetAppChat.ConsoleClient emitter --clientName "AppServer01" --command "python -u python/collect-metrics.py"LocalNetAppChat.ConsoleClient emitter --clientName "WebMonitor" --command "python -u python/website-monitor.py"Der Bot reagiert automatisch auf den Befehl:
exec check-processes.ps1
- Verwenden Sie strukturierte Nachrichten (z.B. "METRIC", "ALERT")
- Implementieren Sie Schwellwerte für Alerts
- Sammeln Sie historische Daten für Trends
- Gruppieren Sie ähnliche Alerts um Spam zu vermeiden
- Nutzen Sie eindeutige Client-Namen für jeden Monitor
Installieren Sie psutil mit: pip install psutil
Oder verwenden Sie simple-monitor.py als Alternative.
Stellen Sie sicher, dass Sie das -u Flag verwenden für unbuffered output:
--command "python -u script.py"- Prüfen Sie ob der Bot läuft und verbunden ist
- Stellen Sie sicher, dass der scriptspath korrekt ist
- Prüfen Sie die PowerShell-Ausführungsrichtlinien