Go to file
2021-08-09 14:18:16 +08:00
adapter adapte for musl 2021-07-29 12:12:33 +08:00
base modify part name 2021-07-27 16:03:52 +08:00
build modify part name 2021-07-27 16:03:52 +08:00
core add musl socket server 2021-07-29 14:38:32 +08:00
figures update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
include update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
plugins update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
service change /data/log user/group 2021-08-02 11:26:47 +00:00
test [hiview] add entrance testcase to check the status of hiview and faultloggerd service 2021-08-09 14:18:16 +08:00
.gitattributes update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
BUILD.gn modify part name 2021-07-27 16:03:52 +08:00
hiview.gni update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
LICENSE update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
main.cpp update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
OAT.xml update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
ohos.build modify part name 2021-07-27 16:03:52 +08:00
README_zh.md update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00
README.md update OpenHarmony 2.0 Canary 2021-06-02 02:18:59 +08:00

Hiview

Introduction

Hiview is the module of OpenHarmony that provides toolkits for device maintenance across different platforms.

Currently, Hiview opens only the plug-in management platform and system event source capabilities.

Figure 1 Architecture of Hiview

Hiview consists of the following components:

adapter: operating system adaptation layer, which adapts APIs of the system services in use

hiview base: Hiview base definition, which provides the plug-in definition, detector definition, and utility class

hiview core: Hiview core module, which provides the plug-in configuration, plug-in management, and event source functions

hiview services: Hiview services. Currently, only the Hiview run information exporting function is provided.

plugins: Independent service modules.

Hiview works in event-driven mode. The core of Hiview is a collection of HiSysEvent stubs distributed in the system.

Formatted events are reported to Hiview through the HiSysEvent API for processing. Figure 2 shows the data interaction process.

Figure 2 Data interaction between Hiview modules

  1. The application framework and system services report system events using the HiSysEvent API.

  2. HiSysEventSource reads events and prints the events to logs.

Directory Structure

The code directory structure of Hiview is as follows:

/base/hiviewdfx/hiview
├── adapter             # Platform adaptation code
│   ├── service        # Service adaptation code
│   └── system_service # System API adaptation code
├── base                # Module definition and utility class
│   └── utility
├── build               # Compilation scripts
├── include             # Common definitions
├── core                # Plug-in management
└── service             # Platform services

Constraints

Use of C++14 features requires libc of C++14 or later.

Contribution

If you are interested in Hiview and want to become a contributor, refer to the Code Contribution Guide.

Usage

Hiview automatically starts with the device and loads plug-ins based on the configuration file.

Repositories Involved

DFX subsystem

hiviewdfx_hiview

hiviewdfx_hilog

hiviewdfx_hiappevent

hiviewdfx_hisysevent

hiviewdfx_faultloggerd

hiviewdfx_hilog_lite

hiviewdfx_hievent_lite

hiviewdfx_hiview_lite