Zum Inhalt springen

Audit-Log

„Wer hat eigentlich die PHP-Version geändert?“ - das Audit-Log weiß es. Unter Einstellungen → Audit-Log hält Envoryx Anmeldungen fest, jede Änderung an einem Projekt, Backups, Datenbank-Operationen, Befehle über die API, SSH oder ein Terminal, und Einstellungen. Jedes Projekt hat außerdem seinen eigenen Ausschnitt davon unter Verlauf.

Das Audit-Log mit Filtern für Text, Benutzer, Kategorie und Datum, dem Export als CSV und JSON Lines und einer Liste der letzten EinträgeDas Audit-Log mit Filtern für Text, Benutzer, Kategorie und Datum, dem Export als CSV und JSON Lines und einer Liste der letzten Einträge

Du kannst nach Text filtern (gesucht wird in Aktion, Benutzer, Projekt, Adresse und Details), nach Benutzer - die API-Tokens des Kontos zählen dazu -, nach Kategorie und nach Datum. Ältere Einträge laden blättert weiter zurück, und ein Klick auf einen Benutzer zeigt nur, was er getan hat.

Öffne einen Eintrag, um alles zu sehen, was er aufgezeichnet hat. Bei einer Projektänderung ist das der spannende Teil: jede Einstellung mit ihrem Wert vorher und nachher, egal ob PHP-Version, Dienste, Document Root, Variablen oder Worker. Geheime Werte tauchen nie auf - du siehst nur, dass ein Secret hinzugefügt oder entfernt wurde.

Jeder Eintrag behält außerdem den Namen dessen, worum es geht, also Projekt, Benutzer oder Token. So liest er sich auch dann noch richtig, wenn das Projekt oder Konto längst weg ist. Einträge von vor Envoryx 0.20 haben den Namen nicht gespeichert; sie zeigen ihn, solange es das Ziel noch gibt.

Auch wer etwas getan hat, steht klar da. Änderungen mit einem Token erscheinen als benutzer (token: name), was Envoryx von selbst gemacht hat, als Envoryx (automatisch), und Befehle des Wiederherstellungswerkzeugs envoryx admin als cli. Wird der Secret Key ersetzt, steht das als settings.secret_key_rotated mit alter und neuer Schlüssel-ID drin, auch wenn es beim Start passiert (ENVORYX_SECRET_KEY_OLD oder der Wechsel von der Schlüsseldatei zur Variable); so ein Eintrag trägt atStart in seinen Details.

CSV und JSON Lines exportieren genau die Einträge, die deine Filter zeigen - also erst filtern, dann exportieren. Über die API sieht das so aus:

Terminal-Fenster
curl -H "Authorization: Bearer stq_…" \
"https://envoryx.test/api/v1/audit/export?format=csv&action=project.&since=2026-09-01"

GET /api/v1/audit und der Export nehmen dieselben Parameter: q, user, action (ein Präfix, wiederholbar), project, since, until, after, limit. Zellen, die eine Tabellenkalkulation als Formel behandeln würde, bekommen ein ' vorangestellt - beim Öffnen der CSV kann also nichts ausgeführt werden.

Die Kommandozeile hat dieselben Filter:

Terminal-Fenster
envoryx audit --project shop --action backup. --since 2026-10-01
envoryx audit --user stefan --export csv -o audit.csv

Standardmäßig bleibt das Log für immer. Unter Aufbewahrung kannst du das auf 30 Tage bis zwei Jahre verkürzen; ältere Einträge löscht Envoryx dann stündlich.