Webwatch URL monitoring
Webwatch checks HTTP/HTTPS URLs and sends mail if there's a problem.


Network
Photo by Jordan Harrison on Unsplash

If you have one or more web apps running, you want to be the first one to know if one of them is down.

Webwatch is a command line tool that checks webapps and send email if one of them has a problem. Configuration is easy: Just start webwatch with a json config file, like so:

user@wombat ~ # cat path/to/config.json
{
    "urls": [
        "http://www.vilsmeier-consulting.de",
        "https://wombat-app.io/app/login",
        ...more urls
    ],
    "checks": "5m",
    "reports": "12h",
    "limit": "1h",
    "mail" : {
        "subject" : "[Webwatch] WOMBAT",
        "from" : "info@wombat-app.io",
        "to" : "myself@gmx.de",
        "host" : "smtp.gmx.de",
        "username" : "example_username_00012",
        "password" : "example_password_00012"
    }
}
user@wombat ~ # webwatch -config path/to/config.json

Webwatch will check the configured URLs in a 5 minute interval (see checks field). If one of the URLs changes from 'reachable' to 'unreachable' or vice versa, Webwatch will send a mail to myself@gmx.de (see mail configuration). Additionally, Webwatch will send a report mail after 12 hours (see reports field), even if no URL changed. No matter how often the URLs change (or not), Webwatch will not exceed the rate-limit of 1 mail per hour (see limit field)

Webwatch is written in Go, so it will run an any system supported by Go. Check it out on github:
https://github.com/cvilsmeier/webwatch.

2017-12-06