# Keycloak can trace every login # Observability on Board — episode 03 # docs: https://www.keycloak.org/observability/tracing # page: https://observability-on-board.vercel.app/episodes/keycloak/ # video: https://youtube.com/shorts/7f6PlBkxQCY # # variants: ?ship=bronto|collector|custom ®ion=us &dataset= # ?endpoint=&header=&value= (custom target) # ── Bronto ────────────────────────────────── features=opentelemetry,opentelemetry-logs,opentelemetry-metrics tracing-enabled=true telemetry-logs-enabled=true metrics-enabled=true telemetry-metrics-enabled=true telemetry-protocol=http/protobuf # host only: Keycloak appends /v1/traces, /v1/logs, /v1/metrics itself telemetry-endpoint=https://ingestion.eu.bronto.io telemetry-header-x-bronto-api-key=${BRONTO_API_KEY} telemetry-service-name=sso # Keycloak fills ${BRONTO_API_KEY} from the environment at boot. # ── Local Collector ─────────────────────────────── features=opentelemetry,opentelemetry-logs,opentelemetry-metrics tracing-enabled=true telemetry-logs-enabled=true metrics-enabled=true telemetry-metrics-enabled=true telemetry-protocol=http/protobuf telemetry-endpoint=http://localhost:4318 # This assumes a Collector listening on localhost:4318; the # Local Collector setup (https://observability-on-board.vercel.app/setup/#collector) shows how to start one. From Docker, use # http://host.docker.internal:4318. # ── Your endpoint ────────────────────────────────── # This uses the endpoint and auth header you saved in the # setup guide (https://observability-on-board.vercel.app/setup/#custom). features=opentelemetry,opentelemetry-logs,opentelemetry-metrics tracing-enabled=true telemetry-logs-enabled=true metrics-enabled=true telemetry-metrics-enabled=true telemetry-protocol=http/protobuf # host only: Keycloak appends /v1/traces, /v1/logs, /v1/metrics itself telemetry-endpoint=YOUR_OTLP_ENDPOINT telemetry-header-YOUR_AUTH_HEADER=YOUR_AUTH_VALUE