Computer Science

Grafana: email notification(이메일 알림) 설정

저번에 만들어둔 대시보드에서 두가지를 업데이트했다.  시각적으로 더 잘 나타내기 위해, 게이지 그래프를 추가했고 slack을 사용하지않는 사람들을 위해 email 로 경고 알람을 보내주도록 설정했다. 게이지 그래프는, 쿼리문만 잘 작성해주면 된다. 그래서 오늘의 주제는 email notification을 어떻게 설정하는가 이다! 차례로 알아보자 챤챤챤


1. gmail계정 설정에서, 보안 수준 낮은 앱을 허용해주어야한다. 권장 사항은 아니지만, 그라파나 알림을 받으려면 허용해주어야한다. 물론 defaults.ini파일에서 user로 설정한 이메일에 한해서만 허용해주면된다.

 

2. gmail에서 앱 비밀번호 발급받아야한다. 밑에서 사용할 것인데, 앱 비밀번호 없이 개인 비밀번호를 암호화도 되지않는 ini파일에 작성해놓기가 찜찜하니까...! 참고로 grafana 권장사항이다.(구글 고객센터 참고: https://support.google.com/accounts/answer/185833)

 

앱 비밀번호로 로그인하기 - Google 계정 고객센터

도움이 되었나요? 어떻게 하면 개선할 수 있을까요? 예아니요

support.google.com

 

3. grafana의 defaults.ini에서 smtp를 설정해주어야한다.  (자세한 사항은 나도 grafana의 github를 참고했다.https://github.com/grafana/grafana/issues/18078 )

 

Issue with grafana email alert · Issue #18078 · grafana/grafana

What Grafana version are you using? 6.2.4 What datasource are you using? prometheus What OS are you running grafana on? linux What did you do? Trying to send test mail to my gmail account, enabled ...

github.com

[smtp]
enabled = true
host = smtp.gmail.com:587
user = <user>@gmail.com
password = 해당 메일 패스워드 작성 # 구글 gmail에서 발급받은 앱 비밀번호 여기에 붙여넣기!

from_address = <user>@gmail.com 
from_name = # 여기에 나는 회사 이름 작성했음!

참고로 여기서 작성하는 user의 이메일이 notification email 이 오는 이메일 주소이다. from_name이 이메일 주소 옆에 달린 이름이더라. password가 필요해서, 테스트시에 내 개인 구글계정으로 notification을 보냈더니 계속 내 얼굴이 둥둥 떠다녀서 사장님이 굉장히 의아해하셨다는 후문이다..(머쓱)

 

4. localhost:3000(grafana)에 접속한 후, 좌측 패널에서 Alerting > Notification channels 에서 알림 설정을 해줄 것이다. 

Name은 원하는 이름 작성하면 되고(slack, line등 여러가지 알림채널을 사용할 때, 각각의 채널을 구분하기 위한 이름이다.), Type은 당연히 email. 밑의 설정들은 원하는 대로 설정하면 된다. 그리고 addresses에 ;로 구분하여 알림을 받고자하는 이메일을 모두 작성! 당연히 여기에는 password없이도 사용가능하다.  send test 해본 후 save하면 완성이다.

 

***참고*** 그래프 각각에서 threshold와 alert 설정하는 방법은,

대시보드 내의 원하는 그래프 edit창에서 alert 메뉴이다. 여기서 원하는 대로 설정해준 후, notification에 +버튼을 클릭해서 아까 만들어 둔 notification channel 추가! message 입력! 한 후에 기다려보자. 설정한 threshold(나의경우 1)를 초과하면 이메일이 온다. 너무 많이 온다. ㅠ_ㅠ 

 

리도비는 그럼 이만. 안뇽-