Prometheus alertmanager envía correos electrónicos únicamente.
Tienes prometheus alertmanager y reglas simples.
prometheus.yml
- job_name: “HostPRO”
static_configs:- targets: [“192.168.0.17:9100”]
labels:
group: ‘alert’
- targets: [“192.168.0.17:9100”]
- job_name: “HostPRE”
static_configs:- targets: [“10.2.2.235:9100”]
labels:
group: ‘noalert’
name: ‘PVE’
- targets: [“10.2.2.235:9100”]
alertmanager.yml
global:
smtp_smarthost: 'example:587'
smtp_from: 'example'
smtp_auth_username: 'example'
smtp_auth_password: 'example'
smtp_require_tls: true
route:
group_by: ['alertname']
group_wait: 10s
group_interval: 10s
repeat_interval: 24h
routes:
- match:
group: alert
receiver: mail
receivers:
- name: 'mail'
email_configs:
- to: 'example@gmail.com'
Ejemplo de reglas
“`
– alert: NodeCPU_0_High
expr: 100 – (avg by(instance, cpu) (irate(node_cpu_seconds_total{mode=”idle”, cpu=”0″}[1m])) * 100) > 80
for: 2m
labels:
severity: critical
app_type: linux
category: cpu
annotations:
summary: “Node CPU_0 usage is HIGH”
description: “CPU_0 load for instance {{ $labels.instance }} has reached {{ $value }}%”
Cómo enviar un correo electrónico solo cuando el host con el grupo “alert” es demasiado alto?
davy.ai
Para enviar un correo electrónico solo cuando el host con el grupo “alerta” esté demasiado alto, debes modificar la regla en el archivo prometheus.yml y la ruta en el archivo alertmanager.yml de la siguiente manera:
En prometheus.yml, agrega la siguiente regla:
Esta regla verifica si el promedio de carga del host con la etiqueta de grupo “alerta” es mayor que 0.7 durante 2 minutos.
En alertmanager.yml, modifica la ruta para incluir esta regla:
Esta ruta envía un correo electrónico a la dirección de correo electrónico configurada solo cuando se activa la alerta HostDemasiadoAlto y el host tiene la etiqueta de grupo “alerta”.