结构
KnownCategory
在 fuchsia.tracing/tracing.fidl 中定义
GetKnownCategories
返回的值。
字段 | 类型 | 说明 | 默认 |
---|---|---|---|
name |
CategoryName
|
添加日期:18
|
无默认取景方式 |
description |
CategoryDescription
|
添加日期:18
|
无默认取景方式 |
枚举
BufferDisposition 严格
类型:uint8
在 fuchsia.tracing/tracing.fidl 中定义
用于选择在 Start 时清除/保留轨迹缓冲区内容的选项。 缓冲区内容的简要总结:轨迹缓冲区分为两个主要部分:持久和不持久。durable 部分包含各自引用的字符串和线程数据(trace_encoded_string_ref_t 和 trace_encoded_thread_ref_t)等内容。非持久性部分包含其余轨迹数据(例如事件);举例来说,当(非持久性)缓冲区填满时,会在循环缓冲模式下被舍弃的部分。
名称 | 值 | 说明 |
---|---|---|
CLEAR_ENTIRE |
1 |
清空整个缓冲区,包括持久性缓冲区内容。 注意:如果在会话期间完成此操作,则此时间点之前的字符串和线程引用将失效,底层数据也将随之消失。为了防止在清除缓冲区内容之前保存内容。 这通常适用于在上一个停止后保存缓冲区内容的情况。 |
CLEAR_NONDURABLE |
2 |
清除缓冲区中的非持久性部分,保留持久性部分。 这通常在以下情况下使用:在前一个停止后未保存缓冲区内容,而当前内容被舍弃。 |
保留 |
3 |
保留缓冲区内容。新的轨迹数据会添加到上一条轨迹的运行结束处。 这通常用于以下情形:在前一个停止后未保存缓冲区内容,而要保留当前内容时。 |
BufferingMode 严格
类型:uint8
在 fuchsia.tracing/tracing.fidl 中定义
轨迹缓冲模式。
名称 | 值 | 说明 |
---|---|---|
连拍 |
1 |
在一次性模式下,只有一个缓冲区未被重复使用。当缓冲区填满提供程序时,提供程序只会不断地丢弃记录并保留计数,然后在跟踪停止时,标头会进行更新以记录最终状态。 |
循环 |
2 |
在循环模式下,不断写入缓冲区,直到跟踪停止。当缓冲区填满时,系统会根据需要舍弃较旧的记录。 |
在线播放 |
3 |
在流式模式下,缓冲区实际上分为两部分。当缓冲区的一半填满时,提供程序会通过提供的 fifo 通知跟踪管理器,然后开始填充缓冲区的另一半。保存缓冲区后,管理器会通过提供的 fifo 响应。如果跟踪管理器未及时保存缓冲区,并且其他缓冲区已填满,则提供程序必须丢弃记录,直到空间可用。 |
常量
名称 | 值 | 类型 | 说明 |
---|---|---|---|
MAX_CATEGORY_DESCRIPTION_LENGTH |
400
|
uint32 |
类别说明的最大长度。 |
MAX_CATEGORY_NAME_LENGTH |
100
|
uint32 |
类别名称的长度上限。 |
MAX_NUM_ENABLED_CATEGORIES |
5000
|
uint32 |
支持的类别数量上限。 |
MAX_NUM_KNOWN_CATEGORIES |
5000
|
uint32 |
支持的类别数量上限。 |
MAX_PROVIDER_NAME_LENGTH |
100
|
uint32 |
提供商名称的长度上限。 |
别名
名称 | 值 | 说明 |
---|---|---|
CategoryDescription |
string [MAX_CATEGORY_DESCRIPTION_LENGTH ] |
添加日期:18
|
CategoryName |
string [MAX_CATEGORY_NAME_LENGTH ] |
aliases 添加日期:18
|
EnabledCategoryList |
vector [MAX_NUM_ENABLED_CATEGORIES ] |
添加日期:18
|
ProviderId |
uint32 |
添加日期:18
|
ProviderName |
string [MAX_PROVIDER_NAME_LENGTH ] |
添加日期:18
|