Grafana+prometheus 使用 Email 或 釘釘告警

操作系統(tǒng):Ubuntu 16.04

依賴環(huán)境:docker (文章中所涉及到的鏡像是本地自己打的,如有需要,請(qǐng)下載 鏡像地址

鏡像文件:grafana-prometheus? ? ? ? ? ? ? ? ? ? latest? ? ? ? ? ? ? c0b5646cc7b4? ? ? 656MB (鏡像內(nèi)包括:grafana-4.6.2+node_exporter-0.14.0-rc.2+prometheus-1.5.2+pushgateway-0.4.0 服務(wù),使用 supervisord 進(jìn)行管理)

注:此篇文章中prometheus中的數(shù)據(jù)是由應(yīng)用App 通過 metrice 埋點(diǎn)進(jìn)行統(tǒng)計(jì)push的,如有需要,請(qǐng)留言

prometheus 原理


配置文件準(zhǔn)備:

修改prometheus的配置文件,主要配置其拉去數(shù)據(jù)的地址

prometheus.yml

targets 中的地址是需要拉去數(shù)據(jù)的服務(wù)地址,此配置文件中只配pushgateway的服務(wù)地址。(同時(shí)可以添加node_exporter地址,來監(jiān)控服務(wù)器的一些資源數(shù)據(jù),例如配置中被注釋的 node resources)

grafana相關(guān)配置 defaults.ini:

修改告警郵件中訪問監(jiān)控頁面的地址
修改告警郵件地址

host = smtp.163.com:25? ? ? 163服務(wù)器的smtp地址及端口,25端口是非tls端口,不需要證書認(rèn)證

user = ******@163.com? ? ? ? 郵箱用戶

password =***********? ? ? ? ? 郵件服務(wù)器登錄密碼

from_address = ****@163.com 發(fā)送告警郵件的郵箱

from_name = Grafana? ? ? ? 發(fā)送告警郵件的名稱

注:grafana的郵箱配置也可以不再配置文件中配置,可以在docker 啟動(dòng)時(shí)進(jìn)行參數(shù)化配置

啟動(dòng)容器:

docker run -d \
-v /home/mpsp/dockerfile/grafana-prometheus/defaults.ini:/etc/grafana/conf/defaults.ini? \
-v /home/mpsp/dockerfile/grafana-prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
-p 3000:3000 \
-p 9100:9100 \
-p 9090:9090 \
-p 9091:9091 \
--name grafana-prometheus grafana-prometheus

也可以使用以下方式啟動(dòng)(不在defaults.ini 中配置郵件信息的)

docker run -d \
-e GF_SMTP_ENABLED=true \
-e GF_SMTP_SKIP_VERIFY=true \
-e GF_SMTP_HOST=smtp.163.com:25 \
-e GF_SMTP_USER=****@163.com \
-e GF_SMTP_PASSWORD=****** \
-e GF_SMTP_FROM_ADDRESS=****@163.com? \
-v /home/mpsp/dockerfile/grafana-prometheus/prometheus.yml:/etc/prometheus/prometheus.yml \
-p 3000:3000 \
-p 9100:9100 \
-p 9090:9090 \
-p 9091:9091 \
--name grafana-prometheus grafana-prometheus

訪問 IP:9091 可以查看pushgateway收集到的監(jiān)控?cái)?shù)據(jù)
訪問 IP:9090/graph 可以調(diào)用prometheus的監(jiān)控項(xiàng)進(jìn)行圖像化展示
訪問 IP:3000 訪問 grafana 監(jiān)控平臺(tái),默認(rèn)登錄信息 admin/admin

配置告警通知:

配置數(shù)據(jù)源:

增加? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? prometheus數(shù)據(jù)源

點(diǎn)擊 test測(cè)試是否可以連接。

配置郵件告警:

Email告警配置

配置路徑:Grafana左上角圖標(biāo) -->Alerting --> Configure notifications -->New Channel 進(jìn)行設(shè)置

如果想要通知多個(gè)郵箱,可以在Email address欄中通過 ; 進(jìn)行配置,配置完之后可以使用“Send Test”進(jìn)行測(cè)試,會(huì)收到一份測(cè)試郵件:

測(cè)試郵件


配置釘釘告警:

下載安裝釘釘后,需要添加一個(gè)機(jī)器人來接收告警信息:

機(jī)器人管理
自定義一個(gè)接收服務(wù)器
需要添加一個(gè)群組用于接收告警信息,添加完后,下一步會(huì)生產(chǎn)一個(gè) webhook 地址
創(chuàng)建完成

切換至Grafana同樣使用 New Channel 進(jìn)行配置,下拉窗口選擇“DingDing”

添加釘釘通知,url 是 前面創(chuàng)建機(jī)器人服務(wù)器時(shí)生成的webhook地址

同樣使用 “Send Test”進(jìn)行測(cè)試,會(huì)想 群組發(fā)送一條測(cè)試信息

測(cè)試信息

增加指標(biāo)監(jiān)控:

Grafana左上角圖標(biāo) -->Dashboard -->create your fist dashboard -->Graph

添加監(jiān)控圖
編輯

其他指標(biāo)的維護(hù)已在另外一篇文章(Ubuntu 16.04 安裝Grafana并配置監(jiān)控(Grafana + MySQL))中介紹過,此處不再贅述,此處只對(duì)Metrices 和 Alert 進(jìn)行介紹:

該配置是展示每秒接口調(diào)用的次數(shù)
配置告警指標(biāo)

Condition 選項(xiàng)中是配置監(jiān)控指標(biāo)的報(bào)警限制:

監(jiān)控?cái)?shù)據(jù)的什么指標(biāo)(when)從此時(shí)開始1分鐘內(nèi)(query(A,1m,now))超出閾值(is above),則進(jìn)行告警

在上圖例子中使用的是最大值(max())

配置結(jié)束后可以使用“Test Rule”來驗(yàn)證查詢是否有問題

配置告警內(nèi)容

Send to 中配置的是告警方式,點(diǎn)擊 +可以添加前面增加的 Altering

Message 中配置的是告警的具體描述

告警歷史信息

至此,告警配置已經(jīng)配置結(jié)束,下面進(jìn)行驗(yàn)證。


使用腳本或?yàn)g覽器持續(xù)調(diào)用埋點(diǎn)接口,當(dāng)均值超出閾值時(shí),就會(huì)觸發(fā)告警:

峰值超出閾值5,虛線包含的部分
告警郵件

一段時(shí)間后,當(dāng)指標(biāo)恢復(fù)到閾值以下,會(huì)發(fā)一封OK郵件

恢復(fù)郵件
釘釘接收收到的告警信息
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容