Practical Observability with Python

  • 21 January 2026
  • structured-logging-cover.webp

1: Structured Logging in Python using Loguru

What is structured logging in Python? Learn how to replace text logs with JSON-based structured logging using Loguru for production observability.

Read more 
  • 22 January 2026
  • context-propagation-cover.webp

2: Context Propagation

How do you propagate request context in Python async applications? Learn how to use ContextVars to keep request IDs consistent across async tasks and threads.

Read more 
  • 05 February 2026
  • opentelemetry-cover.webp

3: Automatic Tracing with OpenTelemetry

How do you set up OpenTelemetry tracing in Python? Learn three levels of instrumentation: zero-code, programmatic and manual, with Jaeger visualization.

Read more 
  • 06 February 2026
  • distributed-tracing-cover.webp

4: Distributed Tracing: Following a Request Across Services

How do you trace requests across microservices in Python? Learn distributed tracing with OpenTelemetry, W3C Trace Context and automatic context propagation.

Read more 
  • 07 February 2026
  • custom-metrics-cover.webp

5: Custom Metrics with OpenTelemetry

How do you add custom metrics with OpenTelemetry in Python? Learn to use Counters, Histograms and Gauges with Prometheus and Grafana for production monitoring.

Read more 
  • 19 March 2026
  • three-pillars-cover.webp

6: Correlating Telemetry Signals , The Pivot Workflow

How do you correlate logs, traces and metrics in OpenTelemetry? Learn the Pivot Workflow to drill from a Grafana dashboard spike to the exact log line that caused it.

Read more 
  • 19 March 2026
  • error-handling-cover.webp

7: Error Handling & Semantic Instrumentation

How do you record errors properly with OpenTelemetry in Python? Learn why try/except blocks hide failures from dashboards and how to make every error visible in traces and metrics.

Read more 
  • 20 March 2026
  • otel-collector-cover.webp

8.1: Why the OpenTelemetry Collector Exists

Why do you need the OpenTelemetry Collector? Learn the first-principles case for adding a Collector to your observability pipeline, with architecture diagrams and the 5-Why analysis.

Read more 
  • 20 March 2026
  • otel-collector-mvp-cover.webp

8.2: Building Your First OTel Collector Pipeline

How do you set up an OpenTelemetry Collector pipeline with Docker Compose? Step-by-step guide to configuring receivers, processors and exporters for Jaeger and Prometheus.

Read more 
  • 20 March 2026
  • otel-collector-prod-cover.webp

8.3: Operating the OTel Collector in Production

How do you deploy the OpenTelemetry Collector in production? Learn Agent vs Gateway topology, debugging tools, self-observability and production hardening strategies.

Read more 
  • 21 March 2026
  • sampling-pii-cover.webp

9: Sampling & PII Scrubbing

How do you sample traces and scrub PII with OpenTelemetry? Learn tail sampling to keep 100% of error traces and attribute redaction to remove sensitive data before export.

Read more 
  • 21 March 2026
  • dashboards-red-method-cover.webp

10: Dashboards & the RED Method

What is the RED method for monitoring? Learn how to build actionable Grafana dashboards using Rate, Errors and Duration metrics, extended with Cost and Quality for AI services.

Read more 
  • 21 March 2026
  • alerting-slos-cover.webp

11: Alerting & Service Level Objectives (SLOs)

How do you define SLOs and configure alerts in Grafana? Learn to build error budget burn rate alerts, symptom-based alerting and SLI definitions for production Python services.

Read more