Check your server like a boss.
$ check -c config.json
{
"in_charge": [
{
"name": "Travis Bickle",
"email": "travis.bickle@example.com"
},
{
"name": "Besty",
"email": "besty@example.com"
}
],
"reporters": {
"email": {
"crendential": {
"username": "watchmen@example.com",
"password": "watchmen-passw0rd",
"smtp": "smtp.example.com:587"
},
"formats": {
"short": "Site {site['name']} is down!",
"long": "Your site {site['name']} is down since {happened_at}!"
}
},
"cli": {
"formats": {
"short": "Site {site['name']} is down!",
"long": "Check time: {happened_at}"
}
}
},
"sites": [
{
"name": "My Cool Site",
"url": "http://cool.example.com"
},
{
"name": "Goole is Down",
"url": "https://google.com"
}
]
}
Specify list of people you want to notify when a incident happened here.
name | description | required? |
---|---|---|
name | alias name | yes |
receiver's email address | no |
email
: If user'semail
is provided, they will receive a warning email for the incident.
Enabled report generators. Each generator can customize the incident report
format.
name | description | required? |
---|---|---|
short | summarize report | yes |
long | detailed report | yes |
Each incident report
will contain:
- site name
- site url
- incident happened time string, format is ISO8601.
incident_report = {
'site': {
'name': 'test',
'url': 'http://test.domain'
},
'happened_at': '2014-11-01T15:42:00.000000+00:00'
}
If you want to use email handler, you should provide email sender's crendential settings.
name | description | required? |
---|---|---|
username | login name | yes |
password | login password | yes |
smtp | smtp server | yes |
List of sites you want to monitor.
name | description | required? |
---|---|---|
url | site's url | yes |
name | alias name | no, defaults to url |
- refine data structure.
- add more check methods (like ping).
See LICENSE.md.