# Observability
All Observability notes →5 — Continuous Profiling
What makes always-on, sampling-based profiling cheap enough to run in production continuously, why it earns that cost mainly for hot or expensive services, and how a profile correlates back to the one trace that was running during the sample.
4 — Observability-Driven Development
The TDD analogy taken seriously: SLOs and instrumentation defined at design time as acceptance criteria, not retrofitted after an incident — and why this only sticks as a launch gate, not a guideline.
1 — AIOps / Agentic RCA
What's actually new versus a static runbook — an investigation loop, not a fixed trigger-action mapping — why it depends on everything earlier in this book already being solid, and the read-vs-write safety line most real deployments draw.
What is eBPF
Extended Berkeley Packet Filter — sandboxed, verified bytecode run inside the Linux kernel without a module or a restart. The foundation under Cilium, Grafana Beyla, and Pyroscope: zero-instrumentation traces, metrics, and continuous profiling.
1 — CPU Profiling
Covers sampling-based CPU profiling — what a flame graph represents and how to read one to find a hot function.
2 — Memory Profiling
Covers allocation profiling and how it differs from CPU profiling in what it samples and what questions it answers.
3 — Heap Analysis
Covers heap snapshot analysis for finding retained-object leaks that GC alone will not surface.
4 — Goroutines and Threads
Covers profiling concurrency primitives — goroutine/thread counts and blocking profiles — to find contention and leaks.