Skip to content
StackPractices

observability

Practical resources about observability for software engineers.

46 results

Understanding Production Systems

You cannot fix what you cannot see. Observability combines metrics, logs, and traces into a coherent picture of system health. It is the difference between reactive firefighting and proactive capacity planning.

These resources cover structured logging with JSON, Prometheus metric collection, Grafana dashboard design, distributed tracing with OpenTelemetry, and alerting strategies. Learn how to reduce mean time to detection and resolution in production environments.

intermediate

Centralize Container Logs with Fluentd and Docker

Collect, filter, and forward Docker container logs to Elasticsearch, S3, or stdout using Fluentd as a logging driver or sidecar.

beginner

Observability Dashboards with Grafana and Prometheus

Build interactive Grafana dashboards that visualize Prometheus metrics with panels, variables, and alerts for thorough service observability

intermediate

Metrics Collection and Alerting with Prometheus

Instrument applications and infrastructure with Prometheus metrics, configure alerting rules, and set up recording rules for efficient monitoring of service health

intermediate

Expose Custom Application Metrics with Python and Prometheus

Build a custom Prometheus metrics exporter in Python using prometheus_client for counters, gauges, histograms, and summaries.

intermediate

Distributed Tracing

Trace requests across distributed microservices with OpenTelemetry, Jaeger, and Zipkin for latency debugging and performance optimization.

intermediate

Custom Health Checks with Spring Boot Actuator

How to implement custom health indicators with Spring Boot Actuator, including database, Redis, external API checks, and Kubernetes readiness probes.

intermediate

Expose Metrics with Micrometer and Prometheus

How to expose custom application metrics using Micrometer and Prometheus in Spring Boot, including counters, gauges, timers, and histograms.

intermediate

Log Aggregation

Centralize logs from distributed services with ELK, Fluentd, and Loki for search, alerting, and troubleshooting in production.

intermediate

Metrics Collection

Collect, aggregate, and expose application and infrastructure metrics with Prometheus, StatsD, and OpenTelemetry for monitoring and alerting.

intermediate

High-Performance Logging with pino

How to use pino for fast structured JSON logging in Node.js, including log levels, child loggers, transports, and integration with Express and Fastify.

intermediate

Error Tracking with Sentry in Express

How to integrate Sentry for error tracking in Node.js Express applications, including error handlers, performance monitoring, release tracking, and source maps.

intermediate

Rotate Logs Daily with Winston

How to configure daily log rotation in Node.js using winston and winston-daily-rotate-file, including size limits, retention, compression, and transport combining.

intermediate

Prometheus API Monitoring

Monitor API performance and health with Prometheus metrics, custom collectors, and alerting rules.

advanced

Distributed Tracing with OpenTelemetry

How to implement distributed tracing in Python with OpenTelemetry SDK, including spans, context propagation, auto-instrumentation, and Jaeger export.

intermediate

Expose Business Metrics with Prometheus

How to expose custom business metrics in Python using prometheus_client, including counters, gauges, histograms, summaries, and Flask integration.

intermediate

Structured JSON Logging with structlog

How to emit structured JSON logs in Python using structlog, including context binding, log levels, processors, and integration with standard logging.

intermediate

Real User Monitoring

Monitor actual user experiences with Core Web Vitals, session replay, and performance analytics to identify real-world bottlenecks.

intermediate

Structured Logging

Implement structured logging with JSON output, correlation IDs, and log aggregation for production observability.

beginner

Health Endpoint Monitoring Pattern

Expose lightweight health endpoints so orchestrators, load balancers, and monitoring tools can verify service availability.

advanced

Circuit Breaker with Monitoring

How to expose circuit breaker state as metrics for observability. Covers Prometheus integration, alerting rules, dashboards, and state transitions.

intermediate

Correlation ID: Trace Requests Across Distributed Services

How to propagate correlation IDs across service boundaries for end-to-end request tracing. Covers HTTP headers, message queues, and logging integration.

advanced

Distributed Tracing: Propagate Trace Context Across Services

How to propagate trace context across service boundaries with OpenTelemetry. Covers span creation, context propagation, sampling, and trace analysis.

intermediate

Health Check Pattern: Expose Liveness and Readiness Probes

How to implement liveness and readiness probes for container orchestration. Covers Kubernetes probes, dependency checks, graceful degradation, and probe endpoints.

intermediate

Metrics Aggregation: Collect, Tag

How to collect, tag, and aggregate business metrics for observability. Covers Prometheus, OpenTelemetry, custom metrics, histograms, and dashboarding.

intermediate

Structured Logging: Emit JSON Logs with Consistent Fields

How to emit structured JSON logs with consistent fields for searchability. Covers Python structlog, Winston, Serilog, log levels, and log aggregation.

beginner

Logging Standards Document

A document template for defining structured logging conventions, log levels, retention, and observability requirements across services.

beginner

Monitoring and Alerting Policy Template

A policy template that defines how alerts are configured, routed, escalated, and reviewed across services and infrastructure.

intermediate

Postmortem Incident Review Template

A blameless postmortem template for analyzing incidents, identifying root causes, and documenting lessons to prevent recurrence.

intermediate

Service Level Objective (SLO) Template

A template for defining reliability targets, error budgets, and measurement methods for services and systems.

advanced

Complete Guide to Monitoring and Alerting

Build a production monitoring stack. Covers Prometheus, Grafana, AlertManager, metrics instrumentation, alert rules, runbooks, SLI/SLO/SLA, distributed tracing with Jaeger, log aggregation, and on-call best practices with practical configuration examples.

intermediate

Observability — Metrics, Logs, and Traces Complete Guide

A practical guide to observability: the three pillars (metrics, logs, traces), implementing with Prometheus, Grafana, Loki, Tempo/Jaeger, and building SLO-driven alerting.

intermediate

OpenTelemetry — Implementation Guide for Metrics, Logs

A practical guide to OpenTelemetry: instrumentation, collectors, exporters, and wiring OTLP to backends like Jaeger, Prometheus, and Grafana.

intermediate

Site Reliability Engineering

A practical guide to SRE: defining SLIs, SLOs, and SLAs, managing error budgets, toil reduction, on-call rotations, and building a culture of reliability.

advanced

Complete Guide to Apache Kafka in Production

Run Apache Kafka in production with confidence. Covers partitions, replication, consumer groups, monitoring, performance tuning, and operational best practices for high-throughput streaming pipelines.

intermediate

Alert Management: On-Call Alerting That Works

A practical guide to alert management: reducing alert fatigue, defining severity levels, escalation policies, on-call rotation design, and building a sustainable alerting culture.

advanced

Distributed Tracing: OpenTelemetry, Jaeger, Zipkin

Master distributed tracing with OpenTelemetry, Jaeger, and Zipkin. Trace propagation across services, span context, sampling strategies, and production debugging.

advanced

Complete Guide to Observability with the Grafana Stack

Set up metrics, logs, and traces with Grafana, Prometheus, Loki, and Tempo. Covers instrumentation, dashboards, alerting, and distributed tracing for production systems.

advanced

Prometheus and Grafana: Metrics, Dashboards, Alerting

Master Prometheus metrics collection and Grafana dashboards. Covers metric types, PromQL, service instrumentation, alerting rules, and production deployment patterns.

intermediate

Sentry: Error Tracking, Triage, and Resolution

Master Sentry for production error tracking. Covers SDK integration in Python, Node.js, Java, release tracking, source maps, performance monitoring, and alerting.

intermediate

Structured Logging: JSON Logs, Correlation IDs, Aggregation

Master structured logging with JSON format, correlation IDs, log levels, and aggregation. Covers Python structlog, Node.js pino, Java SLF4J, ELK and Loki stacks.

intermediate

Distributed Tracing: End-to-End Request Flow Across

A practical guide to distributed tracing: instrumenting applications, trace propagation, sampling strategies, and diagnosing latency in microservice architectures with OpenTelemetry, Jaeger, and Zipkin.

intermediate

Incident Response: Structured Handling for Production

A practical guide to incident response: declaring incidents, building an incident command structure, communication protocols, and reducing mean time to resolution with structured processes.

intermediate

Log Aggregation — Centralize, Search

A practical guide to log aggregation: structured logging, shipping strategies, retention policies, and building searchable log pipelines with ELK, Loki, and cloud-native solutions.

intermediate

Metrics and Dashboards

A practical guide to metrics and dashboards: instrumenting applications, choosing metric types, building useful dashboards, and creating alerting pipelines with Prometheus, Grafana, and Datadog.

intermediate

Blameless Postmortems: Learning from Incidents Without Blame

A practical guide to conducting blameless postmortems: capturing timelines, identifying root causes, writing useful follow-ups, and building a culture of continuous improvement from outages.

advanced

Complete Guide to AWS Lambda in Production

Run AWS Lambda in production with confidence. Covers cold start optimization, layers, deployment patterns, observability with X-Ray, security hardening, connection pooling, and cost tuning for production workloads.