Grafana 대시보드 임계치 설정을 통해 알람 메시지를 Telegram으로 연동
기존에 생성한 텔레그램 봇 재활용
https://comengx.tistory.com/98
Telegram을 사용하여 Azure 알람 받기 1 (텔레그램 설정)
텔레그램을 사용하여 Azure VM 관련 알람 설정 1. Telegram에서 BotFather를 검색하고 대화 시작 2. "/newboot" 명령어로 새 봇을 생성 3. 봇 이름 생성봇의 이름은 bot 으로 끝나야 됨중복되지 않는 이
comengx.tistory.com
Grafana 대시보드에서 CPU와 메모리 임계치 알람 수신
- CPU: 사용량 70% 초과 5분 지속 시
- Memory: 사용량 80% 초과 5분 지속 시
Grafana 대시보드 접속 후 설정
Contact points 설정
1. Notification Templates 생성
- 왼쪽 메뉴 "Alerting - Contact points" 선택 후 "Notification Templates" 클릭
- "+ Add notification template" 클릭 후 "Template name"과 "Template" 내용 작성 후 "Save"
더보기
{{ define "telegram_alert_template.message" }}
{{ if gt (len .Alerts.Firing) 0 }}
❌ {{ len .Alerts.Firing }} [FIRING] GRAFANA ALERT(S)
{{ range .Alerts.Firing }}
Summary: {{ .Annotations.summary }}
- Alert: {{ .Labels.alertname }}
- Item: {{ .Labels.item }}
- Hostname: {{ .Labels.host }}
- Values: {{ .Values }}
- Starts at: {{ .StartsAt }}
{{ end }}
{{ end }}
{{ if gt (len .Alerts.Resolved) 0 }}
✅ {{ len .Alerts.Resolved }} [RESOLVED] GRAFANA ALERT(S)
{{ range .Alerts.Resolved }}
Summary: {{ .Annotations.summary }}
- Alert: {{ .Labels.alertname }}
- Item: {{ .Labels.item }}
- Hostname: {{ .Labels.host }}
- Values: {{ .Values }}
- Ends at: {{ .EndsAt }}
{{ end }}
{{ end }}
{{ end }}
2. Telegram 연동
- 왼쪽 메뉴 "Alerting - Contact points" 선택 후 "Contact Points" 클릭
- "+ Create contact point" 클릭 후 Telegram 연동
- Name, Intergration, BOT API Token, Chat ID 입력
- 입력이 모두 완료 되었으면, "Optional Telegram settings" 클릭 후 미리 생성한 Template 연동
- "Edit Message" 클릭 후 "telegram_alert_template.message" 선택 후 "Save"
- Telegram 연동 테스트
- "Test" 클릭하여 메시지 발송 확인
- Telegram 메시지 확인
- 등록 내역 확인 후 " Save contact point" 클
Alert rules 설정
왼쪽 메뉴 "Alerting - Alert rules" 클릭 후 "+ New alert rule" 선택 -> 내용 입력 후 "Save rule"
1. Enter alert rule name
2. Define query and alert condition
- Group, Host 는 사용환경에 따라 설정 (테스트를 위해 1대만 설정)
- 임계치 70% 설정
3. Set evaluation behavior
- "Folder"와 "Evaluation group and interval" 설정은 환경에 따라 임의로 설정
4. Configure labels and notifications
- Contact points에서 생성한 Telegram 선택
5. Configure notification message
CPU 사용량이 70%를 초과를 5분 이상 지속 시 Telegram 을 통해 아래와 같은 메시지를 받을 수 있음.