DFX

Introduction

Design for X (DFX) refers to the software design that aims to improve the quality attribute in OpenHarmony. It mainly consists of two parts: design for reliability (DFR) and design for testability (DFT).

The DFX subsystem provides the following capabilities:

  • HiLog: Implements logging.

  • Hiview: Functions as the plug-in platform.

  • FaultLoggerd: Implements fault information collection and subscription.

  • HiAppEvent: Implements logging of application events.

  • HiSysEvent: Implements logging of system events.

Architecture

Figure 1 Architecture of the DFX subsystem

Directory Structure

base/hiviewdfx     # DFX base repository, which stores compilation-related configurations
├── hiview         # Hiview module, which implements the plug-in platform and event handler capabilities
├── hiview_lite    # Hiview_Lite module, which implements the logging task capability for the mini system
├── hilog          # HiLog module, which implements logging for the system
├── hilog_lite     # HiLog_Lite module, which implements logging for the mini and small systems
├── hievent_lite   # HiEvent_Lite module, which implements event logging for the mini system
├── hiappevent     # HiAppEvent module, which implements application event logging framework and APIs
├── hisysevent     # HiSysEvent module, which implements system event logging APIs and services
├── faultloggerd   # FaultLoggerd module, which implements collection of application fault logs

Repositories Involved

DFX subsystem

hiviewdfx_hiview

hiviewdfx_hilog

hiviewdfx_hiappevent

hiviewdfx_hisysevent

hiviewdfx_faultloggerd

hiviewdfx_hilog_lite

hiviewdfx_hievent_lite

hiviewdfx_hiview_lite