Daemon that runs and reports health checks
Sauna is a small daemon designed to run health checks and send the results to a monitoring server. It is able to report to Nagios and Shinken out of the box.
It is made to be resource efficient (it avoids forking at all costs), simple to install and low maintenance.
A Debian package compatible with wheezy and jessie is available. Grab the latest release on Github and install it:
dkpg -i sauna_<version>_all.deb || apt-get install -f
Alternatively, Sauna is available on PyPI, you can install it with pip:
pip install sauna
Start by generating a sample configuration file sauna-sample.yml:
Edit the sample configuration to fit your system, pick the plugins that you want and choose a consumer. When you are done move the file as sauna.yml.
You can easily run it as a daemon using systemd or supervisor. Startup scripts are included in the Debian package.
Using Sauna you will manipulate two entities: plugins and consumers.
Plugins are optional modules that provide a set of checks. You only opt-in for the plugins that make sense for your setup. Available plugins are:
- Load average
- Memory and swap usage
- Disk partition usage
- External command
- Puppet agent
Consumers on the other hand provide a way for checks to be processed by a central monitoring server.
Sauna can be both passive and active at the same time. From the monitoring server point of view, active consumers are the one where the monitoring server requests a status update and passive when the monitoring receive status updates.
Available consumers are:
- NSCA (passive)
- HTTP (passive)
- TCP server (active)
- Stdout (passive)
Sauna is written in Python 3. Adding a check plugin or a consumer should be straightforward. Clone the repository and install it in development mode in a virtualenv:
pip install -e .
The code base follows pep8, test the code for compliance with:
pep8 sauna tests
Run the test suite:
|File Name & Hash SHA256 Hash Help||Version||File Type||Upload Date|
(22.5 kB) Copy SHA256 Hash SHA256
|py3||Wheel||Apr 19, 2016|
(15.4 kB) Copy SHA256 Hash SHA256
|–||Source||Apr 19, 2016|