Documentation
¶
Overview ¶
The resultdbpprof command collects the test results from a LUCI build and assembles them into a pprof profile for analysis.
It assumes the test results have Go test names, along the lines of `pkg.TestX/Y/Z` and uses that to construct the list of locations for each pprof sample. More specifically, `pkg.TestX/Y/Z` will get broken down into the pprof sample `[pkg, TestX, Y, Z]`, attaching the duration of each subtest to each sample.
Note that this means this tool will not work with LUCI builds that run non-Go tests.
The profile that is produced by this tool is a little strange in that it is quite likely to have *many* unique location lists, so the pprof tool may struggle or just give up on rendering all of them. Rest assured that the data is all in there, however.
So, we recommend that when using a flame graph viewer for pprof profiles, the user of the profiles produced by this tool pivots and searches for specific packages before assuming that they're not present in the profile.