Agent-Monitore
Leichtgewichtiges Server-Monitoring per Agent -- CPU, Arbeitsspeicher, Festplatte und Load Average im Blick, ohne dass du ein komplexes Infrastruktur-Monitoring aufsetzen musst.
So funktioniert es
Installiere den Hoppla-Agent auf deinem Server. Der Agent läuft als Hintergrunddienst und schickt regelmäßig einen Heartbeat mit Systemmetriken an Hoppla. Du kannst Schwellenwerte für jede Metrik festlegen und wirst gewarnt, bevor Ressourcen knapp werden.
Bleibt der Heartbeat ganz aus (z. B. weil der Server abgestürzt ist), legt Hoppla einen Vorfall an -- genau wie bei Cron-Monitoren.
Token holen
Erstelle zuerst den Monitor und hol dir sein Token:
- Gehe zu Monitore und klick auf Agent-Monitor hinzufügen.
- Kopiere das generierte Agent-Token. Du übergibst es dem Agent bei der Einrichtung.
Das Dashboard zeigt dir für jede Installationsmethode den passenden, fertig ausgefüllten Befehl -- mit deinem Token schon eingesetzt.
Installation
Such dir die Methode aus, die zu deinem Server passt. Alle melden dieselben Metriken -- nimm einfach die, die zu deiner Umgebung passt.
Shell-Skript
Ein eigenständiger Shell-Agent. Passt auf jeden Linux-/macOS-Server mit curl und den üblichen Tools:
curl -sSL https://releases.hoppla.dev/agent/hoppla-agent.sh -o hoppla-agent.sh
chmod +x hoppla-agent.sh
./hoppla-agent.sh --token DEIN-AGENT-TOKENGo-Binary
Eine einzelne statische Binary -- ohne Laufzeitabhängigkeiten. Der Installer lädt die passende Version für deine Plattform:
curl -sSL https://releases.hoppla.dev/agent/install.sh | sh
hoppla-agent --token DEIN-AGENT-TOKENPHP-Probe
Ein PHP-Skript zum Reinkopieren für Server, auf denen ohnehin PHP läuft. Praktisch bei Shared- oder PHP-lastigem Hosting:
curl -sSL https://releases.hoppla.dev/agent/hoppla-probe.php -o hoppla-probe.php
php hoppla-probe.php --token DEIN-AGENT-TOKENWordPress-Plugin
Für WordPress-Seiten installierst du das Hoppla-Plugin und trägst dein Agent-Token in den Einstellungen ein. Das Plugin meldet die Server-Metriken nach Zeitplan -- ganz ohne Shell-Zugriff.
Konfiguration
Der Agent nimmt seine Einstellungen als Kommandozeilen-Parameter entgegen (beim Shell- und Go-Agent alternativ über die passenden Umgebungsvariablen):
| Parameter | Umgebungsvariable | Pflicht | Standard | Beschreibung |
|---|---|---|---|---|
--token | HOPPLA_TOKEN | Ja | -- | Dein Agent-Token aus dem Dashboard. |
--interval | HOPPLA_INTERVAL | Nein | 60 | Meldeintervall in Sekunden. Erlaubte Werte: 30, 60 oder 120. |
Damit der Agent Neustarts übersteht, betreibe ihn als systemd-Dienst:
# /etc/systemd/system/hoppla-agent.service
[Unit]
Description=Hoppla Server Agent
After=network.target
[Service]
ExecStart=/usr/local/bin/hoppla-agent --token DEIN-AGENT-TOKEN
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.targetsudo systemctl daemon-reload
sudo systemctl enable --now hoppla-agentDer Agent meldet sich bei Hoppla an und beginnt sofort mit der Übermittlung von Metriken.
Logdateien
Der Agent kann auch Logs von Webserver und Anwendung lesen. Welche Dateien er lesen darf, entscheidet der Server selbst, nicht das Dashboard: Eine im Dashboard eingerichtete Log-Quelle wählt nur unter den Dateien aus, die der Server erlaubt.
- Alles unter
/var/log/ist standardmäßig erlaubt. - Weitere Dateien erlaubst du mit einem absoluten Pfad oder Glob pro Zeile in einer Datei unter
/etc/monitor-agent/log-paths.d/oder inMONITOR_AGENT_LOG_PATHS(getrennt durch:). Ein/**am Ende erlaubt alles unterhalb eines Verzeichnisses.
# /etc/monitor-agent/log-paths.d/app
/srv/app/storage/logs/*.log
/home/deploy/sites/shop/logs/**Der Agent liest nur reguläre Dateien. Einem Symlink folgt er nur, wenn auch die Datei, auf die er zeigt, erlaubt ist. Eine abgelehnte Datei erscheint im Dashboard als fehlerhafte Log-Quelle, mit Begründung. Lass den Agenten als unprivilegierten Benutzer laufen, wie in der Service-Datei oben; gib ihm Lesezugriff auf ein Log über die Gruppe der Datei, nie, indem du ihn als root startest.
Überwachte Metriken
Der Agent erfasst und meldet folgende Systemmetriken:
| Metrik | Beschreibung | Einheit |
|---|---|---|
| CPU-Auslastung | Aktuelle CPU-Nutzung | Prozent (%) |
| Arbeitsspeicher-Auslastung | RAM-Nutzung | Prozent (%) |
| Festplattenauslastung | Dateisystem-Nutzung (pro Mountpoint) | Prozent (%) |
| Load Average | Systemlast (1m, 5m, 15m) | Numerisch |
Jede Meldung enthält außerdem den Hostnamen, den Namen des Betriebssystems und die Agent-Version -- so kannst du deine Server auf einen Blick auseinanderhalten.
Die Metriken werden auf der Detailseite des Agent-Monitors mit historischen Diagrammen angezeigt. So erkennst du Trends und Kapazitätsprobleme auf einen Blick.
Schwellenwerte
Leg Warn- und kritische Schwellenwerte für jede Metrik fest, damit du informiert wirst, bevor Probleme eskalieren.
| Metrik | Warn-Standard | Fehler-Standard |
|---|---|---|
| CPU-Auslastung | 70% | 90% |
| Arbeitsspeicher-Auslastung | 80% | 95% |
| Festplattenauslastung | 80% | 95% |
| Load Average | 2.0 pro Kern | 5.0 pro Kern |
Du kannst diese Werte pro Monitor im Dashboard unter den Monitor-Einstellungen anpassen.
Alarme
Agent-Monitore erzeugen zwei Arten von Alarmen:
Ressourcen-Warnungen
Wenn eine Metrik den konfigurierten Schwellenwert überschreitet, löst Hoppla ein Server Resources-Warnereignis aus. Du bekommst eine Benachrichtigung mit Details dazu, welche Metrik erhöht ist und wo der aktuelle Wert liegt.
Sobald die Metrik wieder unter den Schwellenwert fällt, hebt Hoppla die Warnung automatisch auf.
Heartbeat-Ausfälle
Wenn der Agent keine Heartbeats mehr schickt (Server abgestürzt, Netzwerk weg, Agent-Prozess gestoppt), legt Hoppla nach der konfigurierten Karenzzeit einen Vorfall an. Das funktioniert genau wie bei Cron-Monitoren.
Der Vorfall löst sich automatisch, sobald der Agent wieder Heartbeats sendet.