Zabbix釘釘機器人監控腳本(可用版)

#!/usr/bin/env python
#coding:utf-8
#zabbix釘釘報警
import requests,json,sys,os,datetime
webhook="上面創建釘釘機器人的webhook地址"
user=sys.argv[1]
text=sys.argv[3]
data={
    "msgtype": "text",
    "text": {
        "content": text
    },
    "at": {
        "atMobiles": [
            user
        ],
        "isAtAll": False
    }
}
headers = {'Content-Type': 'application/json'}
x=requests.post(url=webhook,data=json.dumps(data),headers=headers)
if os.path.exists("/tmp/zabbix_dingding.log"):
    f=open("/tmp/zabbix_dingding.log","a+")
else:
    f=open("/tmp/zabbix_dingding.log","w+")
f.write("\n"+"--"*30)
if x.json()["errcode"] == 0:
    f.write("\n"+str(datetime.datetime.now())+"    "+str(user)+"    "+"發送成功"+"\n"+str(text))
    f.close()
else:
    f.write("\n"+str(datetime.datetime.now()) + "    " + str(user) + "    " + "發送失敗" + "\n" + str(text))
    f.close()

以上代碼經檢測爲可使用,可將上述代碼保存爲Python執行程序(.py文件),可配合Zabbix觸發器進行報警。
Zabbix監控腳本一般存位置爲/usr/local/zabbix/share/zabbix/alertscripts/ 目錄下,具體位置可改變,但是要與zabbix_server.conf配置文件中的Alertscripts路徑保持一致。
並且代碼後段的文件類型操作,在/tmp/目錄下建立報警信息日誌,便於排查相關錯誤,及告警信息是否進入zabbix服務器中。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章