Skip to content

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:

  1. Gehe zu Monitore und klick auf Agent-Monitor hinzufügen.
  2. 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:

bash
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-TOKEN

Go-Binary ​

Eine einzelne statische Binary -- ohne Laufzeitabhängigkeiten. Der Installer lädt die passende Version für deine Plattform:

bash
curl -sSL https://releases.hoppla.dev/agent/install.sh | sh
hoppla-agent --token DEIN-AGENT-TOKEN

PHP-Probe ​

Ein PHP-Skript zum Reinkopieren für Server, auf denen ohnehin PHP läuft. Praktisch bei Shared- oder PHP-lastigem Hosting:

bash
curl -sSL https://releases.hoppla.dev/agent/hoppla-probe.php -o hoppla-probe.php
php hoppla-probe.php --token DEIN-AGENT-TOKEN

WordPress-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):

ParameterUmgebungsvariablePflichtStandardBeschreibung
--tokenHOPPLA_TOKENJa--Dein Agent-Token aus dem Dashboard.
--intervalHOPPLA_INTERVALNein60Meldeintervall in Sekunden. Erlaubte Werte: 30, 60 oder 120.

Damit der Agent Neustarts übersteht, betreibe ihn als systemd-Dienst:

ini
# /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.target
bash
sudo systemctl daemon-reload
sudo systemctl enable --now hoppla-agent

Der 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 in MONITOR_AGENT_LOG_PATHS (getrennt durch :). Ein /** am Ende erlaubt alles unterhalb eines Verzeichnisses.
text
# /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:

MetrikBeschreibungEinheit
CPU-AuslastungAktuelle CPU-NutzungProzent (%)
Arbeitsspeicher-AuslastungRAM-NutzungProzent (%)
FestplattenauslastungDateisystem-Nutzung (pro Mountpoint)Prozent (%)
Load AverageSystemlast (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.

MetrikWarn-StandardFehler-Standard
CPU-Auslastung70%90%
Arbeitsspeicher-Auslastung80%95%
Festplattenauslastung80%95%
Load Average2.0 pro Kern5.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.

Last updated: