Ian Fijolek
25c5179d3d
All checks were successful
continuous-integration/drone/push Build is passing
This makes the configuration more similar to Minitor-py and docker-compose. If a string is passed, it will be executed in a shell. If an array is passed, it will be executed in as a command directly. This breaks compatiblity with previous versions of Minitor-go, but closer to compatiblity with Minitor-py.
42 lines
1.4 KiB
YAML
42 lines
1.4 KiB
YAML
---
|
|
check_interval: 5
|
|
|
|
monitors:
|
|
- name: Fake Website
|
|
command: ['curl', '-s', '-o', '/dev/null', 'https://minitor.mon']
|
|
alert_down: [log_down, mailgun_down, sms_down]
|
|
alert_up: [log_up, email_up]
|
|
check_interval: 10 # Must be at minimum the global `check_interval`
|
|
alert_after: 3
|
|
alert_every: -1 # Defaults to -1 for exponential backoff. 0 to disable repeating
|
|
- name: Real Website
|
|
command: ['curl', '-s', '-o', '/dev/null', 'https://google.com']
|
|
alert_down: [log_down, mailgun_down, sms_down]
|
|
alert_up: [log_up, email_up]
|
|
check_interval: 5
|
|
alert_after: 3
|
|
alert_every: -1
|
|
|
|
alerts:
|
|
log_down:
|
|
command: ["echo", "Minitor failure for {{.MonitorName}}"]
|
|
log_up:
|
|
command: ["echo", "Minitor recovery for {{.MonitorName}}"]
|
|
email_up:
|
|
command: [sendmail, "me@minitor.mon", "Recovered: {monitor_name}", "We're back!"]
|
|
mailgun_down:
|
|
command: >
|
|
curl -s -X POST
|
|
-F subject="Alert! {{.MonitorName}} failed"
|
|
-F from="Minitor <minitor@minitor.mon>"
|
|
-F to=me@minitor.mon
|
|
-F text="Our monitor failed"
|
|
https://api.mailgun.net/v3/minitor.mon/messages
|
|
-u "api:${MAILGUN_API_KEY}"
|
|
sms_down:
|
|
command: >
|
|
curl -s -X POST -F "Body=Failure! {{.MonitorName}} has failed"
|
|
-F "From=${AVAILABLE_NUMBER}" -F "To=${MY_PHONE}"
|
|
"https://api.twilio.com/2010-04-01/Accounts/${ACCOUNT_SID}/Messages"
|
|
-u "${ACCOUNT_SID}:${AUTH_TOKEN}"
|