Grafana Alerting

이경은·2022년 2월 17일
1

🔶 Create a Grafana managed alerting rule

이번 포스팅은 Grafana에서 Amazon Timestream을 연동해서, 특정 데이터가 들어오는 경우 이메일로 알림을 보내도록 하는 과정을 설명합니다.

✔ New alert rule

  • Grafana에서 Alerting 페이지에 들어가서 New alert rule을 클릭

✔ Rule type

  • Rule name은 어떤 규칙인지 설명해주면 좋음.
  • type을 Grafana managed alert으로 설정.
  • Folder - 선택하지 않으면 General folder에 저장된다고 tutorial에 적혀 있었는데, 설정을 해줘야 만 했음. 원하는 폴더 선택.

✔ Create a query to be alerted on

  • Query name - 디폴트 네임 사용하거나 hover 해서 변경
  • Data source - 쿼리를 위해서 데이터 소스를 선택함.
  • 하나 이상의 쿼리 또는 expression을 추가.
  • Expression
    1) Classic condition - 단일 경고 규칙 생성
    - 기본 조건 표현식을 사용해 조건이 충족될 때 단일 경고를 트리거하는 규칙을 생성함.
    - 여러 시리즈를 반환하는 쿼리의 경우 Grafana는 각 시리즈의 경고 상태를 추적하지 않음.
    2) Math, Reduce, Resample - 각 시리즈에 대해 별도의 경고를 생성. 다차원 규칙
    - 각 쿼리에 대한 표현식을 추가 reduce 하여 선택한 시간 범위의 값을 단일 값으로 집계.
  • 쿼리를 사용해서 원하는 데이터 값을 Timestream에서 select 한 후,
  • expression에서는 불러온 데이터 중 마지막 값이 3에서 34 값인 경우 필터링 하도록 했다.
  • Run queries를 통해서 쿼리의 결과를 확인할 수 있다.
  • expression 종류는 다양함.

✔ Define alert conditions

  • Condition - alert rule을 트리거할 쿼리 또는 표현식 선택.
  • Evaluate every - 평가 빈도 지정. 10초의 배수여야 함.
  • Evaluate for - 경고가 발생하기 전에 조건이 참이어야 하는 기간 지정.
  • Configure no data and error handling - 데이터가 없을 때 경고 동작 구성
  • Preview alerts - 현재 쿼리 실행 결과를 확인.

✔ Add details for your alert

  • 규칙과 연결된 추가 메타데이터를 추가함.
  • 경고 메시지를 사용자 정의하려면 설명과 요약을 추가함.
  • 사용자 지정 레이블 추가.

🔶 Contact points

  • Contact points는 알림 규칙의 조건이 충족될 때 알림을 보내는 채널.
  • Contact point type은 Email, Line, MS Teams, Slack 등 다양함.

✔ Create contact points

  • name, type, address를 설정해준다.
  • Test 버튼을 클릭하면 해당 address로 테스트 알림이 발송된다.

🔶 Notification policies

  • alert이 contact point로 라우팅되는 방식을 결정함.
  • Root policy는 모든 알람이 디폴트로 보내지는 contact point를 설정한다.
  • Specific routing을 사용해서 특정 알림은 정해진 contact point로만 알림이 가도록 설정할 수 있다.
  • 앞에 설정해준 alertname=TestRule을 사용해서 TestMail로 알림이 가도록 설정해두었다.

🔶 Alert Test

  • 설정해둔 alert rule에 따라서 alert이 제대로 발생하는지 확인.
  • rule에서 humidity 값이 3 ~ 34 사이의 값이 나오는 경우 rule을 trigger하도록 설정해두었다.
  • 아래 사진은 value가 33이어서 alerting 되었다.
  • 메일에도 알림이 잘 발송되었다.

Grafana alerting 참조
Expression 참조

profile
Web Developer

0개의 댓글