~/talk

Instrument Go Without Changing a Single Line

Talkat GopherCon UK 2026 · 2026-08-12..08-13· [web-performance, observability]
slides:none on file

Surveys four zero‑touch approaches and gives concrete tradeoffs: OTelC compile-time injector rewrites AST at build time (V1, targets Go 1.25+, platform independent, stable for traces/metrics/logs and pprof stitching); OBI eBPF runtime instrumentation attaches uprobes from kernel (Linux only, needs specific kernel/privileges, emits traces+metrics today, brittle on offsets but usable); eBPF profiler uses perf for low overhead CPU profiles (works with cgo/native stacks); LD_PRELOAD injector is experimental but promises no rebuild. Benchmarks compare overhead and stability across these.

AI-written summary · about

  1. 0:00Introduction
  2. 0:29Instrumentation matters
  3. 2:57Zero-touch promise
  4. 4:43Go resists instrumentation
  5. 6:08Auto-instrument Go paths
  6. 9:36Runtime injection challenges
  7. 11:21OpenTelemetry eBPF projects
  8. 13:23OBI instruments from kernel
  9. 17:55OBI capabilities and limits
  10. 19:20eBPF stability costs
  11. 20:24Compile-time otelC
  12. 22:33Go runtime rewriting magic
  13. 24:19Future runtime injector
  14. 25:24LD_PRELOAD teaser
  15. 26:27eBPF Go profiler
  16. 28:53eBPF stack traces
  17. 29:55Combining approaches for full observability
  18. 30:38Choose auto-instrumentation
  19. 31:21Dynamic debugging future
  20. 32:05Key takeaways
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.