Observability architecture
ADR-0013 definisce lo stack base Prometheus, Grafana, Loki e Alertmanager. TASK-203 aggiunge il pilot di distributed tracing con Tempo e OpenTelemetry, senza cambiare il modello di esposizione: i servizi observability restano privati e Caddy e' l'unico ingresso HTTP pubblico controllato.
Tempo placement pilot
- Tempo gira come container nel
managementdocker-compose stack sul nodomgmt-01. - Le porte host sono bindate solo su loopback:
127.0.0.1:3200,127.0.0.1:4317e127.0.0.1:4318. - Il backend esporta trace OTLP gRPC via Docker network interno verso
http://tempo:4317. - Grafana legge Tempo dal datasource locale
http://127.0.0.1:3200. - Il browser invia trace OTLP HTTP a
mgmt.{app_domain}/otlp/v1/traces; Caddy rimuove il prefisso/otlpe inoltra a127.0.0.1:4318.
Future post-GA
TD-observability-consolidate: introdurre un roleobservabilitydedicato con compose separato per Prometheus, Loki, Grafana, Tempo e Alertmanager, quando lo stack cresce o serve separare app tier e observability tier.TD-api-public-domain: aggiungereapi.{app_domain}/otlp/*per tracing customer-facing, con autenticazione, rate limit e scope filter dedicati.