未验证 提交 dea7a17e 编写于 作者: Z zengyawen 提交者: Gitee

update zh-cn/application-dev/dfx/hitracemeter-guidelines.md.

Signed-off-by: Nzengyawen <zengyawen1@huawei.com>
上级 1b83883e
......@@ -2,7 +2,7 @@
## 场景介绍
HiTraceMeter为开发者提供系统性能打点接口。开发者通过在自己的业务逻辑中的关键代码位置调用HiTraceMeter接口提供的API接口,能够有效踪进程轨迹、查看系统性能。
HiTraceMeter为开发者提供系统性能打点接口。开发者通过在自己的业务逻辑中的关键代码位置调用HiTraceMeter接口提供的API接口,能够有效踪进程轨迹、查看系统性能。
## 接口说明
......@@ -12,15 +12,15 @@ HiTraceMeter为开发者提供系统性能打点接口。开发者通过在自
| 接口名 | 返回值 | 描述 |
| ---------------------------------------------------------------------------- | --------- | ------------ |
| hiTraceMeter.startTrace(name: string, taskId: number, expectedTime?: number) | void | 标记一个预追踪耗时任务的开始。如果有多个相同name的任务需要追踪或者对同一个任务要追踪多次,并且任务同时被执行,则每次调用startTrace的taskId不相同。如果具有相同name的任务是串行执行的,则taskId可以相同。 |
| hiTraceMeter.startTrace(name: string, taskId: number, expectedTime?: number) | void | 标记一个预跟踪耗时任务的开始。如果有多个相同name的任务需要跟踪或者对同一个任务要跟踪多次,并且任务同时被执行,则每次调用startTrace的taskId不相同。如果具有相同name的任务是串行执行的,则taskId可以相同。 |
| hiTraceMeter.finishTrace(name: string, taskId: number) | void | name和taskId必须与流程开始的hiTraceMeter.startTrace对应参数值保持一致。 |
| hiTraceMeter.traceByValue(name: string, value: number) | void | 用来标记一个预踪的数值变量,该变量的数值会不断变化。|
| hiTraceMeter.traceByValue(name: string, value: number) | void | 用来标记一个预踪的数值变量,该变量的数值会不断变化。|
## 开发步骤
在应用启动执行页面加载后,开始分布式跟踪,完成业务之后,停止分布式跟踪。
1. 新建一个JS应用工程,在“Project”窗口点击“entry > src > main > js > default > pages > index”,打开工程中的“index.js”文件,在页面执行加载后,在自己的业务中调用hiTraceMeter的接口,进行性能打点踪,示例代码如下:
1. 新建一个JS应用工程,在“Project”窗口点击“entry > src > main > js > default > pages > index”,打开工程中的“index.js”文件,在页面执行加载后,在自己的业务中调用hiTraceMeter的接口,进行性能打点踪,示例代码如下:
```js
import hiTraceMeter from '@ohos.hiTraceMeter'
......@@ -32,31 +32,31 @@ HiTraceMeter为开发者提供系统性能打点接口。开发者通过在自
onInit() {
this.title = this.$t('strings.world');
//从startTrace到finishTrace流程的耗时期望为5ms
// 从startTrace到finishTrace流程的耗时期望为5ms
hiTraceMeter.startTrace("business", 1);
hiTraceMeter.startTrace("business", 1, 5);
//踪并行执行的同名任务
//踪并行执行的同名任务
hiTraceMeter.startTrace("business", 1);
//业务流程
// 业务流程
console.log(`business running`);
hiTraceMeter.startTrace("business", 2); //第二个追踪的任务开始,同时第一个追踪的同名任务还没结束,出现了并行执行,对应接口的taskId需要不同。
//业务流程
hiTraceMeter.startTrace("business", 2); // 第二个跟踪任务开始,同时第一个跟踪的同名任务还没结束,出现了并行执行,对应接口的taskId需要不同。
// 业务流程
console.log(`business running`);
hiTraceMeter.finishTrace("business", 1);
//业务流程
// 业务流程
console.log(`business running`);
hiTraceMeter.finishTrace("business", 2);
//踪串行执行的同名任务
//踪串行执行的同名任务
hiTraceMeter.startTrace("business", 1);
//业务流程
// 业务流程
console.log(`business running`);
hiTraceMeter.finishTrace("business", 1); //第一个追踪的任务结束
//业务流程
hiTraceMeter.finishTrace("business", 1); // 第一个跟踪的任务结束
// 业务流程
console.log(`business running`);
hiTraceMeter.startTrace("business", 1); //第二个追踪的同名任务开始,同名的待追踪任务串行执行。
//业务流程
hiTraceMeter.startTrace("business", 1); // 第二个跟踪的同名任务开始,同名的待跟踪任务串行执行。
// 业务流程
console.log(`business running`);
let traceCount = 3;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册