alertmanager-statuspage receives a webhook from alertmanager, looks for certain labels and updates a component's status on statuspage.io via the API.
Requirements
An account on statuspage.io (by Atlassian),
Sign up for statuspage.io (by Atlassian). You will need to verify your email address and enroll in the plan of your choosing. A free plan is availble for personal use.
An API token from whoever has privileges to update the components/pages,
# your global section may look different
global:
resolve_timeout: 5m
route:
# your configuration may vary
receiver: my_default_receiver
group_by: ["alertname"]
group_wait: 30s
group_interval: 5m
repeat_interval: 24h
routes:
# send watchdog alerts into a blackhole
# (comes with kube-prometheus)
- match:
alertname: Watchdog
receiver: null
# send any alert with our labels to the statuspage receiver
- match_re:
statuspageio_page: ^.+$
statuspageio_component: ^.+$
receiver: statuspageio
continue: true
receivers:
# not strictly necessary to have
- name: my_default_receiver
<fill me in>
# this is required to make alertmanager-statuspage function
- name: statuspageio
webhook_configs:
- url: http://alertmanager-statuspage:8080
In case you don't have or want a default receiver, simply omit it from the list of receivers and change route.receiver to null.