Buttons can monitor almost anything.
It has built-in ability to chat with either a modem or a TCP socket. It can run external programs and flag a failure if the program returns a nonzero exit status. Buttons can be variably sensitive to failures. It can raise an alarm if a service fails to respond any number of times, and can cancel that alarm if a service resumes responding any other number of times. This number may be different for each service, but defaults can be set.