Sends alerts for non communicating devices
C M4 Shell Makefile
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
builds
doc
include
packaging
src
.clang-format
.editorconfig
.gitattributes
.gitignore
.travis.fixsasl
.travis.yml
Jenkinsfile
Makefile.am
PROBLEM
README.md
autogen.sh
ci_build.sh
ci_deploy.sh
ci_deploy_obs.sh
configure.ac
install.xml
license.xml
project.xml

README.md

fty-outage

Agent fty-outage produces pure alerts on _ALERTS_SYS when no data are coming from the device.

How to build

To build fty-outage project run:

./autogen.sh
./configure
make
make check # to run self-test

How to run

To run fty-outage project:

  • from within the source tree, run:
./src/fty-outage

For the other options available, refer to the manual page of fty-outage

  • from an installed base, using systemd, run:
systemctl start fty-outage

Configuration file

Configuration file - fty-outage.cfg - is currently ignored.

Agent reads environment variable BIOS_LOG_LEVEL which controls verbosity level.

State file for fty-outage is stored in /var/lib/fty/fty-outage.zpl.

Architecture

Overview

fty-outage is composed of 1 actor and 2 timera.

  • fty-outage-server: main actor

First timer is implemented via checking zclock and saves the state of the agent each SAVE_INTERVAL_MS milliseconds (default value 45 minutes).

Second timer is implemented via zpoller timeout and publishes outage alerts for dead devices every TIMEOUT_MS milliseconds (default value 30 seconds) unless such an alert is already active.

Protocols

Published metrics

Agent doesn't publish any metrics.

Published alerts

Agent publishes alerts on _ALERTS_SYS stream.

Mailbox requests

Agent fty-outage-server doesn't support any mailbox requests.

Stream subscriptions

Agent is subscribed to streams METRICS, METRICS_UNAVAILABLE, METRICS_SENSOR and ASSETS.

If it gets METRICS_UNAVAILABLE message, it resolves all the stored alerts for specified device.

If it gets METRICS or METRICS_SENSOR message from a device, it resolves all the stored alerts for specified device and marks the device as active.

If it gets ASSETS message, it updates the asset cache. If the message is for operation DELETE or RETIRE, it resolves all the alerts for specified device.