#  Copyright (c) 2021-2025 Huawei Device Co., Ltd.
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.

domain: AAFWK

LIFECYCLE_TIMEOUT:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: ability timeout}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: main thread stacktrace}

LIFECYCLE_TIMEOUT_WARNING:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: ability timeout}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: main thread stacktrace}

LIFECYCLE_HALF_TIMEOUT:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: ability timeout}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: main thread stacktrace}

LIFECYCLE_HALF_TIMEOUT_WARNING:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: ability timeout}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: main thread stacktrace}

APP_LIFECYCLE_TIMEOUT:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: application timeout}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}

JS_ERROR:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: js runtime error}
  PACKAGE_NAME: {type: STRING, desc: app package name}
  VERSION: {type: STRING, desc: app version}
  TYPE: {type: INT32, desc: js crash type}
  HAPPEN_TIME: {type: INT64, desc: fault trigger time}
  REASON: {type: STRING, desc: error type}
  JSVM: {type: STRING, desc: js runtime type}
  SUMMARY: {type: STRING, desc: fault summary}

THREAD_BLOCK_3S:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: application freeze}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: stacktrace of current process}

THREAD_BLOCK_6S:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: application freeze}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: main thread stacktrace}

APP_INPUT_BLOCK:
  __BASE: {type: FAULT, level: CRITICAL, tag: STABILITY, desc: application freeze}
  PID: {type: INT32, desc: process id}
  UID: {type: INT32, desc: app uid}
  PACKAGE_NAME: {type: STRING, desc: package name}
  PROCESS_NAME: {type: STRING, desc: process name}
  MSG: {type: STRING, desc: application event message}
  STACK: {type: STRING, desc: main thread stacktrace}
# fault event

START_ABILITY_ERROR:
  __BASE: {type: FAULT, level: MINOR, tag: ability, desc: start ability error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  APP_INDEX: {type: INT32, desc: app index}
  ERROR_MESSAGE: {type: STRING, desc: start ability error message}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}

TERMINATE_ABILITY_ERROR:
  __BASE: {type: FAULT, level: MINOR, tag: ability, desc: terminate ability error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

START_EXTENSION_ERROR:
  __BASE: {type: FAULT, level: MINOR, tag: ability, desc: start extensionAbility error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

STOP_EXTENSION_ERROR:
  __BASE: {type: FAULT, level: MINOR, tag: ability, desc: stop extensionAbility error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

CONNECT_SERVICE_ERROR:
  __BASE: {type: FAULT, level: MINOR, tag: ability, desc: connect serviceExtensionAbility error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

DISCONNECT_SERVICE_ERROR:
  __BASE: {type: FAULT, level: MINOR, tag: ability, desc: disconnect serviceExtensionAbility error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

UI_EXTENSION_ERROR:
  __BASE: {type: FAULT, level: CRITICAL, tag: ability, desc: ui extension error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLER_UID: {type: INT32, desc: caller app uid}
  LIFE_CYCLE: {type: STRING, desc: life cycle}
  APP_INDEX: {type: INT32, desc: app index}
  ERROR_REASON: {type: STRING, desc: error reason}
  PERSISTENT_ID: {type: INT32, desc: persistent id}

UI_SERVICE_EXTENSION_ERROR:
  __BASE: {type: FAULT, level: CRITICAL, tag: ability, desc: ui service extension error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLER_UID: {type: INT32, desc: caller app uid}
  LIFE_CYCLE: {type: STRING, desc: life cycle}
  APP_INDEX: {type: INT32, desc: app index}
  ERROR_REASON: {type: STRING, desc: error reason}

EXECUTE_INSIGHT_INTENT_ERROR:
  __BASE: {type: FAULT, level: CRITICAL, tag: ability, desc: execute insight intent error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  INTENTION_NAME: {type: STRING, desc: intention name}
  APP_INDEX: {type: INT32, desc: app index}
  ERROR_REASON: {type: STRING, desc: error reason}
  TIME: {type: INT64, desc: error time}

STARTUP_TASK_ERROR:
  __BASE: {type: FAULT, level: CRITICAL, tag: ability, desc: execute insight intent error}
  USER_ID: {type: INT32, desc: userId}
  ERROR_CODE: {type: INT32, desc: error code}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  PROCESS_NAME: {type: STRING, desc: process name}
  APP_INDEX: {type: INT32, desc: app index}
  ERROR_REASON: {type: STRING, desc: error reason}
  TIME: {type: INT64, desc: error time}

# ability behavior event

START_ABILITY:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: start ability}
  USER_ID: {type: INT32, desc: userId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

CLOSE_ABILITY:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: close ability}

TERMINATE_ABILITY:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: terminate ability}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  ABILITY_NAME: {type: STRING, desc: ability name}

ABILITY_ONFOREGROUND:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: ability onForeground}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  BUNDLE_TYPE: {type: INT32, desc: 'type of componment, atomic service or normal app'}
  CALLER_BUNDLENAME: {type: STRING, desc: caller bundle name}

ABILITY_ONBACKGROUND:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: ability onBackground}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  BUNDLE_TYPE: {type: INT32, desc: 'type of componment, atomic service or normal app'}

ABILITY_ONACTIVE:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: ability onActive}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  ABILITY_TYPE: {type: INT32, desc: ability type}
  BUNDLE_TYPE: {type: INT32, desc: 'type of componment, atomic service or normal app'}
  CALLER_BUNDLENAME: {type: STRING, desc: caller bundle name}

ABILITY_ONINACTIVE:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: ability onInactive}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  BUNDLE_TYPE: {type: INT32, desc: 'type of componment, atomic service or normal app'}

START_ABILITY_BY_APP_LINKING:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: start ability by App Linking}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  CALLER_BUNDLENAME: {type: STRING, desc: caller bundle name}
  URI: {type: STRING, desc: uri information}

KILL_PROCESS_WITH_REASON:
  __BASE: {type: STATISTIC, level: MINOR, desc: kill process with reason}
  CALLER_PID: {type: INT32, desc: caller pid}
  PID: {type: INT32, desc: killed pid}
  EXIT_MESSAGE: {type: STRING, desc: exit message}
  SHOULD_KILL_FOREGROUND: {type: INT32, desc: should kill foreground process or not}
  MESSAGE: {type: STRING, desc: kill message}
  ERROR_CODE: {type: INT32, desc: error code}
# serviceExtensionAbility behavior event

START_SERVICE:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: start serviceExtensionAbility}
  USER_ID: {type: INT32, desc: userId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  EXTENSION_TYPE: {type: INT32, desc: extension type}
  TIME: {type: INT64, desc: start service time}
  PID: {type: INT32, desc: processId}
  PROCESS_NAME: {type: STRING, desc: process name}
  CALLER_PROCESS_ID: {type: INT32, desc: caller processId}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}

STOP_SERVICE:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: stop serviceExtensionAbility}
  USER_ID: {type: INT32, desc: userId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  EXTENSION_TYPE: {type: INT32, desc: extension type}
  TIME: {type: INT64, desc: stop service time}
  PID: {type: INT32, desc: processId}
  PROCESS_NAME: {type: STRING, desc: process name}
  CALLER_PROCESS_ID: {type: INT32, desc: caller processId}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}

CONNECT_SERVICE:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: connect serviceAbility}
  USER_ID: {type: INT32, desc: userId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  TIME: {type: INT64, desc: connect service time}
  PID: {type: INT32, desc: processId}
  PROCESS_NAME: {type: STRING, desc: process name}
  CALLER_PROCESS_ID: {type: INT32, desc: caller processId}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}

DISCONNECT_SERVICE:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: ability, desc: disconnect serviceAbility}
  TIME: {type: INT64, desc: disconnect service time}
  PID: {type: INT32, desc: processId}
  PROCESS_NAME: {type: STRING, desc: process name}
  CALLER_PROCESS_ID: {type: INT32, desc: caller processId}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}

START_ABILITY_OTHER_EXTENSION:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: start extension by startAbility}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  EXTENSION_TYPE: {type: INT32, desc: extension type}
  CALLER_BUNLED_NAME: {type: STRING, desc: caller bunle name}

# app behavior event

APP_ATTACH:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: attach app}
  APP_PID: {type: INT32, desc: app pid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  PROCESS_NAME: {type: STRING, desc: process name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}

APP_LAUNCH:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: launch app}
  APP_PID: {type: INT32, desc: app pid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  PROCESS_NAME: {type: STRING, desc: process name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLER_VERSION_NAME: {type: STRING, desc: caller version name}
  CALLER_VERSION_CODE: {type: UINT32, desc: caller version code}
  CALLER_UID: {type: INT32, desc: caller app uid}
  CALLER_STATE: {type: INT32, desc: caller app state}

APP_FOREGROUND:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: foreground app}
  APP_PID: {type: INT32, desc: app pid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  PROCESS_NAME: {type: STRING, desc: process name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  BUNDLE_TYPE: {type: INT32, desc: 'type of componment, atomic service or normal app'}
  CALLER_BUNDLENAME: {type: STRING, desc: caller bundle name}
  PROCESS_TYPE: {type: INT32, desc: type of process}

APP_BACKGROUND:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: background app}
  APP_PID: {type: INT32, desc: app pid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  PROCESS_NAME: {type: STRING, desc: process name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  BUNDLE_TYPE: {type: INT32, desc: 'type of componment, atomic service or normal app'}
  PROCESS_TYPE: {type: INT32, desc: type of process}

APP_TERMINATE:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: terminate app}
  APP_PID: {type: INT32, desc: app pid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  PROCESS_NAME: {type: STRING, desc: process name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}

APP_RECOVERY:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: recover app status}
  APP_UID: {type: INT32, desc: app uid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  RECOVERY_RESULT: {type: STRING, desc: recovery result}

APP_STARTUP_TYPE:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: app start type}
  APP_PID: {type: INT32, desc: app pid}
  VERSION_CODE: {type: INT32, desc: version code}
  VERSION_NAME: {type: STRING, desc: version name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  START_TYPE: {type: INT32, desc: 'type of start, cold or hot'}
  START_REASON: {type: INT32, desc: start reason}

APP_STARTUP_ERROR:
  __BASE: {type: FAULT, level: CRITICAL, tag: app, desc: app startup error}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  ERROR_CODE: {type: INT32, desc: error code}
  MODULE_NAME: {type: STRING, desc: module name}
  USER_ID: {type: INT32, desc: userId}
  APP_INDEX: {type: INT32, desc: app index}
  ERROR_MESSAGE: {type: STRING, desc: error message}

PROCESS_START:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: application process startup event reporting}
  STARTUP_TIME: {type: INT64, desc: process start time}
  STARTUP_ABILITY_TYPE: {type: INT32, desc: process start ability type}
  STARTUP_EXTENSION_TYPE: {type: INT32, desc: process start extension type}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLER_UID: {type: INT32, desc: caller uid}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}
  CALLER_PROCESS_ID: {type: INT32, desc: caller processId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  PROCESS_NAME: {type: STRING, desc: process name}
  PID: {type: INT32, desc: processId}

PROCESS_EXIT:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: application process exit event reporting}
  EXIT_TIME: {type: INT64, desc: process exit time}
  EXIT_RESULT: {type: INT32, desc: process exit result}
  EXIT_PID: {type: INT32, desc: pid}
  PROCESS_NAME: {type: STRING, desc: process name}
  EXTENSION_TYPE: {type: INT32, desc: process exit extension type}
  EXIT_REASON: {type: INT32, desc: process exit reason}

PROCESS_START_FAILED:
  __BASE: {type: FAULT, level: CRITICAL, tag: app, desc: process start failed, preserve: true}
  STARTUP_TIME: {type: INT64, desc: process start failed time}
  STARTUP_ABILITY_TYPE: {type: INT32, desc: process start ability type}
  STARTUP_EXTENSION_TYPE: {type: INT32, desc: process start extension type}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLER_UID: {type: INT32, desc: caller uid}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}
  CALLER_PROCESS_ID: {type: INT32, desc: caller processId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  PROCESS_NAME: {type: STRING, desc: process name}
  PROCESS_TYPE: {type: INT32, desc: process type}
  REASON: {type: INT32, desc: failed reason}
  SUB_REASON: {type: INT32, desc: failed sub reason}

DRAWN_COMPLETED:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: app, desc: drawn completed event reporting}
  APP_UID: {type: INT32, desc: app uid}
  APP_PID: {type: INT32, desc: app pid}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

FA_SHOW_ON_LOCK:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: fa show on lock}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

GRANT_URI_PERMISSION:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: grant uri permission form SA to third-party app}
  BUNDLE_NAME: {type: STRING, desc: callee bundle name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  URI: {type: STRING, desc: uri information}

START_PRIVATE_ABILITY:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: start private ability}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  
RESTART_PROCESS_BY_SAME_APP:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: reStart process by different processes from the same app}
  RESTART_TIME: {type: INT64, desc: process reStart time}
  APP_UID: {type: INT32, desc: app uid}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}
  PROCESS_NAME: {type: STRING, desc: process name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}

START_STANDARD_ABILITIES:
  __BASE: {type: BEHAVIOR, level: MINOR, tag: PowerStats, desc: start more than one standard ability}
  USER_ID: {type: INT32, desc: userId}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  ABILITY_NUMBER: {type: INT32, desc: ability number}

PREVENT_START_ABILITY:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: Process start control, preserve: true}
  CALLER_UID: {type: INT32, desc: caller uid}
  CALLER_PID: {type: INT32, desc: caller pid}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLEE_BUNDLE_NAME: {type: STRING, desc: callee bundle name}
  CALLEE_PROCESS_NAME: {type: STRING, desc: callee process name}
  EXTENSION_ABILITY_TYPE: {type: INT32, desc: extension ability type}
  ABILITY_NAME: {type: STRING, desc: caller ability name}

CREATE_ATOMIC_SERVICE_PROCESS:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: start atomic service process}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CALLER_PROCESS_NAME: {type: STRING, desc: caller process name}
  CALLER_UID: {type: INT32, desc: caller uid}

ATOMIC_SERVICE_DRAWN_COMPLETE:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: atomic service first frame drawn complete}
  BUNDLE_NAME: {type: STRING, desc: bundle name}
  MODULE_NAME: {type: STRING, desc: module name}
  ABILITY_NAME: {type: STRING, desc: ability name}

SHARE_UNPRIVILEGED_FILE_URI:
  __BASE: {type: BEHAVIOR, level: MINOR, desc: share unprivileged file uri}
  CALLER_BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  BUNDLE_NAME: {type: STRING, desc: bundle name}

USER_DATA_SIZE:
   __BASE: {type: STATISTIC, level: CRITICAL , desc: data partition management}
   COMPONENT_NAME: {type: STRING, desc: name of component}
   PARTITION_NAME: {type: STRING, desc: name of partition}
   REMAIN_PARTITION_SIZE: {type: UINT64, desc: Remaining size of the partition}
   FILE_OR_FOLDER_PATH: {type: STRING, arrsize: 100, desc: File or folder path}
   FILE_OR_FOLDER_SIZE: {type: UINT64, arrsize: 100, desc: File or folder size}

EXTENSION_RUNNING_TIMEOUT:
  __BASE: {type: STATISTIC, level: CRITICAL, desc: extension ability running timeout}
  EXTENSION_TYPE: {type: STRING, arrsize: 5, desc: extension type name list}
  BUNDLE_NAME: {type: STRING, arrsize: 5, desc: bundle name list}
  ABILITY_NAME: {type: STRING, arrsize: 5, desc: ability name list}
  RUNNING_DURATION: {type: INT64, arrsize: 5, desc: running duration list in seconds}
  STILL_ALIVE: {type: BOOL, arrsize: 5, desc: still alive flag list}
  CNT: {type: INT32, arrsize: 5, desc: occurrence count list}

# CLI tool event

EXECUTE_CLI_FAILED:
  __BASE: {type: FAULT, level: MINOR, tag: cli, desc: execute CLI tool failed}
  TYPE: {type: INT32, desc: failure type}
  BUNDLE_NAME: {type: STRING, desc: caller bundle name}
  CLI_NAME: {type: STRING, desc: CLI tool name}
  REASON: {type: STRING, desc: failure reason}
  DETAIL: {type: STRING, desc: failure detail}
  DURATION_MS: {type: INT64, desc: timeout duration in milliseconds}
  SIGNAL_NUM: {type: INT32, desc: signal number}