pub struct TrackEventConfig {
pub disabled_categories: Vec<String>,
pub enabled_categories: Vec<String>,
pub disabled_tags: Vec<String>,
pub enabled_tags: Vec<String>,
pub disable_incremental_timestamps: Option<bool>,
pub timestamp_unit_multiplier: Option<u64>,
pub filter_debug_annotations: Option<bool>,
pub enable_thread_time_sampling: Option<bool>,
pub filter_dynamic_event_names: Option<bool>,
}
Expand description
The following fields define the set of enabled trace categories. Each list item is a glob.
To determine if category is enabled, it is checked against the filters in the following order:
- Exact matches in enabled categories.
- Exact matches in enabled tags.
- Exact matches in disabled categories.
- Exact matches in disabled tags.
- Pattern matches in enabled categories.
- Pattern matches in enabled tags.
- Pattern matches in disabled categories.
- Pattern matches in disabled tags.
If none of the steps produced a match:
- In the C++ SDK (
perfetto::Category
), categories are enabled by default. - In the C SDK (
PerfettoTeCategory
), categories are disabled by default.
Examples:
-
To enable all non-slow/debug categories:
enabled_categories: “*”
-
To enable specific categories:
disabled_categories: “*” enabled_categories: “my_category” enabled_categories: “my_category2”
-
To enable only categories with a specific tag:
disabled_tags: “*” enabled_tags: “my_tag”
Fields§
§disabled_categories: Vec<String>
Default: []
enabled_categories: Vec<String>
Default: []
Default: [“slow”, “debug”]
Default: []
disable_incremental_timestamps: Option<bool>
Default: false (i.e. enabled by default)
timestamp_unit_multiplier: Option<u64>
Allows to specify a custom unit different than the default (ns). Also affects thread timestamps if enable_thread_time_sampling = true. A multiplier of 1000 means that a timestamp = 3 should be interpreted as 3000 ns = 3 us. Default: 1 (if unset, it should be read as 1).
filter_debug_annotations: Option<bool>
Default: false (i.e. debug_annotations is NOT filtered out by default) When true, any debug annotations provided as arguments to the TRACE_EVENT macros are not written into the trace. Typed arguments will still be emitted even if set to true.
enable_thread_time_sampling: Option<bool>
Default : false (i.e. disabled) When true, the SDK samples and emits the current thread time counter value for each event on the current thread’s track. This value represents the total CPU time consumed by that thread since its creation. Note that if a thread is not scheduled by OS for some duration, that time won’t be included in thread_time. Learn more : “CLOCK_THREAD_CPUTIME_ID” flag at https://linux.die.net/man/3/clock_gettime
filter_dynamic_event_names: Option<bool>
Default: false (i.e. dynamic event names are NOT filtered out by default) When true, event_names wrapped in perfetto::DynamicString will be filtered out.
Implementations§
Source§impl TrackEventConfig
impl TrackEventConfig
Sourcepub fn disable_incremental_timestamps(&self) -> bool
pub fn disable_incremental_timestamps(&self) -> bool
Returns the value of disable_incremental_timestamps
, or the default value if disable_incremental_timestamps
is unset.
Sourcepub fn timestamp_unit_multiplier(&self) -> u64
pub fn timestamp_unit_multiplier(&self) -> u64
Returns the value of timestamp_unit_multiplier
, or the default value if timestamp_unit_multiplier
is unset.
Sourcepub fn filter_debug_annotations(&self) -> bool
pub fn filter_debug_annotations(&self) -> bool
Returns the value of filter_debug_annotations
, or the default value if filter_debug_annotations
is unset.
Sourcepub fn enable_thread_time_sampling(&self) -> bool
pub fn enable_thread_time_sampling(&self) -> bool
Returns the value of enable_thread_time_sampling
, or the default value if enable_thread_time_sampling
is unset.
Sourcepub fn filter_dynamic_event_names(&self) -> bool
pub fn filter_dynamic_event_names(&self) -> bool
Returns the value of filter_dynamic_event_names
, or the default value if filter_dynamic_event_names
is unset.
Trait Implementations§
Source§impl Clone for TrackEventConfig
impl Clone for TrackEventConfig
Source§fn clone(&self) -> TrackEventConfig
fn clone(&self) -> TrackEventConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for TrackEventConfig
impl Debug for TrackEventConfig
Source§impl Default for TrackEventConfig
impl Default for TrackEventConfig
Source§impl Message for TrackEventConfig
impl Message for TrackEventConfig
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn decode<B>(buf: B) -> Result<Self, DecodeError>
fn decode<B>(buf: B) -> Result<Self, DecodeError>
Source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
Source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
self
. Read moreSource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
self
.