ObjectOS
Betrieb

Observability

Logs, Request-IDs, Metriken, Fehler, Sitzungen und Audit-Logs.

Observability

Der Betrieb von ObjectOS benötigt sowohl Infrastruktursignale als auch Anwendungssignale. Das Framework stellt Request-ID-, Metrik-, Error-Reporter- und Audit-Primitive bereit; das Deployment entscheidet, wohin diese exportiert werden.

Request-Identität

Jedes Produktions-Deployment sollte eine Request-ID weiterleiten oder erzeugen:

X-Request-Id

Verwenden Sie sie, um Folgendes zu korrelieren:

  • Ingress-Logs;
  • ObjectOS-Logs;
  • langsame Datenbankabfragen;
  • Fehlerberichte;
  • Support-Tickets von Kunden.

Metriken und Fehler

Die Runtime stellt austauschbare Schnittstellen für Metriken und Error-Reporter bereit. Verbinden Sie diese mit dem vom Kunden gewählten System, etwa Prometheus, OpenTelemetry, Datadog, Sentry oder einem anderen genehmigten Backend.

Erfassen Sie mindestens:

SignalWarum
Anzahl der Requests nach Route/StatusFehlerspitzen erkennen
Request-DauerLatenzregressionen erkennen
5xx-FehlerBei Runtime-Fehlern alarmieren
AuthentifizierungsfehlerKonfigurations- oder Angriffsmuster erkennen
Artifact-/Kernel-Cache-MissesCold-Start-Verhalten verstehen

Minimales Prometheus-Beispiel

ObjectOS stellt einen Prometheus-kompatiblen Metrik-Endpunkt bereit, wenn der Metrik-Dienst aktiviert ist:

# prometheus.yml
scrape_configs:
  - job_name: objectos
    metrics_path: /metrics
    static_configs:
      - targets: ['objectos:3000']

Nützliche Start-Alerts:

groups:
  - name: objectos
    rules:
      - alert: ObjectOS5xxSpike
        expr: |
          sum(rate(http_requests_total{status=~"5.."}[5m]))
            / sum(rate(http_requests_total[5m])) > 0.02
        for: 5m
        annotations:
          summary: "ObjectOS 5xx rate above 2% for 5 minutes"

      - alert: ObjectOSAuthFailureSpike
        expr: rate(auth_failures_total[5m]) > 5
        for: 10m
        annotations:
          summary: "Sustained auth failure rate — check for misconfiguration or attack"

      - alert: ObjectOSKernelColdStartHigh
        expr: rate(kernel_cache_misses_total[15m]) > 1
        for: 15m
        annotations:
          summary: "Frequent project kernel cold starts — consider raising OS_KERNEL_CACHE_SIZE"

Für OpenTelemetry setzen Sie OS_OBS_EXPORTER=otlp und OS_OTLP_ENDPOINT (z. B. https://<collector>/otlp), und ObjectOS gibt Traces und Metriken im OTLP-Format aus. Der Exporter ist standardmäßig noop (keine Laufzeitkosten), also ist der OTLP-Export opt-in — wird ein Endpunkt ohne OS_OBS_EXPORTER=otlp gesetzt, wird nichts ausgegeben. Verwenden Sie OS_OBS_EXPORTER=console oder json für lokales Debugging und OS_OBS_DEPLOYMENT_ENV, um das Deployment zu kennzeichnen (Standard production). Die Struktur der Spans entspricht dem Request-Ablauf.

Audit-Logs

Wenn die Audit-Funktion aktiviert ist, schreibt ObjectOS Audit-Datensätze nach sys_audit_log.

Verwenden Sie Audit-Logs für:

  • berechtigungsrelevante Änderungen;
  • Einstellungsänderungen;
  • Untersuchungen von Benutzern/Sitzungen;
  • Integrationsaktivität;
  • Analyse verweigerter Zugriffe.

Machen Sie in regulierten Umgebungen die Audit-Tabelle auf Datenbank- oder Speicherebene append-only und definieren Sie eine Aufbewahrungsrichtlinie.

Console-Diagnose

Die Console stellt operative Oberflächen bereit, etwa:

  • Sessions;
  • Audit Logs;
  • Notifications;
  • Webhook Deliveries, wenn Webhooks aktiviert sind;
  • Übersichts-Dashboards für System und Security.

Diese sind für Operatoren und Support-Ingenieure gedacht, nicht nur für Entwickler.

On this page