Zum Inhalt

Informationsverwaltung

Versionen, Audit-Log, Protokolle und Lizenzhinweise in calServer V2.


Uebersicht

Unter Administration > Diagnose (/v2/admin/info) liegen fuenf Reiter. Jeder Reiter erscheint nur, wenn die zugehoerige Operation vergeben ist:

Reiter Inhalt Operation
Informationen Versionen von calServer, API, Frontend und Backend user_management_view
Audit-Log Audit-Trail des Systems, siehe Audit-Trail user_management_view
System Log Protokoll aus der Datenbank information_view
Anwendungslog Laravel-Logdateien information_view
Lizenzen Lizenzhinweise der ausgelieferten Fremdkomponenten information_view

Versionsinformationen

Der Reiter Informationen zeigt:

Angabe Inhalt
Anwendung calServer-Version
API-Version Version der REST-API v2
Frontend Nuxt- und PrimeVue-Version
Backend Laravel- und PHP-Version

Dieselben Angaben liefert GET /api/v2/app/version ohne Anmeldung.

Systemdaten ueber die API

Weitere Systemdaten zeigt die Oberflaeche nicht an. Sie stehen ueber die API bereit und verlangen die Operation information_view:

Endpunkt Liefert
GET /api/v2/admin/information/system PHP- und Laravel-Version, Webserver, Betriebssystem, Grenzen fuer Upload, POST und Speicher
GET /api/v2/admin/information/database-size Name und Groesse der Datenbank
GET /api/v2/admin/information/dms-size Pfad und Groesse des DMS-Speichers
GET /api/v2/admin/information/app-size Pfad und Groesse der Anwendungsdateien

Einen Ueberblick ueber die Laufzeitumgebung gibt auf dem Server:

docker exec calserver-api-v2 php artisan about

Health-Check

Der Health-Check-Endpoint liefert ohne Anmeldung eine maschinenlesbare Statuspruefung:

GET /api/v2/health
{
    "status": "healthy",
    "services": {
        "database": "up",
        "database_error": null,
        "php_version": "8.3.x",
        "laravel_version": "13.x"
    },
    "meta": {
        "api_version": "2.0.0",
        "timestamp": "2026-09-28T12:00:00+02:00"
    }
}

Ist die Datenbank nicht erreichbar, antwortet der Endpoint mit HTTP 503, "status": "degraded" und "database": "down"; database_error nennt dann den Grund.

Protokolle

Die Seite Administration > Diagnose fuehrt zwei Protokolle, die verschiedene Dinge zeigen:

Reiter Quelle Enthaelt
System Log Tabelle log in der Datenbank Meldungen von V1 (Yii) und V2 (API) gemeinsam; die Spalte „Quelle" trennt sie
Anwendungslog Laravel-Logdatei (storage/logs/*.log) Zusaetzlich Klasse, Datei, Zeile und Stacktrace einer Ausnahme sowie die Zugriffszeilen der API

Protokolle leeren

Beide Protokolle lassen sich in der Oberflaeche leeren. Das verlangt die Operation log_delete — Ansehen (information_view) genuegt nicht.

  • System Log: Einzelne Eintraege ueber das Papierkorb-Symbol, oder „Leeren" fuer alles, was den aktuell gesetzten Filtern entspricht (Level, Quelle, Kategorie, Zeitraum). Ohne Filter trifft es das gesamte Protokoll.
  • Anwendungslog: „Leeren" betrifft die gerade gewaehlte Datei; die Option „Alle Dateien leeren" nimmt auch die rotierten mit.

Die Dateien werden dabei auf 0 Byte gesetzt, nicht geloescht. Ein laufender Schreibvorgang haelt die Datei offen; ein Loeschen wuerde ihn in eine Datei ohne Namen weiterschreiben lassen, und das Protokoll bliebe scheinbar leer, bis der Prozess neu startet. Truncate erhaelt ausserdem Eigentuemer und Rechte der Datei.

Das Anwendungslog enthaelt personenbezogene Daten

Jede API-Zugriffszeile traegt die Client-IP des Aufrufers. Es gibt dafuer keine automatische Aufbewahrungsfrist — wer eine braucht, leert das Protokoll regelmaessig oder schaltet die Zugriffszeilen ganz ab (API_REQUEST_LOG=false, siehe config/logging.php).

Berechtigungen

Operation Erlaubt
information_view Systeminformationen, System Log, Anwendungslog und Lizenzhinweise ansehen
log_delete System Log leeren bzw. einzelne Eintraege loeschen, Anwendungslog-Dateien leeren

log_delete ist bewusst getrennt: Wer ein Problem sucht, braucht das Protokoll; wer es loescht, entfernt die Spur eines Vorgangs. Bestehende Rollen erhalten die Operation beim Update nicht automatisch — sie wird im Rollenmanagement vergeben.

Regelmaessige Pruefung

Pruefen Sie die Protokolle regelmaessig, um Probleme fruehzeitig zu erkennen.