1# Copyright (c) 2021-2022 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 14##################################################### 15# below is the format of defining event # 16##################################################### 17#domain: domain name. [Only one domain name can be defined at the top] 18# 19#author: the author name who defined this event. 20#date: the date when this event was defined, format is YYYY-MM-DD. 21#logged: source file which refer to this event. 22#usage: the usage of this event. 23#//Define event name and event properties. 24#@EVENT_NAME: the event definition part begin. 25# // __BASE is used for defining the basic info of the event. 26# // "type" optional values are: FAULT, STATISTICS, SECURITY, BEHAVIOR. 27# // "level" optional values are: CRITICAL, MINOR. 28# // "tag" set tags with may used by subscriber of this event, multiple tags divided by space. 29# // "desc" full description of this event. 30# @PARAMETER: {type: parameter type, arrsize: array length(optional), desc: parameter description}. 31# // follow the __BASE block, each line defines a parameter of this event. 32# // "type" optional values are: INT8, UINT8, INT16, UINT16, INT32, UINT32, INT64, UINT64, FLOAT, DOUBLE, STRING. 33# // "arrsize" of the parameter is an array, set a non-zero value. 34# // "desc" full description of this parameter. 35 36##################################################### 37# Example of some hiviewdfx events definition # 38##################################################### 39 40domain: ACE 41 42JS_CARD_FIRST_RENDER_TIME: 43 __BASE: {type: STATISTIC, level: MINOR, desc: js card first render duration} 44 SESSION_ID: {type: STRING, desc: session id} 45 DURATION: {type: UINT64, desc: duration from js card created to first render} 46 47JS_CARD_FIRST_UPDATE_TIME: 48 __BASE: {type: STATISTIC, level: MINOR, desc: js card first update duration} 49 SESSION_ID: {type: STRING, desc: session id} 50 DURATION: {type: UINT64, desc: duration from js card first update to render} 51 52FRAMEWORK_APP_START_EXCEPTION: 53 __BASE: { type: FAULT, level: MINOR, desc: application start exception } 54 ERROR_TYPE: { type: INT32, desc: error type } 55 PACKAGE_NAME: { type: STRING, desc: package name } 56 57FRAMEWORK_PAGE_ROUTER_EXCEPTION: 58 __BASE: { type: FAULT, level: MINOR, desc: page router exception } 59 ERROR_TYPE: { type: INT32, desc: error type } 60 PACKAGE_NAME: { type: STRING, desc: package name } 61 PAGE_NAME: { type: STRING, desc: page name } 62 63COMPONENT_EXCEPTION: 64 __BASE: { type: FAULT, level: MINOR, desc: component exception } 65 ERROR_TYPE: { type: INT32, desc: error type } 66 PACKAGE_NAME: { type: STRING, desc: package name } 67 68API_CHANNEL_EXCEPTION: 69 __BASE: { type: FAULT, level: MINOR, desc: API channel exception } 70 ERROR_TYPE: { type: INT32, desc: error type } 71 PACKAGE_NAME: { type: STRING, desc: package name } 72 73RENDER_EXCEPTION: 74 __BASE: { type: FAULT, level: MINOR, desc: render exception } 75 ERROR_TYPE: { type: INT32, desc: error type } 76 PACKAGE_NAME: { type: STRING, desc: package name } 77 RENDER_OBJECT_NAME: { type: STRING, desc: render object name } 78 79JS_EXCEPTION: 80 __BASE: { type: FAULT, level: MINOR, desc: JS exception } 81 ERROR_TYPE: { type: INT32, desc: error type } 82 PACKAGE_NAME: { type: STRING, desc: package name } 83 84ANIMATION_EXCEPTION: 85 __BASE: { type: FAULT, level: MINOR, desc: animation exception } 86 ERROR_TYPE: { type: INT32, desc: error type } 87 PACKAGE_NAME: { type: STRING, desc: package name } 88 89EVENT_EXCEPTION: 90 __BASE: { type: FAULT, level: MINOR, desc: event exception } 91 ERROR_TYPE: { type: INT32, desc: error type } 92 PACKAGE_NAME: { type: STRING, desc: package name } 93 94PLUGIN_EXCEPTION: 95 __BASE: { type: FAULT, level: MINOR, desc: plugin exception } 96 ERROR_TYPE: { type: INT32, desc: error type } 97 PACKAGE_NAME: { type: STRING, desc: package name } 98 99INTERNATIONALIZATION_EXCEPTION: 100 __BASE: { type: FAULT, level: MINOR, desc: internationalization exception } 101 ERROR_TYPE: { type: INT32, desc: error type } 102 PACKAGE_NAME: { type: STRING, desc: package name } 103 104ACCESSIBILITY_EXCEPTION: 105 __BASE: { type: FAULT, level: MINOR, desc: accessibility exception } 106 ERROR_TYPE: { type: INT32, desc: error type } 107 PACKAGE_NAME: { type: STRING, desc: package name } 108 109ACCESSIBILITY_FAIL: 110 __BASE: {type: FAULT, level: CRITICAL, tag: performance, desc: accessibility execute action exception} 111 BUNDLE_NAME: {type: STRING, desc: package name} 112 ABILITY_NAME: {type: STRING, desc: ability name} 113 PROCESS_NAME: {type: STRING, desc: process name} 114 ACTION_NAME: {type: STRING, desc: failed action name} 115 116FORM_EXCEPTION: 117 __BASE: { type: FAULT, level: MINOR, desc: form exception } 118 ERROR_TYPE: { type: INT32, desc: error type } 119 PACKAGE_NAME: { type: STRING, desc: package name } 120 121JS_ERROR: 122 __BASE: { type: FAULT, level: MINOR, desc: JS runtime exception } 123 PACKAGE_NAME: { type: STRING, desc: package name } 124 REASON: { type: STRING, desc: js runtime error reason } 125 SUMMARY: { type: STRING, desc: js runtime error summary } 126 FINGERPRINT: {type: STRING, desc: unique id for grouping same fault} 127 PANME: {type: STRING, desc: process name} 128 FIRST_FRAME: {type: STRING, desc: first stack info} 129 SECOND_FRAME: {type: STRING, desc: second stack info} 130 LAST_FRAME: {type: STRING, desc: last stack info} 131 132UI_BLOCK_3S: 133 __BASE: {type: FAULT, level: CRITICAL, desc: The thread is blocked for 3s } 134 UID: {type: INT32, desc: application uid} 135 PACKAGE_NAME: {type: STRING, desc: application package name} 136 PROCESS_NAME: {type: STRING, desc: application process name} 137 MSG: {type: STRING, desc: application event message} 138 CMD: {type: STRING, desc: application event cmd} 139 140UI_BLOCK_6S: 141 __BASE: {type: FAULT, level: CRITICAL, desc: The thread is blocked for 6s } 142 UID: {type: INT32, desc: application uid} 143 PACKAGE_NAME: {type: STRING, desc: application package name} 144 PROCESS_NAME: {type: STRING, desc: application process name} 145 MSG: {type: STRING, desc: application event message} 146 CMD: {type: STRING, desc: application event cmd} 147 148UI_BLOCK_RECOVERED: 149 __BASE: {type: FAULT, level: CRITICAL, desc: The thread is recovered } 150 UID: {type: INT32, desc: application uid} 151 PACKAGE_NAME: {type: STRING, desc: application package name} 152 PROCESS_NAME: {type: STRING, desc: application process name} 153 MSG: {type: STRING, desc: application event message} 154 CMD: {type: STRING, desc: application event cmd} 155 156UI_BLOCK_DIALOG: 157 __BASE: {type: FAULT, level: CRITICAL, desc: Dialog is displayed when the thread is blocked } 158 PID: {type: INT32, desc: application pid} 159 UID: {type: INT32, desc: application uid} 160 PACKAGE_NAME: {type: STRING, desc: application package name} 161 PROCESS_NAME: {type: STRING, desc: application process name} 162 MSG: {type: STRING, desc: application event message} 163 164JANK_STATS_APP: 165 __BASE: {type: STATISTIC, level: MINOR, tag: performance, desc: jank statistics} 166 STARTTIME: {type: INT64, desc: begin time since last report} 167 DURATION: {type: INT64, desc: duration since last report} 168 VERSION_CODE: {type: UINT32, desc: app version code} 169 VERSION_NAME: {type: STRING, desc: app version name} 170 BUNDLE_NAME: {type: STRING, desc: package name} 171 ABILITY_NAME: {type: STRING, desc: ability name} 172 PAGE_URL: {type: STRING, desc: page name} 173 JANK_STATS: {type: UINT16, arrsize: 8, desc: jank frame stats} 174 JANK_STATS_VER: {type: UINT32, desc: jank range version} 175 176INTERACTION_COMPLETED_LATENCY: 177 __BASE: {type: BEHAVIOR, level: MINOR, tag: performance, desc: interaction complete statistics} 178 APP_PID: {type: INT32, desc: app pid} 179 BUNDLE_NAME: {type: STRING, desc: package name} 180 PROCESS_NAME: {type: STRING, desc: process name} 181 ABILITY_NAME: {type: STRING, desc: ability name} 182 PAGE_URL: {type: STRING, desc: page url} 183 VERSION_CODE: {type: INT32, desc: version code} 184 VERSION_NAME: {type: STRING, desc: version name} 185 SCENE_ID: {type: STRING, desc: interaction scene id} 186 SOURCE_TYPE: {type: STRING, desc: scene source type} 187 INPUT_TIME: {type: UINT64, desc: input time when multimodel receive from kernel} 188 ANIMATION_START_LATENCY: {type: UINT64, desc: animation start time of the scene} 189 ANIMATION_END_LATENCY: {type: UINT64, desc: end time of the scene} 190 E2E_LATENCY: {type: UINT64, desc: end to end time} 191 NOTE: {type: STRING, desc: extra infomation} 192 193INTERACTION_APP_JANK: 194 __BASE: {type: BEHAVIOR, level: MINOR, tag: performance, desc: interaction jank statistics} 195 UNIQUE_ID: {type: INT32, desc: unique id} 196 SCENE_ID: {type: STRING, desc: interaction scene id} 197 PROCESS_NAME: {type: STRING, desc: process name} 198 MODULE_NAME: {type: STRING, desc: package name} 199 ABILITY_NAME: {type: STRING, desc: ability name} 200 PAGE_URL: {type: STRING, desc: page url} 201 VERSION_CODE: {type: INT32, desc: version code} 202 VERSION_NAME: {type: STRING, desc: version name} 203 STARTTIME: {type: UINT64, desc: interaction scene begin time} 204 DURATION: {type: UINT64, desc: interaction duration} 205 TOTAL_FRAMES: {type: INT32, desc: total app frames during the scene} 206 TOTAL_MISSED_FRAMES: {type: INT32, desc: total missed frames during the scene} 207 MAX_FRAMETIME: {type: UINT64, desc: max single frame time during the scene} 208 MAX_SEQ_MISSED_FRAMES: {type: INT32, desc: max successive missed frames during the scene} 209 NOTE: {type: STRING, desc: extra infomation} 210 211NON_MANUAL_POSTCARD_ACTION: 212 __BASE: {type: BEHAVIOR, level: MINOR, tag: performance, desc: non manual postcard action} 213 FORM_NAME: {type: STRING, desc: form name} 214 BUNDLE_NAME: {type: STRING, desc: bundle name} 215 ABILITY_NAME: {type: STRING, desc: ability name} 216 MODULE_NAME: {type: STRING, desc: module name} 217 DIMENSION: {type: INT32, desc: dimension} 218 219RICH_EDITOR_ERROR: 220 __BASE: { type: FAULT, level: CRITICAL, desc: Failed to add or delete text because the span range or index is abnormal. } 221 BUNDLE_NAME: { type: STRING, desc: bundle name } 222 VERSION_CODE: { type: INT32, desc: version code } 223 VERSION_NAME: { type: STRING, desc: version name } 224 ERROR_TYPE: { type: INT32, desc: error type } 225 SPAN_LENGTH: { type: INT32, desc: span length } 226 TEXT_LENGTH: { type: INT32, desc: text length } 227 SPAN_INDEX: { type: INT32, desc: span index } 228 229SCROLLABLE_ERROR: 230 __BASE: {type: FAULT, level: CRITICAL, desc: scrollable component error} 231 NODE_TYPE: {type: STRING, desc: node type} 232 ERROR_TYPE: {type: INT32, desc: error type} 233 SUB_ERROR_TYPE: {type: STRING, desc: sub error type} 234 BUNDLE_NAME: {type: STRING, desc: bundle name} 235 TARGET_API_VERSION: {type: INT32, desc: target api version} 236 VERSION_CODE: {type: INT32, desc: version code} 237 VERSION_NAME: {type: STRING, desc: version name} 238 239TEXTFIELD_ERROR: 240 __BASE: {type: FAULT, level: CRITICAL, desc: Wrong in textfield} 241 PACKAGE_NAME: {type: STRING, desc: application package name} 242 PAGE_URL: {type: STRING, desc: page url} 243 244CLIPBOARD_FAIL: 245 __BASE: {type: FAULT, level: CRITICAL, desc: Wrong in clipboard } 246 PACKAGE_NAME: {type: STRING, desc: application package name} 247 PAGE_URL: {type: STRING, desc: page url}