Sep 2, 2019

[Go] instrumentation

Reference:
GopherCon 2019: Jason Keene - Dynamically Instrumenting Go Programs
http://www.brendangregg.com/blog/2016-03-05/linux-bpf-superpowers.html

Book:
BPF Performance Tools


Probe Effect (be aware)

Types of instrument:
  • Static and Always ON
    Logging, metrics, distributed tracing
  • Static and Requires Activation
    Leveled logging, pprof, usdt probes( https://lwn.net/Articles/753601 )
  • Dynamic Instrumentation
    Debuggers, tracers, uprobes/bpf


Streetlight Effect (where static trace is ON, be aware)

Thus we need dynamic instrumentation.

  1. ptrace/debuggers
    GDB ( http://vsdmars.blogspot.com/2018/10/clinux-debugging.html )
  2. go-bpf
    https://github.com/iovisor/gobpf

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.