docs: finalize and verify Zipkin integration in system hardening roadmap
Marked Zipkin integration tasks as completed and verified in archived roadmaps. Documented fixes for gateway propagation type (`w3c` → `b3`) and Zipkin endpoint configuration. Removed redundant dependencies in `build.gradle.kts` and updated related session logs. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
@@ -46,7 +46,8 @@ Implementierung des ersten vertikalen Durchstichs.
|
||||
- [ ] **Ping Service:** Implementierung von `:backend:services:ping:ping-service` mit Spring Boot 3.5.9.
|
||||
- [ ] **Security:** Integration von OAuth2 Resource Server (Keycloak) und Absicherung des `/secure` Endpoints.
|
||||
- [ ] **Discovery:** Registrierung bei Consul.
|
||||
- [ ] **Observability:** Tracing mit Zipkin und Metrics mit Prometheus aktivieren.
|
||||
- [x] **Observability:** Tracing mit Zipkin und Metrics mit Prometheus aktivieren. _(verifiziert 2026-03-09:
|
||||
monitoring-client Bundle + Gateway B3-Fix)_
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -52,9 +52,11 @@ last_update: 2026-03-09
|
||||
- `post.logout.redirect.uris` für alle Clients konfiguriert.
|
||||
|
||||
### 2.2 Observability
|
||||
- [ ] **Zipkin Integration:** _(offen — Priorität: technische Stabilisierung)_
|
||||
- Prüfen, ob Traces vom Gateway bis zur DB durchgereicht werden.
|
||||
- Ggf. `micrometer-tracing-bridge-brave` konfigurieren.
|
||||
|
||||
- [x] **Zipkin Integration:** _(verifiziert 2026-03-09)_
|
||||
- `monitoring-client`-Bundle enthält alle nötigen Dependencies (bridge-brave, reporter-brave, sender-okhttp3).
|
||||
- `dc-backend.yaml` setzt `MANAGEMENT_ZIPKIN_TRACING_ENDPOINT=http://zipkin:9411/api/v2/spans` für alle Services.
|
||||
- Gateway-Fix: `propagation.type` von `w3c` auf `b3` korrigiert; Zipkin-Endpoint explizit ergänzt.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -46,8 +46,35 @@ Sicherheitseinstellungen auf einen produktionsreifen Stand gebracht.
|
||||
Verifiziert: `micrometer = "1.16.1"` und `micrometerTracing = "1.6.1"` waren bereits korrekt in
|
||||
`gradle/libs.versions.toml` gesetzt — kein Code-Change erforderlich. Archiv-Roadmaps entsprechend abgehakt.
|
||||
|
||||
## ✅ Zipkin Integration (2026-03-09, gleiche Session)
|
||||
|
||||
Analyse ergab: Infrastruktur war bereits zu ~90% korrekt aufgebaut. Einzige Lücke war eine falsche
|
||||
Propagation-Konfiguration im Gateway.
|
||||
|
||||
### Befund
|
||||
|
||||
- `dc-infra.yaml`: Zipkin-Container (`openzipkin/zipkin:3`, Port 9411) bereits vorhanden.
|
||||
- `monitoring-client`-Bundle: enthält `micrometer-tracing-bridge-brave`, `zipkin-reporter-brave`,
|
||||
`zipkin-sender-okhttp3` — von allen Services eingebunden.
|
||||
- `monitoring-defaults.properties`: setzt `management.zipkin.tracing.endpoint=http://localhost:9411/api/v2/spans`
|
||||
als Default, überschreibbar via `MANAGEMENT_ZIPKIN_TRACING_ENDPOINT`.
|
||||
- `dc-backend.yaml`: setzt `MANAGEMENT_ZIPKIN_TRACING_ENDPOINT=http://zipkin:9411/api/v2/spans` für alle
|
||||
Services inkl. Gateway.
|
||||
|
||||
### Fix: Gateway `application.yaml`
|
||||
|
||||
- **`management.tracing.propagation.type`**: `w3c` → `b3`
|
||||
(B3 ist das native Format von Brave/Zipkin; W3C wäre für OpenTelemetry — Mismatch hätte
|
||||
Trace-Korrelation zwischen Gateway und Services gebrochen).
|
||||
- **`management.zipkin.tracing.endpoint`**: Explizit mit lokalem Default + ENV-Override ergänzt.
|
||||
- **`TRACING_SAMPLING_PROBABILITY`**: Konsistent mit Services via ENV-Variable.
|
||||
|
||||
### Fix: Gateway `build.gradle.kts`
|
||||
|
||||
- Redundante direkte `micrometer-tracing-bridge-brave`-Dependency entfernt
|
||||
(bereits transitiv via `monitoring-client` vorhanden).
|
||||
|
||||
## 🔜 Nächste Schritte
|
||||
|
||||
- **Zipkin Integration** — Tracing vom Gateway bis zur DB aktivieren.
|
||||
- **OIDC Client im Frontend** — Login-Flow mit `ktor-client-auth` und `frontend-client` implementieren.
|
||||
- **TLS/HTTPS** — Langfristig: `KC_HOSTNAME_STRICT_HTTPS=true` setzen, sobald TLS eingerichtet ist.
|
||||
|
||||
Reference in New Issue
Block a user