kibana/x-pack/plugins/profiling/server
Joseph Crail b42bb18119
[Profiling] Prepare for inline stackframes (#150401)
This PR adds initial support for initial stackframes as described in
elastic/prodfiler#2918.

It also adds tests and a minor refactor to account for the removal of
synthetic source from stackframes (see elastic/prodfiler#2850).

For stackframes, the profiling stack is composed of multiple write paths
into Elasticsearch and multiple read paths out of Elasticsearch:
* there are three services that can write into Elasticsearch (`APM
agent`, `pf-elastic-collector`, and `pf-elastic-symbolizer`).
* there are also two ways to read from Elasticsearch (the profiling
plugin in Elasticsearch, and a combination of `search` and `mget`
calls).

This PR was written to handle all permutations of these paths. For those
reviewers that wish to try the PR, please keep this in mind. I also
wrote tests to handle these permutations.

Note: Future PRs will add full support for inline stackframes. At this
time, we only read the first inlined stackframe since the UI does not
support inline stackframes.

---------

Co-authored-by: Tim Rühsen <tim.ruhsen@elastic.co>
2023-02-07 05:22:59 -07:00
..
routes [Profiling] Prepare for inline stackframes (#150401) 2023-02-07 05:22:59 -07:00
utils [Profiling] Retrieve profiling data via Elasticsearch plugin (#147152) 2023-01-10 09:21:01 -07:00
feature.ts [Profiling] Use 'Universal Profiling' everywhere (#140906) 2022-09-19 02:21:14 -07:00
index.ts [Profiling] Configurable ES client (#144533) 2022-12-07 08:36:13 -07:00
plugin.ts [Profiling] Configurable ES client (#144533) 2022-12-07 08:36:13 -07:00
types.ts