bboreham/sideprojects

Tool to analyse goroutine dump

Opened this issue · 1 comments

The goroutine dump from http://xxx/debug/pprof/goroutine?debug=2 can tell you a lot, but often only after much laborious analysis.

This tool could provide:

  • a break-down of how many goroutines are in runnable, select, chan wait, etc., states.
  • grouping together many similar goroutines, to allow focus on the outliers. E.g. blocked in select state in net/http.(*persistConn).writeLoop()
  • identifying classes of wait times - all goroutines blocked for 1 minute, 5 minutes, 8384 minutes.

Rich detail here on the different data sources - the binary format dump does not contain enough information to work from.

You might find https://github.com/whyrusleeping/stackparse to be a useful starting point (or place to file PRs against). I've found it useful in the past.