19 Regelbasierte Konfiguration

Prometheus unterstützt die Definition von Regeln, um Metriken zu aggregieren, zu berechnen und Alarme auszulösen. Diese Regeln werden in sogenannten Regeldateien definiert, die in der prometheus.yml-Datei referenziert werden. Es gibt zwei Haupttypen von Regeln: Aufzeichnungsregeln (Recording Rules) und Alarmregeln (Alerting Rules).

19.1 Aufzeichnungsregeln (Recording Rules)

Aufzeichnungsregeln dienen dazu, komplexe oder häufig benötigte Abfragen vorab zu berechnen und die Ergebnisse als neue Metriken zu speichern. Dies verbessert die Abfrageleistung und vereinfacht die Nutzung von wiederkehrenden Berechnungen.

  1. Beispiel für eine Aufzeichnungsregel:

  2. Referenzierung der Regeldatei in prometheus.yml:

    rule_files:
      - 'recording.rules'

19.2 Alarmregeln (Alerting Rules)

Alarmregeln definieren Bedingungen, unter denen Alarme ausgelöst werden sollen. Diese Alarme können an den Alertmanager gesendet und von dort weiterverarbeitet werden.

  1. Beispiel für eine Alarmregel:

  2. Referenzierung der Regeldatei in prometheus.yml:

    rule_files:
      - 'alert.rules'

19.3 Alarmmanager-Konfiguration

Um Alarme weiterzuleiten und zu verwalten, muss Prometheus mit dem Alertmanager konfiguriert werden.

  1. Konfiguration des Alertmanagers in prometheus.yml:

    alerting:
      alertmanagers:
        - static_configs:
            - targets: ['localhost:9093']
  2. Beispiel für eine alertmanager.yml-Datei:

19.4 Komplexere Anwendungsbeispiele

  1. Aggregierte Metriken mit Labels:
  2. Alarmregel mit mehreren Bedingungen:

19.5 Best Practices

  1. Modularisierung:
  2. Dokumentation:
  3. Testen von Regeln:
  4. Performance-Optimierung:

Durch die Verwendung regelbasierter Konfigurationen können Sie komplexe Überwachungsszenarien abdecken, Metriken effizient aggregieren und aussagekräftige Alarme definieren, die Ihnen helfen, Probleme frühzeitig zu erkennen und zu beheben.