Skip to content

Features

ExaCheck is primarily targeted to centralized health checks where one or more servers handle health checks for multiple services.

Live Configuration Reloads

Changes to the configuration file can optionally be applied without having to restart the ExaBGP/ExaCheck services. The live reload operation first checks to ensure the configuration is valid; if it is not valid the live reload will not proceed. Any unchanged services will not be affected.

To enable the live configuration reload feature see the relevant configuration page.

Notifications

Notifications are handled using Apprise. For a list of supported notification targets see the Apprise Wiki.

As with logging, notifications may be filtered per health check and for certain events. Multiple notification targets can be defined.

Check the notification configuration page to see examples of configuration options.

Docker Deployment

A Docker container which includes ExaBGP, ExaCheck and all requirements is available for easy deployment. The docker deployment page includes further details.

Configuration Format

The default configuration format is yaml. If the configuration file that is being loaded has the file extension json it will be loaded as a JSON document instead.

For a full list of configuration options see the configuration page or check the examples page for inspiration.

Process Naming

The master and worker processes are named based on the task they are performing at the time and their status. As an example:

ExaCheck Master Process [/code/configuration.yaml]: Sleeping
    ExaCheck Worker [ICMP test to Google]: Performing health check [startup]
    ExaCheck Worker [TCP test to Google port 80]: Sleeping for 14.853 seconds [rising (1/3)]
    ExaCheck Worker [File test to check if /tmp/test exists]: Sleeping for 15.000 seconds [rising (1/3)]
    ExaCheck Worker [DNS query to Cloudflare public resolver]: Sleeping for 14.952 seconds [rising (1/3)]
    ExaCheck Worker [DNS query to Cloudflare public resolver with validation]: Sleeping for 14.946 seconds [rising (1/3)]