Skip to content

P2: Sentry als echtes Dauergeraet — Log-Rotation, Liveness-Probe, Kuma-Alarm, Reboot-Beweis #77

Description

@munirad7s

Mission

Der Server ist ein vollwertiges Dauergerät der Führungszentrale: Sentry auf adas-hetzner läuft überwacht, mit Log-Rotation, Restart-Beweis und einem Kuma-Monitor, der Alarm schlägt, wenn der Agent stumm wird — statt still auszufallen.

Money-Link

Ein Dauer-Agent, der unbemerkt tot ist, ist schlimmer als keiner: Aufträge verschwinden, und niemand merkt es. Der Server ist das einzige Gerät, das zugeklappte Laptops überlebt — er trägt künftig die Rituale (#10) und die Cross-Maschinen-Aufträge (#22). Seine Verfügbarkeit ist damit direkt die Verfügbarkeit der Führungszentrale.

Kontext

Vorflug-Check (nach Claim, vor Arbeit)

  1. systemctl is-active buzz-sentry grün und Agent antwortet auf eine echte Mention? Sonst zuerst reparieren.
  2. Läuft gerade ein anderer Agent auf dem Server? Dann warten.
  3. Aktuelle Log-Größe und Disk-Situation prüfen (df -h / stand bei 84 %).

Auftrag

  1. Log-Rotation für /opt/buzz-agents/logs/*.log einrichten (logrotate, täglich, copytruncate, ≥7 Tage, komprimiert) — append:-Ziele vertragen kein Umbenennen ohne copytruncate.
  2. Liveness-Probe, die den ganzen Pfad misst, nicht nur den Prozess: ein kleines Script postet periodisch (z. B. alle 15 min) eine Mention an Sentry in einem Diagnose-Kanal und prüft, ob innerhalb von N Minuten eine Antwort desselben Agenten erscheint. Ergebnis in eine Statusdatei/Push-Monitor schreiben.
  3. Uptime-Kuma-Monitor auf diese Probe hängen (Push-Monitor), gleiche Benachrichtigung wie die bestehenden Monitore. Der Monitor muss rot werden können — mit gestopptem Agenten beweisen.
  4. Reboot-Beweis: Server-Neustart planen oder systemctl sauber simulieren (systemctl stopstart) UND einen echten Reboot-Nachweis erbringen, dass der Agent ohne Zutun wiederkommt und wieder auf Mentions antwortet.
  5. Modell-Ausfall abfedern: dokumentieren (und wenn möglich automatisieren), wie auf ein Ersatzmodell gewechselt wird, wenn der Provider 429/404 liefert. Mindestens: Fehlermuster im Log als eigene Kuma-Bedingung oder als klarer Troubleshooting-Eintrag.
  6. .empire/ONBOARDING.md §7 um die neuen Symptom→Fix-Zeilen ergänzen.

Nicht-Ziele / Guardrails

  • Keine Umbauten am Relay-Stack, an Traefik oder an fremden Containern.
  • Keine zusätzlichen Secrets auf den Server legen, die dort nicht gebraucht werden.
  • Kein Alerting-Kanal, der Munir bei jedem Provider-Schluckauf weckt — Schwellen so setzen, dass nur echte Stille alarmiert.
  • Der Agent selbst darf durch die Probe keine GATED-Aktionen ausführen; die Probe ist ein interner Kanal-Post (FREI).

Verifikation (Befehle + erwartete Ausgabe)

# Befehl/Aktion Erwartung
1 logrotate -d auf die neue Regel rotiert /opt/buzz-agents/logs/sentry.log mit copytruncate, keine Fehler
2 Probe manuell auslösen Antwort von Sentry im Diagnose-Kanal, Statusdatei/Push wird grün
3 systemctl stop buzz-sentry, Probe erneut Monitor wird rot, Alarm geht raus — Detektor kann rot werden
4 systemctl start buzz-sentry, Probe erneut Monitor wieder grün
5 echter Reboot des Servers Agent kommt selbständig online (connected to relay, subscribed to channel) und beantwortet eine Mention
6 Log nach der Rotation alte Datei komprimiert vorhanden, laufender Prozess schreibt weiter (kein abgerissenes Log)

Definition of Done

  • Log-Rotation aktiv und geprüft
  • Liveness-Probe + Kuma-Monitor aktiv, rot-Probe gemessen
  • Reboot-Beweis erbracht
  • .empire/ONBOARDING.md ergänzt, via PR gemerged
  • Issue mit Ergebnis-Kommentar geschlossen

Folge-Arbeit (Gardener-Kandidaten)

Rechte

Chrome-MCP, Windows-MCP, Playwright, n8n-MCP, ~/.secrets/** — ohne Rückfrage. Blocker → blocker-mail.sh + Label blocked-munir + weiter.

Format v2 · buzz_empire 2026-08-01

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Mittlere Priophase-1Connect: Kanaele via MCP

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions