A command line toolkit written in Python for monitoring for external systems
matplotlib- For plotting, of courseparamiko- For ssh connections
osretimesysdatetimesmtplibconfigparserrequests(Included inrequirements.txtfor MacOS builds of python)
Take a look at cfg/example_cfg.ini and create your own cfg.ini file in the same directory with matching fields.
Currently, there are two options that change the behaiviour of the entire toolkit:
graphsShow graphical dataverbosePrint data to console in real time with severity (recommended)
Other configuration options are commented in the example file.
Indefinitely pings domains/hosts within the domains_list in config and graphs the ping for each domain in real time. Upon a missing response, a notification email is sent. Emails, graphs and console outputs can be configured.
Using the paramiko library to ssh and run resource monitoring commands on a host. This script goes on to graph the CPU and RAM usage in real time for the chosen host.
Using the requests library, this script will check that the configured domains/hosts are serving some html content. Similar to pingMonitor, but will check for a web page response, as opposed to a ping from the name server. Has a configurable time for over what time period a downtime email should be repeated. Will also send a "Back up and running" email after detected downtime.
- Enable specification of intervals in
/cfg/cfg.ini - Looking at monitoring the run queue of a host
- Open to suggestions!