HiAppEvent

概述

HiAppEvent模块提供应用事件打点功能。

为应用程序提供事件打点功能,记录运行过程中上报的故障事件、统计事件、安全事件和用户行为事件。基于事件信息,开发者可以分析应用的运行状态。

系统能力: SystemCapability.HiviewDFX.HiAppEvent

起始版本: 8

汇总

文件

名称 描述
hiappevent.h HiAppEvent模块的应用事件打点函数定义。
引用文件:<hiappevent/hiappevent.h>
:libhiappevent_ndk.z.so
hiappevent_cfg.h 定义事件打点配置函数的所有配置项名称。
引用文件:<hiappevent/hiappevent_event.h>
:libhiappevent_ndk.z.so
hiappevent_event.h 定义所有预定义事件的事件名称。
引用文件:<hiappevent/hiappevent_param.h>
:libhiappevent_ndk.z.so
hiappevent_param.h 定义所有预定义事件的参数名称。
引用文件:<hiappevent/hiappevent_cfg.h>
:libhiappevent_ndk.z.so

宏定义

名称 描述
DISABLE "disable" 事件打点开关。
MAX_STORAGE "max_storage" 事件文件目录存储配额大小。
EVENT_USER_LOGIN "hiappevent.user_login" 用户登录事件。
EVENT_USER_LOGOUT "hiappevent.user_logout" 用户登出事件。
EVENT_DISTRIBUTED_SERVICE_START "hiappevent.distributed_service_start" 分布式服务事件。
PARAM_USER_ID "user_id" 用户ID。
PARAM_DISTRIBUTED_SERVICE_NAME "ds_name" 分布式服务名称。
PARAM_DISTRIBUTED_SERVICE_INSTANCE_ID "ds_instance_id" 分布式服务实例ID。

类型定义

名称 描述
typedef struct ParamListNode * ParamList 事件参数列表节点。

枚举

名称 描述
EventType { FAULT = 1, STATISTIC = 2, SECURITY = 3, BEHAVIOR = 4 } 事件类型。

函数

名称 描述
ParamList OH_HiAppEvent_CreateParamList (void) 创建一个指向参数列表对象的指针。
void OH_HiAppEvent_DestroyParamList (ParamList list) 销毁一个指向参数列表对象的指针,释放其分配内存。
ParamList OH_HiAppEvent_AddBoolParam (ParamList list, const char *name, bool boolean) 添加一个布尔参数到参数列表中。
ParamList OH_HiAppEvent_AddBoolArrayParam (ParamList list, const char *name, const bool *booleans, int arrSize) 添加一个布尔数组参数到参数列表中。
ParamList OH_HiAppEvent_AddInt8Param (ParamList list, const char *name, int8_t num) 添加一个int8_t参数到参数列表中。
ParamList OH_HiAppEvent_AddInt8ArrayParam (ParamList list, const char *name, const int8_t *nums, int arrSize) 添加一个int8_t数组参数到参数列表中。
ParamList OH_HiAppEvent_AddInt16Param (ParamList list, const char *name, int16_t num) 添加一个int16_t参数到参数列表中。
ParamList OH_HiAppEvent_AddInt16ArrayParam (ParamList list, const char *name, const int16_t *nums, int arrSize) 添加一个int16_t数组参数到参数列表中。
ParamList OH_HiAppEvent_AddInt32Param (ParamList list, const char *name, int32_t num) 添加一个int32_t参数到参数列表中。
ParamList OH_HiAppEvent_AddInt32ArrayParam (ParamList list, const char *name, const int32_t *nums, int arrSize) 添加一个int32_t数组参数到参数列表中。
ParamList OH_HiAppEvent_AddInt64Param (ParamList list, const char *name, int64_t num) 添加一个int64_t参数到参数列表中。
ParamList OH_HiAppEvent_AddInt64ArrayParam (ParamList list, const char *name, const int64_t *nums, int arrSize) 添加一个int64_t数组参数到参数列表中。
ParamList OH_HiAppEvent_AddFloatParam (ParamList list, const char *name, float num) 添加一个float参数到参数列表中。
ParamList OH_HiAppEvent_AddFloatArrayParam (ParamList list, const char *name, const float *nums, int arrSize) 添加一个float数组参数到参数列表中。
ParamList OH_HiAppEvent_AddDoubleParam (ParamList list, const char *name, double num) 添加一个double参数到参数列表中。
ParamList OH_HiAppEvent_AddDoubleArrayParam (ParamList list, const char *name, const double *nums, int arrSize) 添加一个double数组参数到参数列表中。
ParamList OH_HiAppEvent_AddStringParam (ParamList list, const char *name, const char *str) 添加一个字符串参数到参数列表中。
ParamList OH_HiAppEvent_AddStringArrayParam (ParamList list, const char *name, const char *const *strs, int arrSize) 添加一个字符串数组参数到参数列表中。
int OH_HiAppEvent_Write (const char *domain, const char *name, enum EventType type, const ParamList list) 实现对参数为列表类型的应用事件打点。
bool OH_HiAppEvent_Configure (const char *name, const char *value) 实现应用事件打点的配置功能。

宏定义说明

DISABLE

#define DISABLE   "disable"

描述

事件打点开关。

起始版本: 8

EVENT_DISTRIBUTED_SERVICE_START

#define EVENT_DISTRIBUTED_SERVICE_START   "hiappevent.distributed_service_start"

描述

分布式服务事件。

起始版本: 8

EVENT_USER_LOGIN

#define EVENT_USER_LOGIN   "hiappevent.user_login"

描述

用户登录事件。

起始版本: 8

EVENT_USER_LOGOUT

#define EVENT_USER_LOGOUT   "hiappevent.user_logout"

描述

用户登出事件。

起始版本: 8

MAX_STORAGE

#define MAX_STORAGE   "max_storage"

描述

事件文件目录存储配额大小。

起始版本: 8

PARAM_DISTRIBUTED_SERVICE_INSTANCE_ID

#define PARAM_DISTRIBUTED_SERVICE_INSTANCE_ID   "ds_instance_id"

描述

分布式服务实例ID。

起始版本: 8

PARAM_DISTRIBUTED_SERVICE_NAME

#define PARAM_DISTRIBUTED_SERVICE_NAME   "ds_name"

描述

分布式服务名称。

起始版本: 8

PARAM_USER_ID

#define PARAM_USER_ID   "user_id"

描述

用户ID。

起始版本: 8

类型定义说明

ParamList

typedef struct ParamListNode* ParamList

描述

事件参数列表节点。

起始版本: 8

枚举类型说明

EventType

enum EventType

描述

事件类型。

建议开发者根据不同的使用场景选择不同的事件类型。

起始版本: 8

枚举值 描述
FAULT 故障事件类型
STATISTIC 统计事件类型
SECURITY 安全事件类型
BEHAVIOR 行为事件类型

函数说明

OH_HiAppEvent_AddBoolArrayParam()

ParamList OH_HiAppEvent_AddBoolArrayParam (ParamList list, const char * name, const bool * booleans, int arrSize )

描述

添加一个布尔数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
booleans 需要添加的布尔数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddBoolParam()

ParamList OH_HiAppEvent_AddBoolParam (ParamList list, const char * name, bool boolean )

描述

添加一个布尔参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
boolean 需要添加的布尔参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddDoubleArrayParam()

ParamList OH_HiAppEvent_AddDoubleArrayParam (ParamList list, const char * name, const double * nums, int arrSize )

描述

添加一个double数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
nums 需要添加的double数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddDoubleParam()

ParamList OH_HiAppEvent_AddDoubleParam (ParamList list, const char * name, double num )

描述

添加一个double参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
num 需要添加的double参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddFloatArrayParam()

ParamList OH_HiAppEvent_AddFloatArrayParam (ParamList list, const char * name, const float * nums, int arrSize )

描述

添加一个float数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
nums 需要添加的float数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddFloatParam()

ParamList OH_HiAppEvent_AddFloatParam (ParamList list, const char * name, float num )

描述

添加一个float参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
num 需要添加的float参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt16ArrayParam()

ParamList OH_HiAppEvent_AddInt16ArrayParam (ParamList list, const char * name, const int16_t * nums, int arrSize )

描述

添加一个int16_t数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
nums 需要添加的int16_t数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt16Param()

ParamList OH_HiAppEvent_AddInt16Param (ParamList list, const char * name, int16_t num )

描述

添加一个int16_t参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
num 需要添加的int16_t参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt32ArrayParam()

ParamList OH_HiAppEvent_AddInt32ArrayParam (ParamList list, const char * name, const int32_t * nums, int arrSize )

描述

添加一个int32_t数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
nums 需要添加的int32_t数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt32Param()

ParamList OH_HiAppEvent_AddInt32Param (ParamList list, const char * name, int32_t num )

描述

添加一个int32_t参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
num 需要添加的int32_t参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt64ArrayParam()

ParamList OH_HiAppEvent_AddInt64ArrayParam (ParamList list, const char * name, const int64_t * nums, int arrSize )

描述

添加一个int64_t数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
nums 需要添加的int64_t数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt64Param()

ParamList OH_HiAppEvent_AddInt64Param (ParamList list, const char * name, int64_t num )

描述

添加一个int64_t参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
num 需要添加的int64_t参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt8ArrayParam()

ParamList OH_HiAppEvent_AddInt8ArrayParam (ParamList list, const char * name, const int8_t * nums, int arrSize )

描述

添加一个int8_t数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
nums 需要添加的int8_t数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddInt8Param()

ParamList OH_HiAppEvent_AddInt8Param (ParamList list, const char * name, int8_t num )

描述

添加一个int8_t参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
num 需要添加的int8_t参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddStringArrayParam()

ParamList OH_HiAppEvent_AddStringArrayParam (ParamList list, const char * name, const char *const * strs, int arrSize )

描述

添加一个字符串数组参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
strs 需要添加的字符串数组参数值。
arrSize 需要添加的参数数组大小。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_AddStringParam()

ParamList OH_HiAppEvent_AddStringParam (ParamList list, const char * name, const char * str )

描述

添加一个字符串参数到参数列表中。

起始版本: 8

参数:

名称 描述
list 需要添加参数的参数列表指针。
name 需要添加的参数名称。
str 需要添加的字符串参数值。

返回:

添加参数后的参数列表指针。

OH_HiAppEvent_Configure()

bool OH_HiAppEvent_Configure (const char * name, const char * value )

描述

实现应用事件打点的配置功能。

应用事件打点配置接口,用于配置事件打点开关、事件文件目录存储配额大小等功能。

起始版本: 8

参数:

名称 描述
name 配置项名称。
value 配置项值。

返回:

配置结果。

OH_HiAppEvent_CreateParamList()

ParamList OH_HiAppEvent_CreateParamList (void )

描述

创建一个指向参数列表对象的指针。

起始版本: 8

返回:

指向参数列表对象的指针。

OH_HiAppEvent_DestroyParamList()

void OH_HiAppEvent_DestroyParamList (ParamList list)

描述

销毁一个指向参数列表对象的指针,释放其分配内存。

起始版本: 8

参数:

名称 描述
list 参数列表对象指针。

OH_HiAppEvent_Write()

int OH_HiAppEvent_Write (const char * domain, const char * name, enum EventType type, const ParamList list )

描述

实现对参数为列表类型的应用事件打点。

在应用事件打点前,该接口会先对该事件的参数进行校验。如果校验成功,则接口会将事件写入事件文件。

起始版本: 8

参数:

名称 描述
domain 事件领域。您可以根据需要自定义事件领域。
name 事件名称。您可以根据需要自定义事件名称。
type 事件类型,在EventType中定义。
list 事件参数列表,每个参数由参数名和参数值组成。

返回:

如果事件参数校验成功,则返回0,将事件写入事件文件;如果事件中存在无效参数,则返回正值,丢弃无效参数后将事件写入事件文件;如果事件参数校验失败,则返回负值,并且事件将不会写入事件文件。