• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Hiview<a name="EN-US_TOPIC_0000001162254005"></a>
2
3-   [Introduction](#section1289063163919)
4-   [Directory Structure](#section16611433113712)
5-   [Constraints](#section7147138193814)
6-   [Contribution](#section10404153013381)
7-   [Usage](#section1046874983819)
8-   [Repositories Involved](#section16647142611396)
9
10## Introduction<a name="section1289063163919"></a>
11
12Hiview is the module of OpenHarmony that provides toolkits for device maintenance across different platforms.
13
14Currently, Hiview opens only the plug-in management platform and system event source capabilities.
15
16**Figure 1**  Architecture of Hiview
17
18![](figures/en-us_image_0000001162020243.png)
19
20Hiview consists of the following components:
21
22adapter: operating system adaptation layer, which adapts APIs of the system services in use
23
24hiview base: Hiview base definition, which provides the plug-in definition, detector definition, and utility class
25
26hiview core: Hiview core module, which provides the plug-in configuration, plug-in management, and event source functions
27
28hiview services: Hiview services. Currently, only the Hiview run information exporting function is provided.
29
30plugins: Independent service modules.
31
32Hiview works in event-driven mode. The core of Hiview is a collection of HiSysEvent stubs distributed in the system.
33
34Formatted events are reported to Hiview through the  **HiSysEvent**  API for processing. Figure 2 shows the data interaction process.
35
36**Figure 2**  Data interaction between Hiview modules
37
38![](figures/en-us_image_0000001115710726.png)
39
401. The application framework and system services report system events using the  **HiSysEvent**  API.
41
422. HiSysEventSource reads events and prints the events to logs.
43
44## Directory Structure<a name="section16611433113712"></a>
45
46The code directory structure of Hiview is as follows:
47
48```
49/base/hiviewdfx/hiview
50├── adapter             # Platform adaptation code
51│   └── service        # Service adaptation code
52├── base                # Module definition and utility class
53│   └── utility
54├── build               # Compilation scripts
55├── include             # Common definitions
56├── core                # Plug-in management
57└── service             # Platform services
58```
59
60## Constraints<a name="section7147138193814"></a>
61
62Use of C++14 features requires libc of C++14 or later.
63
64## Contribution<a name="section10404153013381"></a>
65
66If you are interested in Hiview and want to become a contributor, refer to the  _Code Contribution Guide_.
67
68## Usage<a name="section1046874983819"></a>
69
70Hiview automatically starts with the device and loads plug-ins based on the configuration file.
71
72## Repositories Involved<a name="section16647142611396"></a>
73
74[DFX subsystem](https://gitee.com/openharmony/docs/blob/master/en/readme/dfx.md)
75
76**hiviewdfx\_hiview**
77
78[hiviewdfx\_hilog](https://gitee.com/openharmony/hiviewdfx_hilog/blob/master/README.md)
79
80[hiviewdfx\_hiappevent](https://gitee.com/openharmony/hiviewdfx_hiappevent/blob/master/README.md)
81
82[hiviewdfx\_hisysevent](https://gitee.com/openharmony/hiviewdfx_hisysevent/blob/master/README.md)
83
84[hiviewdfx\_faultloggerd](https://gitee.com/openharmony/hiviewdfx_faultloggerd/blob/master/README.md)
85
86[hiviewdfx\_hilog\_lite](https://gitee.com/openharmony/hiviewdfx_hilog_lite/blob/master/README.md)
87
88[hiviewdfx\_hievent\_lite](https://gitee.com/openharmony/hiviewdfx_hievent_lite/blob/master/README.md)
89
90[hiviewdfx\_hiview\_lite](https://gitee.com/openharmony/hiviewdfx_hiview_lite/blob/master/README.md)
91
92