class TrackEventDataSource

Defined at line 245 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

A generic track event data source.

Public Members

static const bool kRequiresCallbacksUnderLock

Public Methods

BufferExhaustedPolicy GetDefaultBufferExhaustedPolicy ()

Defined at line 252 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

void OnSetup (const DataSourceBase::SetupArgs & args)

DataSource implementation.

Defined at line 257 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

void OnStart (const DataSourceBase::StartArgs & args)
void OnStop (const DataSourceBase::StopArgs & args)

Defined at line 266 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

void WillClearIncrementalState (const DataSourceBase::ClearIncrementalStateArgs & args)

Defined at line 285 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

bool CanAdoptStartupSession (const DataSourceConfig & startup_config, const DataSourceConfig & service_config)

In Chrome, startup sessions are propagated from the browser process to

child processes using command-line flags. Command-line flags can only

convey the category filter and privacy settings, so we use only those

to determine which startup sessions to adopt.

TODO(khokhlov): After Chrome is able to propagate the entire config to the

child process, we can make this comparison more strict by only clearing

selected fields and comparing everything else. One specific thing to keep

in mind is to clear the |convert_to_legacy_json| field, because Telemetry

initiates tracing with proto format, but in some cases adopts the tracing

session later via devtools which expect json format.

Defined at line 300 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

bool AddRegistry (const TrackEventCategoryRegistry * registry)

Defined at line 340 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

const protos::gen::TrackEventConfig & GetConfig ()

Defined at line 368 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h

void ResetForTesting ()

Defined at line 370 of file ../../third_party/perfetto/include/perfetto/tracing/internal/track_event_data_source.h