mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 17:59:23 -04:00
* Add instrumentation for flamegraph I inlined the construction of the flamegraph into the respective route so that we could add fine-grained instrumentation. We now use APM and console logging to understand how long flamegraph construction takes. * Remove unnecessary Set usage * Remove superfluous clone This was likely added when we needed to avoid infinite recursion when serializing to JSON. This no longer has a useful function. * Pass in pre-calculated frame group info I noticed that we were creating frame group info multiple times so I added it as a parameter for the intermediate node. * Sort callees in one place Callees should be sorted first by samples decreasing and then by frame groups. Combining the two sorts makes the post-processing clearer to future readers and/or maintainers. * Capitalize fields in preparation of merging * Align both node data structures * Pass metadata instead of copying fields * Refactor frame label method * Use pre-calculated array length * Use pre-allocated array * Refactor intermediate node * Remove intermediate node structure * Move if statement out of for loop * Fix comments * Sort sibling nodes by frame group ID * Calculate graph size during creation * Add missing groupStackFrameMetadataByStackTrace * Fix formatting * Fix generated callee source * Fix creation of frame group * Fix test * Remove filter for relevant traces * Stop passing frame group * Create root node inside createCallerCalleeGraph * Fix timestamps * Remove frame group comparator * Add instrumentation for topN functions * Allow for missing stacktraces * Use Date.now instead |
||
---|---|---|
.. | ||
routes | ||
utils | ||
feature.ts | ||
index.ts | ||
plugin.ts | ||
types.ts |