Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
fcb3beca
D
Docs
项目概览
OpenHarmony
/
Docs
接近 2 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
fcb3beca
编写于
10月 12, 2022
作者:
H
hw-wLiu
提交者:
Gitee
10月 12, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md.
Signed-off-by:
N
hw-wLiu
<
liuwei573@huawei.com
>
上级
102d61e0
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
7 addition
and
5 deletion
+7
-5
zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md
zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md
+7
-5
未找到文件。
zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md
浏览文件 @
fcb3beca
...
@@ -11,6 +11,7 @@ HiTraceMeter系统主要分为三部分:
...
@@ -11,6 +11,7 @@ HiTraceMeter系统主要分为三部分:
-
(1)JS/C++应用打点API;
-
(1)JS/C++应用打点API;
-
(2)Trace数据采集命令行工具;
-
(2)Trace数据采集命令行工具;
-
(3)Trace数据图形分析工具。
-
(3)Trace数据图形分析工具。
其中,前两者运行在设备端侧,图形工具运行在PC主机侧。打点API部分提供了C++和JS接口,供开发过程中打点使用,打点是产生Trace数据流,是Trace的基础条件。命令行工具用于采集Trace数据,用来抓取trace数据流并保存到文本文件。Trace数据分析可以在图形工具中人工分析,也可以使用分析脚本自动化分析,Trace分析工具以Trace命令行工具的采集结果数据文件为输入。
其中,前两者运行在设备端侧,图形工具运行在PC主机侧。打点API部分提供了C++和JS接口,供开发过程中打点使用,打点是产生Trace数据流,是Trace的基础条件。命令行工具用于采集Trace数据,用来抓取trace数据流并保存到文本文件。Trace数据分析可以在图形工具中人工分析,也可以使用分析脚本自动化分析,Trace分析工具以Trace命令行工具的采集结果数据文件为输入。
HiTraceMeter跟踪数据使用类别分类,称作Trace Tag或Trace Category,一般一个端侧软件子系统对应一个Tag。该Tag在打点API中以类别Tag参数传入。Trace命令行工具采集跟踪数据时,只采集给定的Tag类别选项指定的跟踪数据。应用程序跟踪数据类别都是属于APP Tag,从而JS接口不需要输入tag参数,内部实现用的是TAG_APP。目前HiTraceMeter支持的预定义的子系统Tag宏定义列表如下(可在hitrace_meter.h中查看):
HiTraceMeter跟踪数据使用类别分类,称作Trace Tag或Trace Category,一般一个端侧软件子系统对应一个Tag。该Tag在打点API中以类别Tag参数传入。Trace命令行工具采集跟踪数据时,只采集给定的Tag类别选项指定的跟踪数据。应用程序跟踪数据类别都是属于APP Tag,从而JS接口不需要输入tag参数,内部实现用的是TAG_APP。目前HiTraceMeter支持的预定义的子系统Tag宏定义列表如下(可在hitrace_meter.h中查看):
...
@@ -120,12 +121,13 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
...
@@ -120,12 +121,13 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
接口中的limit参数用于限流,使用默认值即可。
接口中的limit参数用于限流,使用默认值即可。
异步接口StartAsyncTrace和FinishAsyncTrace的跟踪数据匹配时,使用参数中的value和taskId配对匹配,可以不按顺序使用,主要用于异步场景。在C++程序中,使用异步跟踪的场景很少。
异步接口StartAsyncTrace和FinishAsyncTrace的跟踪数据匹配时,使用参数中的value和taskId配对匹配,可以不按顺序使用,主要用于异步场景。在C++程序中,使用异步跟踪的场景很少。
接口中参数解释如下:
接口中参数解释如下:
1 label: trace category;
2 name: Trace的名称,IDE中会以此字段展示这段Trace;
3 value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等;
4 taskId:异步Trace中用来表示关联的ID。同步trace是不需要这个值的,因为同步trace是栈结构,很容易判断trace的起始关联关系,但是异步trace需要一个ID来表示这个关系;
5 在抓取Trace数据的时候,可以使用hitrace -l命令来检查当前系统中存在的trace category,只输出指定tag的数据。
-
(1)label: trace category;
-
(2)name: Trace的名称,IDE中会以此字段展示这段Trace;
-
(3)value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等;
-
(4)taskId:异步Trace中用来表示关联的ID。同步trace是不需要这个值的,因为同步trace是栈结构,很容易判断trace的起始关联关系,但是异步trace需要一个ID来表示这个关系;
-
(5)在抓取Trace数据的时候,可以使用hitrace -l命令来检查当前系统中存在的trace category,只输出指定tag的数据。
### 开发流程
### 开发流程
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录