Skip to content

Advanced-Observability/dxagent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Diagnostic Agent

DxAgent Software Architecture

DxAgent

DxAgent is the diagnostic agent daemon. First, it gather baremetal, VM and VPP data via multiple means. Second, it normalizes collected data and discovers the active subservices and their dependencies, and build a graph of it. Third, it checks for symptoms based on user-defined rules applied to normalized metrics, computes subservices health scores, and propagates health scores along the subservice dependency graph.

An optional gNMI exporter can be used to connect multiple instances of dxagent, or to enable visualization of a node susbervices health scores and dependency graph via dxweb. gNMI exported data is formatted according to YANG Modules for Service Assurance draft. Locally, shared memory can be used to display similar information in the dxtop console app.

DxAgent Commands

  • dxagent [-h] [-l LOG_FILE] [-c CONFIG] [-s] [-v] {start,stop,restart,status}
    • LOG_FILE defaults to /var/log/dxagent.log
    • CONFIG defaults to ./dxagent.ini
    • -s disables shared memory. Shared memory allows for using DxTop and is enabled by default.

DxAgent Important Files

  • dxagent DxAgent script.

  • dxagent.ini DxAgent configuration file. With a virtualbox hypervisor, vbox_user has to be set.

  • input.csv An informative list of vendor-specific monitored fields.

  • metric.csv A list of vendor-independant metrics.

  • rules.csv A list of symptoms.

gNMI exporter

See agent/gnmi/README.md.

DxTop

DxTop is a console app that displays data collected by DxAgent.

DxTop screenshot

DxTop Commands

  • dxweb [-h] [-c CONFIG] [-l LOG_FILE] [-t TARGET] [-k CERTS_DIR]

    • LOG_FILE defaults to /var/log/dxagent.log
    • CONFIG defaults to ./dxagent.ini
    • TARGET defaults to the gnmi target entry in config file. Use the command line argument to specify another target.
    • CERTS_DIR certificate/key files location
  • q or ESC: quit

  • arrow up, page up: scroll up

  • arrow down, page down: scroll down

  • arrow left, arrow right: switch between screens

DxTop Important Files

  • dxtop DxTop script.

DxWeb

DxWeb is a web interface that display dependency graph, health metrics and symptoms from DxAgent.

DxWeb screenshot

DxWeb Important Files

  • dxweb DxWeb script.

DxWeb Libs

Requirements

Python

python >= 3.8 to have dxtop available, otherwise python >= 3.5.

Libs

Optional Libs

About

Medical diagnosis (abbreviated Dx or DS) is the process of determining which disease or condition explains a person's symptoms and signs. It is most often referred to as diagnosis.