1#  Copyright (c) 2022-2024 Huawei Device Co., Ltd.
2#  Licensed under the Apache License, Version 2.0 (the "License");
3#  you may not use this file except in compliance with the License.
4#  You may obtain a copy of the License at
5#
6#      http://www.apache.org/licenses/LICENSE-2.0
7#
8#  Unless required by applicable law or agreed to in writing, software
9#  distributed under the License is distributed on an "AS IS" BASIS,
10#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11#  See the License for the specific language governing permissions and
12#  limitations under the License.
13
14domain: HIVIEWDFX
15
16PLUGIN_LOAD:
17  __BASE: {type: BEHAVIOR, level: CRITICAL, tag: hiviewPlugin, desc: load hiview plugin}
18  NAME: {type: STRING, desc: plugin name}
19  RESULT: {type: UINT32, desc: result of plugin loading}
20  DURATION: {type: UINT32, desc: loading duration }
21
22PLUGIN_UNLOAD:
23  __BASE: {type: BEHAVIOR, level: CRITICAL, tag: hiviewPlugin, desc: unload hiview plugin}
24  NAME: {type: STRING, desc: plugin name}
25  RESULT: {type: UINT32, desc: result of plugin unloading}
26  DURATION: {type: UINT32, desc: unloading duration } # Not supported, default value 0.
27
28PLUGIN_STATS:
29  __BASE: {type: STATISTIC, level: CRITICAL, tag: hiviewPlugin, desc: statistics of events handled by plugins}
30  NAME: {type: STRING, desc: plugin name}
31  AVG_TIME: {type: UINT32, desc: average time spent}
32  TOP_K_TIME: {type: UINT32, arrsize: 3, desc: K times that took the most time}
33  TOP_K_EVENT: {type: STRING, arrsize: 3, desc: K events that took the most time}
34  TOTAL: {type: UINT32, desc: total events}
35
36PLUGIN_FAULT:
37  __BASE: {type: FAULT, level: CRITICAL, tag: hiviewPlugin, desc: plugin fault}
38  NAME: {type: STRING, desc: plugin name}
39  REASON: {type: STRING, desc: reason of plugin fault}
40
41APP_USAGE:
42  __BASE: {type: STATISTIC, level: CRITICAL, tag: usageStats, desc: application usage statistics}
43  PACKAGE: {type: STRING, desc: package name}
44  VERSION: {type: STRING, desc: version name}
45  USAGE: {type: UINT32, desc: usage duration}
46  DATE: {type: STRING, desc: usage date}
47  TOTAL_START_NUM: {type: UINT32, desc: total start number}
48
49SYS_USAGE:
50  __BASE: {type: STATISTIC, level: CRITICAL, tag: usageStats, desc: system usage statistics}
51  START: {type: UINT64, desc: start time}
52  END: {type: UINT64, desc: end time}
53  POWER: {type: UINT64, desc: power_on duration}
54  RUNNING: {type: UINT64, desc: running duration}
55
56PROFILE_STAT:
57  __BASE: {type: STATISTIC, level: CRITICAL, desc: hisysevent profile status}
58  MAX_TOTAL_COUNT: {type: UINT32, desc: maximum total count}
59  MAX_TOTAL_SIZE: {type: UINT32, desc: maximum total size}
60  DOMAINS: {type: STRING, arrsize: 100, desc: measured domains}
61  DOMAIN_DETAIL: {type: UINT32, arrsize: 100, desc: domain detail}
62  TOTAL_COUNT: {type: UINT32, desc: total count}
63  TOTAL_SIZE: {type: UINT32, desc: total size}
64  BREAK_COUNT: {type: UINT8, desc: break count}
65  BREAK_DURATION: {type: UINT64, desc: break duration}
66  MIN_SPEED: {type: UINT32, desc: minimum speed}
67  MAX_SPEED: {type: UINT32, desc: maximum speed}
68  REAL_COUNT: {type: UINT32, arrsize: 10, desc: real time cost distribution}
69  PROCESS_COUNT: {type: UINT32, arrsize: 10, desc: process time cost distribution}
70  WAIT_COUNT: {type: UINT32, arrsize: 10, desc: wait count cost distribution}
71  FINISHED_COUNT: {type: UINT32, desc: finished count}
72  OVER_REAL_COUNT: {type: UINT32, desc: over real time benchmark count}
73  OVER_REAL_PCT: {type: UINT32, desc: over real time benchmark percentage}
74  OVER_PROC_COUNT: {type: UINT32, desc: over process time cost benchmark count}
75  OVER_PROC_PCT: {type: UINT32, desc: over process time cost percentage}
76
77BREAK:
78  __BASE: {type: BEHAVIOR, level: CRITICAL, desc: hisysevent is break}
79  TOTAL_COUNT: {type: UINT32, desc: total count}
80  TOTAL_SIZE: {type: UINT32, desc: total size}
81  REAL_SPEED: {type: UINT32, desc: real time of handle hisysevent each second}
82  PROC_SPEED: {type: UINT32, desc: process time of handle hisysevent each second}
83  AVG_REAL_TIME: {type: DOUBLE, desc: average real time cost}
84  AVG_PROC_TIME: {type: DOUBLE, desc: average process time cost}
85  AVG_WAIT_TIME: {type: DOUBLE, desc: average wait time cost}
86  TOP_EVENT: {type: STRING, arrsize: 3, desc: topN events}
87  TOP_EVENT_COUNT: {type: UINT32, arrsize: 3, desc: count of topN events}
88  TOP_DOMAIN: {type: STRING, arrsize: 3, desc: topN domains}
89  TOP_DOMAIN_COUNT: {type: UINT32, arrsize: 3, desc: count of topN domains}
90
91RECOVER:
92  __BASE: {type: BEHAVIOR, level: CRITICAL, desc: hisysevent is recover}
93  DURATION: {type: INT64, desc: recover after break duration}
94
95XPOWER_STACKTRACE:
96  __BASE: {type: STATISTIC, level: MINOR, tag: PowerStats, desc: stack trace info}
97  TAGNAME: {type: STRING,  desc: tag name}
98  INFO: {type: STRING,  desc: additional information}
99  STACKTRACE: {type: STRING,  desc: stack data}
100
101CPU_COLLECTION:
102  __BASE: {type: FAULT, level: MINOR, desc: HiView CPU Unified Collection Event}
103
104EVENTS_DAILY:
105  __BASE: {type: FAULT, level: MINOR, desc: HiView daily logging data collection}
106  DATE: {type: STRING, desc: date when logging data is collected}
107
108DUMP_CATCHER_STATS:
109  __BASE: {type: STATISTIC, level: MINOR, tag: HivewDFX, desc: dumpcatcher stats}
110  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}
111  CALLER_FUNC_NAME: {type: STRING, desc: caller elf name}
112  TARGET_PROCESS_NAME: {type: STRING, desc: target process name}
113  PID: {type: UINT32, desc: target process id}
114  RESULT: {type: UINT32, desc: result code}
115  SUMMARY: {type: STRING, desc: dumpcatcher msg if result is failure}
116  REQUEST_TIME: {type: UINT32, desc: the time when calling dumpcatcher}
117  OVERALL_TIME: {type: UINT32, desc: overall time of dumpcatacher}
118  SIGNAL_TIME: {type: UINT32, desc: from faultloggerd request to target signal handler}
119  DUMPER_START_TIME: {type: UINT32, desc: from signal handler to the entry of processdump}
120  UNWIND_TIME: {type: UINT32, desc: from signal handler to the entry of processdump}
121
122DEL_EXPORTED_EVENTS:
123  __BASE: {type: STATISTIC, level: MINOR, desc: record the periodic deletion of exported event files, preserve: true}
124  MODULE_NAME: {type: STRING, desc: name of the module which export the deleted event files}
125  BEGIN_SEQS: {type: INT64, arrsize: 100, desc: list consists of sysevent begin sequence stored in all of the deleted event files}
126  END_SEQS: {type: INT64, arrsize: 100, desc: list consists of sysevent end sequence stored in all of the deleted event files}
127  EVENT_NAMES: {type: STRING, arrsize: 100, desc: list consists of sysevent name stored in all of the deleted event files}
128