~/talk

Debugging Go Applications

Talkat GopherCon UK 2024 · 2024-08-14..08-16· [go, observability]
links:none on file
slides:none on file

Starts from a tiny Go API that returns 500s and moves it to observable production readiness using concrete tools and numbers: live debugging with a delve-style debugger to find a local connection refused, adding structured slog JSON logs shipped to Elastic/Kibana via filebeat, exposing Prometheus metrics (/metrics) with VictoriaMetrics, adding pprof and OpenTelemetry traces viewed in Jaeger to spot a 2.01s hotspot in getFlight. Case study shows a Cloudflare-scale crawler hints system handling 18–30k req/s (later 100x) and relying on metrics, sampling and rate-limit workarounds that reduce incidents.

AI-written summary · about

  1. 0:00Debugging Go apps
  2. 1:46Debugging skills matter
  3. 3:37Debugging a simple Go API
  4. 7:14Diagnosing 500 errors
  5. 9:04Go’s built-in debugger
  6. 12:37Structured logging with slog
  7. 18:22Logs to Elasticsearch and Cabana
  8. 23:17Too many logs problems
  9. 23:39Metrics for visibility
  10. 29:16Alerts for debugging
  11. 33:11Distributed tracing with OpenTelemetry
  12. 39:53Service maps from traces
  13. 41:19Journey to distributed tracing
  14. 42:42Cloudflare debugging
  15. 46:13Q&A
~/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.