1 Monitoring is an API with a DSL feel to write monitoring daemons in Python.
3 Monitoring works well for the following tasks:
5 * to be notified when incidents happen (email, XMPP, ZeroMQ...)
6 * automatic actions to be taken (restart, rm, git pull...)
7 * to collect system statistics for further processing e.g. graphs
8 * tie into existing/third-party Python code
9 * play along nicely with existing deployment/configuration ecosystem
14 * monitoring DSL: declarative programming to define monitoring strategy
15 * wide spectrum: from data collection and incident reporting to taking
17 * Small, easy to read, a single file API
22 * ensure service availability: test and start/stop when problems
23 * collect system statistics/data, log locally and/or remotely
24 * alert on system/service health, take actions