Zum Hauptinhalt springen

Systemprotokoll anzeigen (/ui/system/log/list)

Bildschirm zum Suchen und Prüfen der Systemprotokolle (Cassandra pe.app_system_log), die das Gateway beim Booten, während der Erfassung, der Kommunikation oder bei API-Aufrufen geschrieben hat.

Klick auf die rote Zahl in der Startseiten-Karte Systemfehler (heute) → automatischer Wechsel hierher (nur ERROR von heute), oder direkt über /ui/system/log/list.


1. Aufbau des Bildschirms

┌─────────┬──────────────────────────────────────────────────┐
│ 좌측 │ 우측 │
│ 검색폼 │ 로그 목록 (DataTables) │
│ │ │
│ [기간] │ ┌───────────┬───────┬──────────────────────────┐ │
│ [레벨] │ │ 시간 │ 레벨 │ 메세지 │ │
│ │ ├───────────┼───────┼──────────────────────────┤ │
│ [검색] │ │ ... │ INFO │ ... │ │
└─────────┴──────────────────────────────────────────────────┘

Standard-Suchzeitraum: letzte 30 Tage (00:00 – 23:59).


FeldBedeutungStandard
SuchzeitraumBereich YYYY-MM-DD HH:mm ~ YYYY-MM-DD HH:mm29 Tage vor heute 00:00 ~ heute 23:59
Level전체 / INFO / WARN / ERRORAlle
SchaltflächeFunktion
↻ Aktualisieren (oben auf der Seite)log.search() — erneute Abfrage mit den aktuellen Formularwerten
🔍 Suchen (blaue Schaltfläche, rechts unten im linken Panel)log.search() — ruft /system/log/search mit den Formularwerten auf

Das linke Formular besteht nur aus zwei Feldern — Suchzeitraum (Date-Range-Picker) und Level (Combo) — und nutzt dieselben Label- und abgerundeten Formularelemente im pp-cell-pill-Stil wie die übrigen Suchmasken (/ui/connect/list, /ui/point).


3. Rechts — Protokollliste (DataTables)

#SpalteAnzeige
1Zeittimestamp.iso (bis ms) — zentriert, standardmäßig absteigend (neueste oben)
2LevelAbgerundetes Kapsel-Badge (border-radius: 5px) — 🟦 INFO (blau, solid) / 🟧 WARN (orange, solid) / 🟥 ERROR (rot, solid). Gleicher Stil wie pp-cell-pill auf anderen Seiten, z. B. /ui/connect/list
3MeldungProtokolltext (lange Meldungen mit automatischem Zeilenumbruch, Klick klappt sie auf)

Seitengröße: 10 / 20 / 50 / 100 / 1000 wählbar (Standard 100).

Aktionen rechts

SchaltflächeFunktion
↻ Aktualisierenlog.list()
🗑 Alle löschenlog.truncate() — Bestätigungsdialog → vollständige Löschung (pe.app_system_log truncate). Nicht rückgängig zu machen

4. Häufig auftretende Muster

Meldung / LevelBedeutung / nächste Maßnahme
ERROR [PLCDriverConnector] connection failed ...PLC-Verbindung fehlgeschlagen. IP/Port/Firewall prüfen
ERROR [PLCValueReader] read failed at TAG_*Adresse bzw. Datentyp (format) dieses Tags überprüfen
WARN [SchedulerStartListener] startup race detectedSehr seltene Race-Condition beim Start — restart.sh erneut ausführen
INFO [TAG_WRITE] OK opc_id=... tag_id=... value=... user_agent=... remote_ip=...Normaler Schreibvorgang protokolliert — für Audit. remote_ip ist standardmäßig RemoteAddr, bei aktiviertem Reverse-Proxy-Opt-in die erste IP aus X-Forwarded-For
INFO [API_ACCESS] method=GET path=/api/v1/... status=200 ...Einzeiliges Audit eines REST-API-Aufrufs (ApiAccessLogFilter) — enthält alle /api/*-Aufrufe. Der apikey wird auf 4 Zeichen Präfix + Länge maskiert
WARN [API_ACCESS] ... status=401 auth=noneAufruf mit fehlgeschlagener Authentifizierung — Schlüssel fehlt
WARN [API_ACCESS] ... status=401 auth=deprecated_queryVersuch der nicht mehr unterstützten Authentifizierung per ?api_key=-Query — Umstellung auf Header/Bearer erforderlich
ERROR [Cassandra*] timeout / coordinator overloadDB-Last / Festplatte / Heap prüfen. node-info.sh
INFO [SparkPlugSession] NBIRTH publish complete seq=0Normaler Sparkplug-Neustart
INFO [SparkPlugSession] DBIRTH publish complete devices=NSparkplug Device Birth — N OPC haben Birth publiziert

5. Datenquelle / aufgerufene API

AktionAPI
SucheGET /system/log/search (Query: s_date_range, level, ...)
Alle löschenPOST /system/log/truncate

Interne Speicherung: Cassandra-Tabelle pe.app_system_log. TTL separat konfigurierbar (system.log.ttl.days in app.properties).


6. Häufige Stolperfallen

SymptomUrsache / Lösung
Suchergebnis leerAußerhalb des Standardbereichs von 30 Tagen / durch Level-Filter ausgeblendet. Zeitraum auf 1 Jahr, Level auf Alle setzen
Bildschirm durch zu viele Protokolle trägeSeitengröße von 100 auf 20 reduzieren oder Level auf ERROR einschränken
Anzahl der ERROR weicht von der Zahl in der Karte Systemfehler (heute) abDie Karte zeigt ab heute 00:00, diese Suche den vom Benutzer gewählten Zeitraum
Statistik nach Alle löschen auf 0Normal — bleibt leer, bis neue ERROR eintreffen
Zu lange Protokollaufbewahrung belastet die Festplattesystem.log.ttl.days verkürzen / Kombination aus clean.sh und node-cleanup.sh

7. Weiterführend