Hello everyone,
I am trying to integrate Alertmanager with alertsnitch, which uses the webhook receiver, because this notification mechanism is not natively supported by Alertmanager.
My alertmanager.yml configuration:
global:
# We want to send all alerts to alertsnitch and then continue to the
# appropiate handler.
route:
routes:
- receiver: alertsnitch
continue: true
receivers:
- name: alertsnitch
webhook_configs:
- url: http://host.docker.internal:9567/webhook
My prometheus.yml configuration:
global:
scrape_interval: 5s
scrape_timeout: 3s
evaluation_interval: 5s
# Our alerting rule files
rule_files:
- alert.rules
# Scrape endpoints
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['host.docker.internal:9090']
- job_name: 'mysql-exporter'
static_configs:
- targets: ['host.docker.internal:9104']
alerting:
alertmanagers:
- scheme: http
static_configs:
- targets: ['host.docker.internal:9093']
My docker-compose configuration (only the part of alertsnitch and alertmanager):
alertsnitch:
image: registry.gitlab.com/yakshaving.art/alertsnitch
container_name: alertsnitch-compose
ports:
- '9567:9567'
environment:
ALERTSNITCH_DSN: "alertsnitch:alertsnitch@tcp(host.docker.internal:3306)/alertsnitch"
ALERSTNITCH_BACKEND: "mysql"
depends_on:
mysqldb:
condition: service_healthy
alertmanager:
restart: always
image: prom/alertmanager:latest
container_name: alertmanager
command:
- '--config.file=/etc/alertmanager/alertmanager.yml'
- '--storage.path=/var/lib/alertmanager'
volumes:
- ./alertmanager.yml:/etc/alertmanager/alertmanager.yml
- ./alertmanager_db:/var/lib/alertmanager
depends_on:
- prometheus
ports:
- '9093:9093'
Log-Errors:
alertmanager | level=info ts=2021-05-26T08:05:45.390Z caller=main.go:216 msg="Starting Alertmanager" version="(version=0.21.0, branch=HEAD, revision=4c6c03ebfe21009c546e4d1e9b92c371d67c021d)"
alertmanager | level=info ts=2021-05-26T08:05:45.391Z caller=main.go:217 build_context="(go=go1.14.4, user=root@dee35927357f, date=20200617-08:54:02)"
alertmanager | level=info ts=2021-05-26T08:05:45.393Z caller=cluster.go:161 component=cluster msg="setting advertise address explicitly" addr=172.22.0.8 port=9094
alertmanager | level=info ts=2021-05-26T08:05:45.400Z caller=cluster.go:623 component=cluster msg="Waiting for gossip to settle..." interval=2s
alertmanager | level=info ts=2021-05-26T08:05:45.461Z caller=coordinator.go:119 component=configuration msg="Loading configuration file" file=/etc/alertmanager/alertmanager.yml
alertmanager | level=error ts=2021-05-26T08:05:45.465Z caller=coordinator.go:124 component=configuration msg="Loading configuration file failed" file=/etc/alertmanager/alertmanager.yml err="root route must specify a default receiver"
alertmanager | level=info ts=2021-05-26T08:05:45.466Z caller=cluster.go:632 component=cluster msg="gossip not settled but continuing anyway" polls=0 elapsed=65.457ms
alertmanager exited with code 1
Can anyone give me a clue where the error may come from ?
Thankyou!