0

I'm trying to do root-cause analysis for an issue. The cpu perf profile looks like this- CPU profile

Apparently, more time is used by kubelet and dockerd. But the stack below has [unknown] symbols. How can I enable visualization of entire stack so as to find the go-routines cpu spends time on?

Update 1: Following @coderanger's suggestion I did build binaries manually using - make all GOLDFLAGS=""

And still I am missing some symbols with perf profiling- enter image description here

Any help appreciated!

Swapnil Patel
  • 757
  • 1
  • 7
  • 9
  • 2
    How did you install Kubernetes? https://github.com/kubernetes/kubernetes/blob/master/build/root/Makefile#L67-L85 indicated most builds run with -w, so you would probably need to make your own build. – coderanger Sep 24 '19 at 20:55
  • 2
    @jww as said elsewhere, we keep K8s questions here to avoid splitting the community. Also asking about how to work with debugging symbols is very much a programming question. – coderanger Sep 25 '19 at 03:56
  • @coderanger - you need to get the site rules changed. Otherwise, I am going to follow the site's rules. – jww Sep 25 '19 at 04:00
  • 1
    @jww: questions about `perf`, profiling, and flamegraphs, are close enough to programming: those tools are pretty much never used outside of programming tasks. Therefore the existing site rules allow this, under the "*unless they directly involve tools used primarily for programming.*" clause in the link you linked. That's why SO has `perf` and `flamegraph` tags, and the questions are about *using* perf and profiling tools, not writing them or using their APIs. – Peter Cordes Oct 07 '19 at 19:13

0 Answers0