A command line toolkit written in Python for monitoring for external systems
matplotlib
- For plotting, of courseparamiko
- For ssh connections
os
re
time
sys
datetime
smtplib
configparser
requests
(Included inrequirements.txt
for 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:
graphs
Show graphical dataverbose
Print 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!