鸿蒙开源组件——系统事件记录接口

jacksky
发布于 2021-11-24 19:00
浏览
0收藏

HiSysEvent组件

简介

HiSysEvent提供OpenHarmony埋点接口,通过在关键路径埋点记录系统在运行过程中的重要信息,辅助开发者定位问题,此外还支持开发者将数据上传到云进行大数据质量度量。

图 1 HiSysEvent架构图鸿蒙开源组件——系统事件记录接口-鸿蒙开发者社区

目录

/base/hiviewdfx/hisysevent   # hisysevent部件代码
├── interfaces               # 对外接口存放目录
    └── native               # C++接口
        └── innerkits        # 对内部子系统暴露的C++接口

说明

接口说明

C++埋点接口如下:

表 1 HiSysEvent接口介绍

接口名

描述

template<typename... Types> static int Write(const std::string &domain, const std::string &eventName, EventType type, Types... keyValues)

接口功能:记录系统事件。

输入参数:

  • domain:事件的相关领域,需要使用预置领域请参考Domain,可自定义领域。自定义领域长度在16个字符以内,有效的字符是0-9、A-Z,以字母开头。
  • eventName:事件名,长度在32个字符以内,有效的字符是0-9、a-z、A-Z、_,以字母开头,不能以_结尾。
  • type:事件类型,参考EventType。
  • keyValues:事件参数键值对,支持基本的数据类型、std::string,以及std::vector<基本类型>、std:vector<std::string>。参数名长度在48个字符以内,有效的字符是0-9、a-z、A-Z、_,以字母开头,不能以_结尾。参数名的个数在32个以内。

返回值:成功返回0,错误返回小于0的值。

使用说明

C++接口实例

  1. 源代码开发

    在类定义头文件或者类实现源文件中,包含HiSysEvent头文件:

    #include "hisysevent.h"
    

假设在业务关注应用启动时间start_app,在业务类实现相关源文件中使用(调用接口埋点):

HiSysEvent::Write(HiSysEvent::Domain::AAFWK, "start_app", HiSysEvent::EventType::BEHAVIOR, "app_name", "com.demo");

编译设置,在BUILD.gn里增加子系统SDK依赖:

external_deps = [ "hisysevent_native:libhisysevent" ]

相关仓

DFX子系统

hiviewdfx_hiview

hiviewdfx_hilog

hiviewdfx_hiappevent

hiviewdfx_hisysevent

hiviewdfx_faultloggerd

hiviewdfx_hilog_lite

hiviewdfx_hievent_lite

hiviewdfx_hiview_lite

hiviewdfx_hisysevent-master.zip 50.03K 11次下载
已于2021-11-24 19:00:16修改
收藏
回复
举报
回复
    相关推荐