tum stands for terminal uptime monitor. Linux and MacOS are supported.
tum works in the background and periodically connects to different services to see if they are still up and working..
It currently does ICMP, HTTP, SMB, FTP, and SSH monitoring.
Example::
Here is a one line installer for tum:
curl -fsSL https://raw.githubusercontent.com/m5kro/tum/refs/heads/main/install.sh | bash
To uninstall (may need root)::
rm -rf /usr/local/bin/tum && rm -rf /usr/local/share/tumhare/tum
Please refer to the build section, as I don't provide MacOS builds.
Usage: tum [options]
Options:
-h, --help Show this help message and exit
-c, --config Show the current configuration
-v, --version Show the version of tum
-a, --add Add a new service to monitor (requires -t/--target and -s/--service)
-r, --remove Remove a service from monitoring
-s, --service Specify the service type (ICMP/SMB/FTP/HTTP/SSH)
-i, --interval Set the monitoring interval (default: 60 seconds)
-u, --username Set the username for the service (SMB/FTP/SSH)
-P, --password Set the password for the service (SMB/FTP/SSH)
-p, --port Set the port for the service (uses sensible defaults if omitted)
-t, --target Target hostname or IP address (required when adding)
-d, --daemon Start, stop, or show status of the background daemon
Example:
tum -a MyService -s ICMP -t 8.8.8.8 -i 30
tum -a Web -s HTTP -t example.com -p 8080
tum -d start
tum -d status
-t example.com -p 8080
tum -d start
tum -d status
tum -d status
If you would like to build tum for yourself or make any modifications, here's how to setup the development enviornment:
- Clone the GitHub Repo:
git clone https://github.com/m5kro/tum && cd tum; cd tum - Create a python venv:
python3 -m venv venv - Activate the venv:
source venv/bin/activate - Install dependencies:
python3 -m pip install -r requirements.txt - Build the executable:
pyinstaller --name "tum" --onedir main.py
You will find the output in thedistfolder.