Daemon that runs and reports health checks
Project description
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.
Installation
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
Usage
Using Sauna you will manipulate two entities: plugins and consumers.
Plugins are optional modules that provide a set of checks. There is for instance the Load plugin which provides checks about load average or the Redis plugin which monitors the status of a Redis database. You only opt-in for the plugins that make sense for your setup.
Consumers on the other hand provide a way to send the results of checks generated by plugins to your monitoring server. There is the NSCA consumer that sends data to a Nagios compatible server or the HTTP consumer to send the check results to an API like livestatus.
Start by generating a sample configuration file sauna-sample.yml:
sauna sample
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.
Start sauna:
sauna
You can easily run it as a daemon using systemd or supervisor.
Contributing
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 test
Run the test suite:
nosetests
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.