Zum Hauptinhalt springen
Health und Monitoring

Was Sie prüfen, was Sie beobachten und was die Probes Ihnen nicht verraten können.

Markdown

Probes​

EndpunktAntwortetVerwendung
GET /health/live200 {"status":"ok"}, solange der Prozess Anfragen bedientLiveness
GET /health/ready200 {"status":"ok"}, wenn PostgreSQL antwortet, sonst 503 {"status":"unavailable"}Readiness: Leiten Sie Datenverkehr erst weiter, wenn sie bereit ist
livenessProbe:
httpGet: { path: /health/live, port: 8080 }
readinessProbe:
httpGet: { path: /health/ready, port: 8080 }
timeoutSeconds: 5

Setzen Sie timeoutSeconds bei der Readiness-Probe. Wenn PostgreSQL Verbindungen annimmt, aber nicht mehr antwortet, kann die Prüfung deutlich länger warten. Das Timeout sorgt dafür, dass die Probe fehlschlägt, statt zu hängen.

Was Readiness nicht prüft​

Readiness prüft nur die Datenbank. Sie prüft nicht, ob der Zugriffsschlüssel gültig ist oder ob Unico erreichbar ist. Ein falscher Zugriffsschlüssel zeigt sich als Fehler beim create, nicht als fehlgeschlagene Probe. Nehmen Sie eine echte create-Anfrage in Ihre Prüfungen nach dem Deployment auf.

Logs​

Logs sind JSON-Zeilen auf der Standardausgabe, mit timestamp, severity, service und message. Fehler, die einen gespeicherten Prozess betreffen, enthalten dessen id. Fehler des Aufrufers (400, 404, 409, 422) werden nicht protokolliert.

Ein gesunder Start protokolliert diese Zeilen in dieser Reihenfolge, zwischen den PostgreSQL-Verbindungsmeldungen (version und count des Katalogs ändern sich mit jedem Katalog-Release):

{"severity":"INFO","timestamp":"2026-11-03T14:02:11.482913407Z","message":"attribute catalog loaded","service":"human-plugin","version":"2026-10-29.1","count":53,"url":"https://human-token-assets.unico.app/attribute-catalog.json"}
{"severity":"INFO","timestamp":"2026-11-03T14:02:11.731050212Z","message":"database schema ready","service":"human-plugin"}
{"severity":"INFO","timestamp":"2026-11-03T14:02:11.733418901Z","message":"human plugin listening","service":"human-plugin","addr":":8080"}

Wann Sie alarmieren sollten​

  • Readiness schlägt fehl: Die Datenbank ist nicht erreichbar.
  • Wiederholte Antworten 503 DATABASE_UNAVAILABLE oder 502 UPSTREAM_UNAVAILABLE auf Aufrufe Ihres Back-Ends.
  • Container-Neustarts: Eine Neustart-Schleife deutet meist auf eine fehlende Einstellung, einen nicht erreichbaren Katalog oder ein Datenbankproblem hin. Das Log nennt die Ursache.
  • Log-Zeilen auf Fehlerebene, etwa creating process oder retrieving process.

Human Plugin exportiert keine Metriken. Nutzen Sie Ihr Gateway oder Service Mesh für Anfragerate und Latenz.