Skip to content

Latest commit

 

History

History
60 lines (42 loc) · 1.71 KB

deployment.md

File metadata and controls

60 lines (42 loc) · 1.71 KB

Deployment

Übersicht

Beide Dateien aus deploy/ in den CheckMK Local-Ordner kopieren. RAMMonitor.appsettings.example.json dabei umbenennen zu RAMMonitor.appsettings.json:

C:\ProgramData\checkmk\agent\local\300\
├── RAMMonitor.ps1
└── RAMMonitor.appsettings.json

Der 300-Unterordner bewirkt asynchrone Ausführung alle 5 Minuten (300 Sekunden).

Netzwerk-Share für JSON-Output vorbereiten (Computer-Accounts brauchen Schreibrechte).

Konfiguration

RAMMonitor.appsettings.json:

{
  "outputPath": "\\\\fileserver\\monitoring$\\ram-usage",
  "localFallbackPath": "C:\\ProgramData\\CheckMK-RAMMonitor\\fallback",
  "minRamMB": 1024,
  "minTopEntries": 5
}
Parameter Beschreibung
outputPath UNC-Pfad für JSON-Snapshots. Unterverzeichnis pro Host wird automatisch erstellt.
localFallbackPath Fallback wenn Share nicht erreichbar
minRamMB Schwellwert - alle User/Prozess-Kombinationen darüber werden erfasst
minTopEntries Mindestanzahl Einträge (falls weniger über Schwellwert)

Test

& "C:\ProgramData\checkmk\agent\local\300\RAMMonitor.ps1"

Output:

0 "RAM_Usage_Monitor" ram_used_percent=75.3;80;95|process_count=8|top_ram_mb=2450 OK - RAM: 75.3% used, 8 consumers tracked. Top: DOMAIN\user/chrome.exe: 2450MB

CheckMK Service Discovery

Nach erstem Agent-Lauf erscheint RAM_Usage_Monitor als neuer Service.

Setup → Hosts → [Host] → Service Discovery → Accept.

Hinweise

  • Script läuft als SYSTEM (CheckMK-Agent) → WMI-Abfragen für Process Owner funktionieren
  • JSON-Dateien: \\share\...\{HOSTNAME}\{yyyy-MM-dd_HH-mm-ss}.json
  • CheckMK Service Name: RAM_Usage_Monitor