Engineers from Grafana Labs and Isovalent discuss practical observability strategies for Go systems. The conversation covers starting with logs and deriving metrics from them (e.g., counting panics), when to reach for distributed tracing and how context propagation works, Go's error handling tradeoffs for observability, effective use of pprof for CPU and memory profiling (including common pitfalls like profiling when the bottleneck is actually I/O wait), and how eBPF enables visibility into kernel-level behavior beyond what user-space instrumentation can provide.

8m read timeFrom grafana.com
Post cover image
Table of contents
Starting a Go project: Where observability beginsStarting with logs—and turning them into metricsTracing and why context mattersErrors, tradeoffs, and observability in GoProfiling with pprofeBPF and observing the “dark side” of systemsWhat Go could improve

Sort: