Aller au contenu

📊 Tableau de bord des alertes

Ce document détaille les différentes alertes configurées pour la surveillance de nos serveurs et applications, incluant leurs configurations Prometheus.

🔔 Alertes de service général

🚫 Service indisponible

Se déclenche lorsqu'un service surveillé est indisponible.

- alert: service_down
  expr: up == 0
  for: 3m
  labels:
    env: testing
    severity: page
  annotations:
    summary: "Instance {{ $labels.instance }} indisponible"
    description: "L'instance {{ $labels.instance }} du job {{ $labels.job }} est indisponible depuis plus de 2 minutes."

💻 Alertes de ressources système

🔥 Charge élevée

Se déclenche lorsque la charge système est élevée.

- alert: high_load
  expr: avg by (node_ip,hostname,instance)(node_load15) / count by (node_ip,hostname,instance)(count(node_cpu_seconds_total) by (cpu, node_ip,hostname,instance)) > 1
  for: 2m
  labels:
    env: testing
    severity: page
  annotations:
    summary: "Instance {{ $labels.instance }} sous charge élevée"
    description: "L'instance {{ $labels.instance }} du job {{ $labels.job }} est sous charge élevée."

💾 Mémoire faible

Se déclenche lorsque la mémoire disponible est faible.

- alert: low_memory
  expr: (node_memory_MemFree_bytes / node_memory_MemTotal_bytes) * 100 < 20
  for: 2m
  labels:
    env: testing
    severity: page
  annotations:
    summary: "Instance {{ $labels.instance }} a peu de mémoire"
    description: "L'instance {{ $labels.instance }} du job {{ $labels.job }} a peu de mémoire."

🖥️ Utilisation CPU

Se déclenche lorsque l'utilisation du CPU est élevée.

- alert: CPUUsage
  expr: 100 * sum by (node_ip,hostname,instance) (rate(node_cpu_seconds_total{node_ip="151.80.26.239",mode!="idle"}[5m])) / count by (node_ip,hostname,instance) (rate(node_cpu_seconds_total{node_ip="151.80.26.239", mode="idle"}[5m])) > 85
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Utilisation CPU élevée"
    description: "L'utilisation CPU pour {{ $labels.node_ip }} est supérieure à 85%."

💽 Disque occupé

Se déclenche lorsque l'utilisation du disque est élevée.

- alert: DiskBusy
  expr: 100 - (sum(node_filesystem_avail_bytes{mountpoint="/", fstype!="rootfs"}) / sum(node_filesystem_size_bytes{mountpoint="/", fstype!="rootfs"})) * 100 > 85
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Disque occupé"
    description: "L'utilisation du disque est supérieure à 85%."

📡 Utilisation de la bande passante

Se déclenche lorsque l'utilisation de la bande passante est élevée.

- alert: BandwidthUsage
  expr: (sum(avg(node_filesystem_size_bytes{node_ip="151.80.26.239",job=~"node-exporter",fstype=~"xfs|ext.*"}) by (device, node_ip)) - sum(avg(node_filesystem_free_bytes{node_ip="151.80.26.239",job=~"node-exporter",fstype=~"xfs|ext.*"}) by (device, node_ip))) * 100 / (sum(avg(node_filesystem_avail_bytes{node_ip="151.80.26.239",job=~"node-exporter",fstype=~"xfs|ext.*"}) by (device, node_ip)) + (sum(avg(node_filesystem_size_bytes{node_ip="151.80.26.239",job=~"node-exporter",fstype=~"xfs|ext.*"}) by (device, node_ip)) - sum(avg(node_filesystem_free_bytes{node_ip="151.80.26.239",job=~"node-exporter",fstype=~"xfs|ext.*"}) by (device, node_ip)))) > 85
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Utilisation élevée de la bande passante"
    description: "L'utilisation de la bande passante pour {{ $labels.node_ip }} est supérieure à 85%."

🐳 Alertes de conteneur et de stack

📊 Utilisation du disque par stack et service

Se déclenche lorsque l'utilisation du disque pour un stack ou service spécifique est élevée.

- alert: DiskUsagePerStackAndService
  expr: (sum(container_fs_usage_bytes{container_label_com_docker_stack_namespace=~"(monitor|prom|proxy)", id=~"/docker/.*"}) by (container_label_com_docker_swarm_service_name, node_ip) / sum(node_filesystem_size_bytes{fstype=~"xfs|ext.*"}) by (node_ip)) * 100 > 85
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Utilisation élevée du disque par stack & service"
    description: "L'utilisation du disque pour {{ $labels.node_ip }} est supérieure à 85%."

🧠 Utilisation de la mémoire par stack

Se déclenche lorsque l'utilisation de la mémoire pour un stack est élevée.

- alert: MemoryUsageByStack
  expr: (sum(node_memory_MemTotal_bytes) by (node_ip) - sum(node_memory_MemAvailable_bytes) by (node_ip)) / sum(node_memory_MemTotal_bytes) by (node_ip) * 100 > 85
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Utilisation élevée de la mémoire par stack"
    description: "L'utilisation de la mémoire pour {{ $labels.node_ip }} est supérieure à 85%."

🔧 Utilisation CPU par service

Se déclenche lorsque l'utilisation CPU pour un service est élevée.

- alert: CpuUsagePerService
  expr: avg(sum(rate(container_cpu_usage_seconds_total{id=~"/docker/.*", container_label_com_docker_stack_namespace=~"(monitor|prom|proxy)"}[5m])) by (container_label_com_docker_swarm_service_name, node_ip)) * 100 > 70
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Utilisation CPU élevée par service"
    description: "L'utilisation CPU pour le service {{ $labels.container_label_com_docker_swarm_service_name }} est supérieure à 85%."

👥 Alertes de connexion utilisateur

👤 Nombre élevé de connexions utilisateur

Se déclenche lorsque le nombre d'utilisateurs connectés est élevé.

- alert: HighUserLogin
  expr: max(server_users_logged_in) >= 6
  for: 1m
  labels:
    severity: warning
  annotations:
    summary: "Nombre élevé d'utilisateurs connectés (Avertissement)"
    description: "Le nombre d'utilisateurs connectés est {{ $value }}. C'est plus élevé que le seuil normal."

⚠️ Nombre critique de connexions utilisateur

Se déclenche lorsque le nombre d'utilisateurs connectés est critiquement élevé.

- alert: CriticalUserLogin
  expr: max(server_users_logged_in) >= 10
  for: 1m
  labels:
    severity: critical
  annotations:
    summary: "Nombre critique d'utilisateurs connectés"
    description: "Le nombre d'utilisateurs connectés est {{ $value }}. C'est critiquement élevé !"