xref: /aosp_15_r20/external/cronet/base/tracing/README.md (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Overhauled performance tracing in Chrome
2*6777b538SAndroid Build Coastguard Worker
3*6777b538SAndroid Build Coastguard WorkerWe are upgrading Chrome's support for performance tracing by replacing Chrome's implementation of
4*6777b538SAndroid Build Coastguard WorkerTRACE_EVENT macros from //base/trace_event with [Perfetto](https://perfetto.dev). Perfetto
5*6777b538SAndroid Build Coastguard Workerintroduces [trace events with typed
6*6777b538SAndroid Build Coastguard Workerarguments](https://perfetto.dev/docs/instrumentation/track-events) to support privacy-filtered trace
7*6777b538SAndroid Build Coastguard Workerrecording and a more compact, efficient, and stable trace encoding.
8*6777b538SAndroid Build Coastguard Worker
9*6777b538SAndroid Build Coastguard WorkerThe Perfetto library itself lives in
10*6777b538SAndroid Build Coastguard Worker[AOSP](https://android.googlesource.com/platform/external/perfetto/) and is rolled in
11*6777b538SAndroid Build Coastguard Worker[/third_party/chrome/](https://cs.chromium.org/chromium/src/third_party/perfetto/). Progress is
12*6777b538SAndroid Build Coastguard Workertracked on https://crbug.com/1006541.
13*6777b538SAndroid Build Coastguard Worker
14*6777b538SAndroid Build Coastguard WorkerThe code in this directory connects Chrome to Perfetto's [tracing
15*6777b538SAndroid Build Coastguard WorkerSDK](https://perfetto.dev/docs/instrumentation/tracing-sdk), which implements trace event macros on
16*6777b538SAndroid Build Coastguard Workertop of Perfetto's [tracing service](https://perfetto.dev/docs/concepts/service-model). This service
17*6777b538SAndroid Build Coastguard Workercan be run in-process (e.g. in unit tests), as a Chrome mojo service (see //services/tracing), or as
18*6777b538SAndroid Build Coastguard Workera system service on Android.
19*6777b538SAndroid Build Coastguard Worker
20*6777b538SAndroid Build Coastguard WorkerFor more details, see [Perfetto's documentation](https://docs.perfetto.dev), [Typed trace events in
21*6777b538SAndroid Build Coastguard WorkerChrome](https://docs.google.com/document/d/1f7tt4cb-JcA5bQFR1oXk60ncJPpkL02_Hi_Bc6MfTQk/edit#), and
22*6777b538SAndroid Build Coastguard Worker[Typed trace events in
23*6777b538SAndroid Build Coastguard Worker//base](https://docs.google.com/document/d/1UQ4Ez7B-TeowijOUuMXuoWj1amZcQ7E2abt3s4jaAEY/edit#).
24*6777b538SAndroid Build Coastguard Worker
25*6777b538SAndroid Build Coastguard WorkerNote: The integration with Perfetto's SDK is work-in-progress (https://crbug.com/1006541) behind
26*6777b538SAndroid Build Coastguard Workerthe gn flag "use_perfetto_client_library".
27