Prometheus의 알람은 크게 2가지 부분으로 나눌 수 있다.
- 알람 규칙을 정의하는 Alerting Rule
- 생성된 알람을 3자에 전달해주는 Alertmanager
Prometheus의 공식 문서에 따르면,
알림 규칙은 PromQL을 기반으로 알람 조건을 정의하고, 외부 서비스에 FIRING된 알람들을 전달한다.
Alerting Rule은 PromQL 혹은 Recording Rule을 통해 쿼리된 시계열에 대해 알람 조건을 지정한다. 만약 조건을 충족하는 경우 해당 시계열에 대해서, ALERTS라는 시계열에 저장되는 알람 세트를 생성해낸다.
참고 링크:
https://medium.com/devops-dudes/prometheus-alerting-with-alertmanager-e1bbba8e6a8e
https://gurumee92.tistory.com/268
record가 Recording Rule이 생성하는 메트릭의 이름을 나타낸 것처럼,
alert는 alerting Rule이 만들어내는 알람 세트의 이름
이 알람 세트는 ALERTS로 쿼리할 수 있다고 함,
ALERTS를 쿼리해서 보면 alertname이 아까 알람세트의 이름으로 지정한대로 나와있는 것을 볼 수 있음 (아래 사진)
참고로 아래처럼 사용자가 레이블을 추가할 수 있음
https://github.com/dcos/prometheus-alert-rules
주로 참고한 메인 블로그:
https://gurumee92.tistory.com/268
추가적으로 참고해볼만한 사이트:
1번은 지금 가설의 근본임, 전 글에서도 언급함.
1. https://blog.naver.com/alice_k106/221910045964
2. https://gurumee92.tistory.com/268
3. https://www.elastic.co/guide/en/machine-learning/current/ml-configuring-alerts.html
4. https://blog.container-solutions.com/prometheus-operator-beginners-guide
5. https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/
6. https://iamabhishek-dubey.medium.com/alertmanager-integration-in-prometheus-197e03bfabdf
7. https://blog.outsider.ne.kr/1254