I set up
monit
, a utility for monitoring services on a Unix system. My concrete use case is a FreeBSD machine, that runs "N2N Edge", a Peer-to-peer (P2P) virtual private network (VPN) software. monit
pretty much automates the "have you tried turning it off and on again?" process. Configurations like the following illustrate this:
check process myproc
matching "myproc"
start program = "/etc/init.d/myprocstart"
stop program = "/usr/bin/killall myproc"
if cpu usage > 95% for 10 cycles then restart
Do you want to know more?