gofuncgraph

bpf(2)-based ftrace(1)-like function graph tracer for golang processes.

MIT License

Stars
27
gofuncgraph - v23.04.02-rc.1 Latest Release

Published by jschwinger233 over 1 year ago

  1. Improve performance by finding runtime.g from TLS.
  2. Improve arguments fetching system to make it scalable with less memory waste
  3. Output source line info by default
  4. Delete useless features which put huge overhead, such as --backtrace

Full Changelog: https://github.com/jschwinger233/gofuncgraph/compare/v22.09.05...v23.04.02-rc.1

gofuncgraph - v22.09.05

Published by jschwinger233 about 2 years ago

gofuncgraph - v22.09.05-rc.2

Published by jschwinger233 about 2 years ago

gofuncgraph - v22.09.05-rc.1

Published by jschwinger233 about 2 years ago

gofuncgraph - v0.0.1-rc.2

Published by jschwinger233 about 2 years ago

gofuncgraph - v0.0.1-rc.1

Published by jschwinger233 over 2 years ago

Changelog

  • 95d908e Initial commit
  • 1921de7 add --backtrace to print call chains
  • b5a6b3f add help and lift noflie rlimit
  • 66e3cc3 add python script to parse offsets
  • 6aa2134 add version module and --version
  • 42a9a6d enhance argument validations
  • 88fda8d find function offset scope in different ways
  • 807ed7d focus on golang tracing, adjust packages
  • 3b51d00 insert bpf instructions, print fetch data
  • eded119 parse binary using debug/dwarf and x86asm
  • 082519c parse fetchargs and compile to bpf instructions
  • f22342c print funcgraph in stream
  • b1b5b08 print function calling trees with offsets
  • 1191636 print graph only spawned by user specified
  • a93653f remove bp map to avoid obsolete entry disruption
  • 2abf5cf rename symparser module to uprobe
  • 691da11 reorganize the project
  • fc94b33 search symbols recursively
  • 43bff10 set github actions and goreleaser
  • fc1dfcd specify exclude wildcards in cli flags
  • 865dd6b try to adapt for normal c process