應用商城下載seo服務是什么
文章目錄
- Zabbix對接飛書告警
- 背景
- 創(chuàng)建飛書群組
- Zabbix配置
- 創(chuàng)建告警媒介類型
- 創(chuàng)建動作
- 用戶關聯(lián)飛書告警
Zabbix對接飛書告警
背景
@運維 你看下他的進程是不是掛了,之前在9點28分有發(fā)消息的,這次沒有發(fā)消息
哐哐哐的去看了一通,確實有個進程之前是3個,現(xiàn)在只有2個了,進程減少了,當然這個業(yè)務也就存在問題了。還好小伙伴細心發(fā)現(xiàn)的比較早,如果小伙伴沒有發(fā)現(xiàn),業(yè)務受到了影響那就是一個生產(chǎn)事故,當然應用有問題也是一部分原因。所以監(jiān)控要加起來這是必須要做的事情,以下是Zabbix6 對接和飛書的對接的步驟
創(chuàng)建飛書群組
自行創(chuàng)建,創(chuàng)建結(jié)束后添加機器人,點擊機器人可獲得
webhook 地址和簽名校驗,注意保密哦
Zabbix配置
創(chuàng)建告警媒介類型
http://127.0.0.1:18380/zabbix.php?action=mediatype.list
填寫報警媒介類型信息,填寫對應的值,Message Templetes、選項默認即可,填寫完成后點擊添加
主要信息,方便復制的文字有
{ALERT.MESSAGE}
導入后,這時候有了feishu的類型
在Zabbix server的機器上安裝python3的環(huán)境,我是為了偷懶使用了conda,然后通過軟連給了全部的環(huán)境
cd /opt/
wget https://repo.anaconda.com/archive/Anaconda3-2023.03-1-Linux-x86_64.sh
chmod u+x Anaconda3-2023.03-1-Linux-x86_64.sh
./Anaconda3-2023.03-1-Linux-x86_64.sh
按回車
輸入"yes"
指定路徑"/usr/local/anaconda3"
輸入"yes"
no
設置軟連接
ln -s /usr/local/anaconda3/bin/pip /usr/bin/pip
ln -s /usr/local/anaconda3/bin/python3 /usr/bin/python3
在此路徑編寫腳本,腳本名稱和創(chuàng)建告警器的腳本名字要對應起來
cd /usr/local/share/zabbix/alertscripts
vim zabbix_feishu.py
python 腳本,#!/usr/bin/python3這個是必須有的,指定python的版本
#!/usr/bin/python3
import hashlib
import base64
import hmac
import time
import requests
import sys# 飛書機器人的信息
url = 'https://open.feishu.cn/open-apis/bot/v2/hook/e3d4acfc-982b-449f-bc54-43b6e03220d'
# 簽名可以不用
secret = 'n5oglp5N2wVwppK4Ltb'def gen_sign():timestamp = int(time.time())# 拼接timestamp和secretstring_to_sign = '{}\n{}'.format(timestamp, secret)hmac_code = hmac.new(string_to_sign.encode("utf-8"), digestmod=hashlib.sha256).digest()# 對結(jié)果進行base64處理sign = base64.b64encode(hmac_code).decode('utf-8')return timestamp, signdef send_feishu_message(str):timestamp, sign = gen_sign()headers = {"Content-Type": "application/json",}data = {"timestamp": timestamp,"sign": sign,"msg_type": "text","content": {"text": str}}result = requests.post(url, json=data, headers=headers)print(result.json())returnif __name__ == '__main__':text = sys.argv[1]# text = "1"send_feishu_message(text)
給腳本賦權(quán)
chomd 755 /usr/local/share/zabbix/alertscripts/zabbix_feishu.py
對飛書進行測試
這時候會有飛書消息發(fā)出來
如果沒有發(fā)出,則說明有問題,也可以在Linux上進行測試
這么測試也可以
(base) [root@localhost alertscripts]# cd /usr/local/share/zabbix/alertscripts
(base) [root@localhost alertscripts]# python zabbix_feishu.py test
{'StatusCode': 0, 'StatusMessage': 'success', 'code': 0, 'data': {}, 'msg': 'success'}
先確定好這些是對的,然后再進行下一步操作
創(chuàng)建動作
創(chuàng)建觸發(fā)條件,有好幾種類型,根據(jù)自身情況進行選擇
每個動作添加對應的值
配置對應的細節(jié)操作,勾選Custom Message,填寫類型,配置完點擊Add
異常告警: {EVENT.NAME}告警主機:{HOSTNAME1}
告警時間:{EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警信息:{EVENT.NAME}
告警項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態(tài):{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢復通知配置
恢復通知: {EVENT.NAME}恢復主機:{HOSTNAME1}
恢復時間:{EVENT.TIME}
恢復等級:{TRIGGER.SEVERITY}
恢復信息:{EVENT.NAME}
恢復項目:{TRIGGER.KEY1}
問題詳情:{ITEM.NAME}:{ITEM.VALUE}
當前狀態(tài):{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
詳細的zabbix的文檔請Zabbix官網(wǎng)查詢
點擊添加配置完成
用戶關聯(lián)飛書告警
選擇用戶,找到Admin進行關聯(lián)
類型選中剛才創(chuàng)建的feishu
參考Zabbix飛書機器人告警