Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
dbf5f710
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
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看板
未验证
提交
dbf5f710
编写于
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
>
上级
107b07df
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
8 addition
and
4 deletion
+8
-4
zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md
zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md
+8
-4
未找到文件。
zh-cn/device-dev/subsystems/subsys-dfx-hitracemeter.md
浏览文件 @
dbf5f710
...
...
@@ -75,7 +75,9 @@ constexpr uint64_t HITRACE_TAG_VALID_MASK = ((HITRACE_TAG_LAST - 1) | HITRACE_TA
HiTraceMeter主要提供抓取用户态和内核态Trace数据的命令行工具,提供用户态打点的innerkits接口(c++)和kits接口(js),HiTraceMeter基于内核ftrace提供的用户态打点的扩展,利用ftrace的trace_marker节点,将用户空间通过打点接口写入的数据写进内核循环buffer缓冲区。其基本架构图如下:
![
输入图片说明
](
../../figures/Hitrace.png
)
!
[
输入图片说明
](
../../figures/Hitrace.png
)
...
...
@@ -109,7 +111,8 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
| void FinishTrace(uint64_t label); | 关闭同步trace |
-
(1)label: Trace category;
-
(2)value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等;
-
(2)value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等。
同步接口StartTrace和FinishTrace必须配对使用,FinishTrace和前面最近的StartTrace进行匹配。StartTrace和FinishTrace函数对可以嵌套模式使用,跟踪数据解析时使用栈式数据结构进行匹配。接口中的limit参数用于限流,使用默认值即可。
**表 2**
异步接口
...
...
@@ -122,7 +125,8 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
-
(1)label: Trace category;
-
(2)value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等;
-
(3)taskId:异步Trace中用来表示关联的ID。同步Trace是不需要这个值的,因为同步Trace是栈结构,很容易判断Trace的起始关联关系,但是异步Trace需要一个ID来表示这个关系;
-
(3)taskId:异步Trace中用来表示关联的ID。同步Trace是不需要这个值的,因为同步Trace是栈结构,很容易判断Trace的起始关联关系,但是异步Trace需要一个ID来表示这个关系。
异步接口StartAsyncTrace和FinishAsyncTrace的跟踪数据匹配时,使用参数中的value和taskId配对匹配,可以不按顺序使用,主要用于异步场景。在C++程序中,使用异步跟踪的场景很少。
**表 3**
计数器接口
...
...
@@ -132,7 +136,7 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
| void CountTrace(uint64_t label, const std::string& name, int64_t); | 计数trace |
-
(1)label: Trace category;
-
(2)name: Trace的名称,IDE中会以此字段展示这段Trace
;
-
(2)name: Trace的名称,IDE中会以此字段展示这段Trace
。
## 开发步骤
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录