Logging, Metrics, and Distributed Tracing

Logs explain events; metrics explain trends; traces explain request flow across services.

logger.info("Order completed: orderId={}, durationMs={}",
            orderId, durationMs);

Useful production metrics include request rate, error rate, latency, saturation, queue depth, database pool usage, and JVM/GC health. Observability data itself should be treated as sensitive.

Key Takeaways
  • Use logs, metrics, and traces together.
  • Correlation IDs make distributed debugging easier.
  • Observability data must be treated as sensitive production data.