提交 bba62b8b 编写于 作者: H hw-wLiu

submit hitrace docdata 101301

Signed-off-by: Nhw-wLiu <liuwei573@huawei.com>
Change-Id: Iaac6053a7614350c94dcc624c26f1b10ca6ae019
上级 c90c132c
...@@ -108,8 +108,8 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开 ...@@ -108,8 +108,8 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
| Sync trace | 功能描述 |参数说明 | | Sync trace | 功能描述 |参数说明 |
| :----------------------------------------------------------- | ------------- |------------- | | :----------------------------------------------------------- | ------------- |------------- |
| void StartTrace(uint64_t label, const std::string& value, float limit = -1); | 启动同步trace |label: Trace category。 | | void StartTrace(uint64_t label, const std::string& value, float limit = -1); | 启动同步trace |label: Trace category。<br />value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等。 |
| void FinishTrace(uint64_t label); | 关闭同步trace |value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等。 | | void FinishTrace(uint64_t label); | 关闭同步trace |label: Trace category。 |
同步接口StartTrace和FinishTrace必须配对使用,FinishTrace和前面最近的StartTrace进行匹配。StartTrace和FinishTrace函数对可以嵌套模式使用,跟踪数据解析时使用栈式数据结构进行匹配。接口中的limit参数用于限流,使用默认值即可。 同步接口StartTrace和FinishTrace必须配对使用,FinishTrace和前面最近的StartTrace进行匹配。StartTrace和FinishTrace函数对可以嵌套模式使用,跟踪数据解析时使用栈式数据结构进行匹配。接口中的limit参数用于限流,使用默认值即可。
...@@ -118,9 +118,8 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开 ...@@ -118,9 +118,8 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
| Async trace | 功能描述 |参数说明 | | Async trace | 功能描述 |参数说明 |
| ------------------------------------------------------------ | ------------- |------------- | | ------------------------------------------------------------ | ------------- |------------- |
| void StartAsyncTrace(uint64_t label, const std::string& value, int32_t taskId, float limit = -1); | 开启异步trace | label: Trace category。 | | void StartAsyncTrace(uint64_t label, const std::string& value, int32_t taskId, float limit = -1); | 开启异步trace | label: Trace category。<br />value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等。<br />taskId:异步Trace中用来表示关联的ID。 |
| void FinishAsyncTrace(uint64_t label, const std::string& value, int32_t taskId); | 关闭异步trace | value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等。| | void FinishAsyncTrace(uint64_t label, const std::string& value, int32_t taskId); | 关闭异步trace | label: Trace category。<br />value: Trace携带的信息,表明当前的某种状态,例如内存大小,队列长短等。<br />taskId:异步Trace中用来表示关联的ID。 |
| | | taskId:异步Trace中用来表示关联的ID。 |
...@@ -130,8 +129,7 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开 ...@@ -130,8 +129,7 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
| Counter Trace | 功能描述 |参数说明 | | Counter Trace | 功能描述 |参数说明 |
| ------------------------------------------------------------ | --------- |--------- | | ------------------------------------------------------------ | --------- |--------- |
| void CountTrace(uint64_t label, const std::string& name, int64_t); | 计数trace |label: Trace category。。 | | void CountTrace(uint64_t label, const std::string& name, int64_t); | 计数trace |label: Trace category。<br />name: Trace的名称,IDE中会以此字段展示这段Trace。 |
| | |name: Trace的名称,IDE中会以此字段展示这段Trace。 |
## 开发步骤 ## 开发步骤
...@@ -142,7 +140,7 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开 ...@@ -142,7 +140,7 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
``` ```
2. 头文件依赖添加。 2. 头文件依赖添加。
``` ```cpp
#include "hitrace_meter.h"//接口函数定义头文件 #include "hitrace_meter.h"//接口函数定义头文件
``` ```
...@@ -150,39 +148,39 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开 ...@@ -150,39 +148,39 @@ C++接口仅系统开发者使用,JS(目前暂未开放js接口)应用开
```cpp ```cpp
#include "hitrace_meter.h" // 包含hitrace_meter.h #include "hitrace_meter.h" // 包含hitrace_meter.h
using namespace std; using namespace std;
int main() int main()
{ {
uint64_t label = BYTRACE_TAG_OHOS; uint64_t label = BYTRACE_TAG_OHOS;
sleep(1); sleep(1);
CountTrace(label, "count number", 2000); // 整数跟踪 CountTrace(label, "count number", 2000); // 整数跟踪
StartTrace(label, "func1Trace", -1); // func1Start的跟踪起始点 StartTrace(label, "func1Trace", -1); // func1Start的跟踪起始点
sleep(1); sleep(1);
StartTrace(label, "func2Trace", -1); // func2Start的跟踪起始点 StartTrace(label, "func2Trace", -1); // func2Start的跟踪起始点
sleep(2); sleep(2);
FinishTrace(label); // func2Trace的结束点 FinishTrace(label); // func2Trace的结束点
sleep(1); sleep(1);
FinishTrace(label); // func1Trace的结束点 FinishTrace(label); // func1Trace的结束点
sleep(1); sleep(1);
CountTrace(label, "count number", 3000); // 整数跟踪 CountTrace(label, "count number", 3000); // 整数跟踪
StartAsyncTrace(label, "asyncTrace1", 1234); // 异步asyncTrace1的开始点 StartAsyncTrace(label, "asyncTrace1", 1234); // 异步asyncTrace1的开始点
sleep(1); sleep(1);
StartAsyncTrace(label, "asyncTrace2", 3456); // 异步asyncTrace2的开始点 StartAsyncTrace(label, "asyncTrace2", 3456); // 异步asyncTrace2的开始点
StartAsyncTrace(label, "asyncTrace3", 5678); // 异步asyncTrace3的开始点 StartAsyncTrace(label, "asyncTrace3", 5678); // 异步asyncTrace3的开始点
sleep(1); sleep(1);
FinishAsyncTrace(label, "asyncTrace3", 5678); // 异步asyncTrace3的结束点 FinishAsyncTrace(label, "asyncTrace3", 5678); // 异步asyncTrace3的结束点
sleep(1); sleep(1);
FinishAsyncTrace(label, "asyncTrace1", 1234); // 异步asyncTrace1的结束点 FinishAsyncTrace(label, "asyncTrace1", 1234); // 异步asyncTrace1的结束点
sleep(1); sleep(1);
FinishAsyncTrace(label, "asyncTrace2", 3456); // 异步asyncTrace2的结束点 FinishAsyncTrace(label, "asyncTrace2", 3456); // 异步asyncTrace2的结束点
return 0; return 0;
} }
``` ```
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册