Hire Me
Interactive Demo

Spring Boot Observability

OpenTelemetry · Micrometer · Logback MDC · Jaeger · Prometheus · Loki Watch traces, metrics, and logs update in real time · Click Inject Error to trigger a failure

Requests flow Client → API Gateway → Order Service → Inventory — traces, metrics, and logs update on every hop

Distributed Traces Jaeger · OpenTelemetry
Live Metrics Micrometer · Prometheus
Structured Logs Logback · MDC · Loki
Spring Boot 3.4 · Java 21 · OpenTelemetry · Micrometer · Prometheus
Distributed Tracing

Every request gets a unique traceId propagated as a W3C traceparent header. OpenTelemetry auto-instrumentation captures a span for each service hop, HTTP client call, and database query — providing the full request waterfall without any manual annotation code.

Custom Metrics

Micrometer exposes Prometheus-compatible metrics from each service: request rate, error rate, JVM heap, thread pool saturation, and business metrics like order throughput. Prometheus scrapes every 15 seconds; Grafana dashboards page on SLO breach.

Structured Logging

All services emit structured JSON (Logback + LogstashEncoder) with traceId and spanId injected via MDC on every log line. One traceId search in Loki returns both the span waterfall and every log line the request produced — across all three services simultaneously.

The three pillars of observability — all correlated by traceId.  ·  See the CI/CD pipeline that deploys this →  ·  Need this built?