• broken_broken_ 3 hours ago

Interesting to see an ebpf approach to this idea, some time ago I did the same with Dtrace: https://gaultier.github.io/blog/detecting_goroutine_leaks_wi...

However I did not think of observing the ‘castgstatus’ runtime function.

Always nice to be able to compare the DTrace and Ebpf approaches, they both have different strong points.

• trueno 3 hours ago

that is actually sick.

how common is it for go devs to experience leaking goroutines ? id like to think go is a lot less shoot yourself in the foot here since they provide a framework for concurrency/parallelism rather than you working with the tiny pieces of it and building out the architecture yourself, but ive only needed to use goroutines once and it was a pretty problem-free experience.

• xtoilette 3 hours ago

Cool! is there something similar for async rust ?

• fch42 7 minutes ago

https://docs.rs/tokio-console/latest/tokio_console/ comes to mind.

I'm not aware of eBPF-based dynamic instrumentation for either tokio or other async runtimes, but I'm also not (in need to be) debugging this on a daily basis.

• tsuzu 3 hours ago

So cool! Does it support multiple Go versions?