Skip to content

[Initiative] Tracing (WIP)

Zielsetzung

Diese Initiative verfolgt das Ziel, ein durchgängiges, systemübergreifendes Tracing in FIT-Connect zu etablieren. Dadurch sollen technische Zusammenhänge und Fehlerursachen innerhalb verteilter Systeme transparent nachvollzogen und schneller analysiert werden können. Dieses Issue dient als Initiative und Übersicht für alle nachgelagerten Maßnahmen.

Motivation

In komplexen, verteilten Systemen reichen klassische Logs und Metriken oft nicht aus, um systemübergreifende Fehlerursachen zu identifizieren oder Performance-Probleme einzugrenzen. Tracing schließt diese Lücke:

  • Verfolgt End-to-End den Weg einzelner Anfragen
  • Macht Abhängigkeiten und Flaschenhälse zwischen Diensten sichtbar
  • Unterstützt Fehleranalyse und Performanceoptimierung

Ein solches Tracing ist essenziell für Entwicklung, Betrieb und Support. Voraussetzung ist jedoch eine flächendeckende und konsistente Instrumentierung – andernfalls entstehen „blinde Flecken“.

Umfang der Initiative

  • Technologiebewertung und Auswahl von Trace-Backend & Frontend (z. B. Grafana Tempo, Jaeger, Zipkin etc.)
  • Festlegung auf ein Standardprotokoll (OpenTelemetry oder Alternative)
  • Instrumentierung zentraler FIT-Connect-Komponenten:
    • Zustelldienst (ZSD)
    • Token Validator
    • SSP
    • Authentifizierungsdienst (Connect2ID)
    • ggf. weitere Systeme (Keycloak, ZBP Adapter etc.)
  • Sichtbare, nutzbare Visualisierung der Traces
  • Verknüpfung von Traces, Metriken und Logs zur Maximierung des Nutzens

Ein erster Proof-of-Concept wurde bereits erfolgreich umgesetzt und bildet die Grundlage für den Rollout.

Erwarteter Nutzen

  • Erhöhte Transparenz in komplexen Systemlandschaften
  • Schnellere Fehlersuche und fundierte Analyse
  • Effizienterer Betrieb und zielgerichteter Support
  • Technische Basis für Monitoring, Alerting und Qualitätssicherung

Übersicht der zugehörigen Epics und Stories

Ticket-ID Titel Beschreibung
#2389 [Epic] Einführung von Tracing für Auth- und Service-Stack Zur besseren Überwachung und Fehleranalyse unserer Anwendungen wollen wir übergreifendes Tracing einführen.
#2778 (closed) [Story] Tracing: Infrastruktur aufsetzen Nachdem in #2769 (closed) ein Stack ausgewählt bzw. Grafana Tempo bestätigt wurde, gilt es, diesen Stack in den Umgebungen aufzusetzen.
#2769 (closed) [Story] Tracing: Trace DB und Frontend auswählen Wir wollen Tracing (höchst wahrscheinlich auf Basis von OpenTelemetry) für FIT-Connect einführen. Dazu gilt es einen Tech Stack für die dazugehörige Infrastruktur auswählen.
#2777 (closed) [Story] Tracing: OAuth Server (Connect2ID) instrumentieren Zur Umsetzung von #2389 soll der OAuth-Server (Connect2ID) instrumentiert werden.
#2776 (closed) [Story] Tracing: token-validator instrumentieren Zur Umsetzung von #2389 soll der token-validator instrumentiert werden.
#2774 (closed) [Story] Tracing: ZSD instrumentieren Zur Umsetzung von #2389 soll der Zustelldienst mittels https://docs.micrometer.io/tracing/reference/ instrumentiert werden.
#2775 [Story] Tracing: SSP instrumentieren Zur Umsetzung von #2389 soll das SSP mittels https://docs.micrometer.io/tracing/reference/ instrumentiert werden.
Edited by Maik Böttner