python3實(shí)現(xiàn)zabbix告警推送釘釘?shù)氖纠?/h1>
更新時(shí)間:2019年02月20日 11:38:41 作者:huangwjwork
今天小編就為大家分享一篇python3實(shí)現(xiàn)zabbix告警推送釘釘?shù)氖纠?,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
自己寫了一個(gè)簡單的python腳本,用來推送zabbix告警到釘釘機(jī)器人,推送格式為markdown,有需要的可以自己修改markdown的格式及推送的值(zabbix宏)

環(huán)境如下,理論上zabbix版本不影響,可以看看官方宏定義是否有區(qū)別
python 3
zabbix 3.4.2
zabbix宏官方文檔:https://www.zabbix.com/documentation/3.4/manual/appendix/macros/supported_by_location
配置
配置釘釘自定義機(jī)器人
官方文檔:https://open-doc.dingtalk.com/docs/doc.htm?treeId=257&articleId=105735&docType=1
編寫zabbix告警腳本并置于alertscripts路徑下
[itservice@zabbix alertscripts]$ cat /usr/lib/zabbix/alertscripts/alert_for_zabbix_by_dingding.py
#!/usr/bin/env python3
# encoding: utf-8
# author: huangwj
# mail: huangwjwork@gmail.com
# bolg: huangwj.app
# csdn: http://blog.csdn.net/u010871982
# github: https://github.com/huangwjwork
# file: alert_for_zabbix_by_dingding.py
# time: 2018/5/11 14:31
'''
本程序由huangwjwork開發(fā),一切最終解釋權(quán)歸于huangwjwork.
本程序?yàn)殚_源,只用于技術(shù)交流,只供開發(fā)者參考與學(xué)習(xí).
不得用于違反法律以及未經(jīng)許可不得用于商業(yè).保留其追責(zé)權(quán)利.
本程序不涉及任何違法敏感因素,如有人拿程序改造成違法工具,將與本程序開發(fā)者無關(guān).
勇于開源,請勿濫用.內(nèi)部學(xué)習(xí)交流,請勿傳播.違反者造成相關(guān)法律事故,自行承擔(dān)刑事責(zé)任.
'''
import sys
import getopt
import requests
import json
import traceback
try:
opts,args = getopt.getopt(sys.argv[1:],shortopts='',longopts=['webhook_url=','webhook_title=','alert_message='])
for opt,value in opts:
if opt == '--webhook_url':
webhook_url = value
elif opt == '--webhook_title':
webhook_title = value
elif opt == '--alert_message':
alert_message = value
webhook_header = {
"Content-Type": "application/json",
"charset": "utf-8"
}
webhook_message = {
"msgtype": "markdown",
"markdown": {
"title": webhook_title,
"text": alert_message
}
}
sendData = json.dumps(webhook_message,indent=1)
requests.post(url=webhook_url,headers=webhook_header,data=sendData)
except:
traceback.print_exc(file=open('/tmp/alert_zabbix_dingding.log','w+'))
配置zabbix mediatype
webhook_url替換成釘釘機(jī)器人webhook URL

配置user

配置action

附上message
告警
## 故障
**主機(jī)名稱:** {HOSTNAME1}
**告警名稱:** {TRIGGER.NAME}
**告警級別:** {TRIGGER.SEVERITY}
**告警時(shí)間:** {EVENT.DATE} {EVENT.TIME}
**檢查項(xiàng):** {TRIGGER.KEY1}
**當(dāng)前值:** {ITEM.LASTVALUE}
**IP地址:** {HOST.IP}
**事件ID:** {EVENT.ID}
恢復(fù)
## 恢復(fù)
**主機(jī)名稱:** {HOSTNAME1}
**告警名稱:** {TRIGGER.NAME}
**告警級別:** {TRIGGER.SEVERITY}
**告警時(shí)間:** {EVENT.DATE} {EVENT.TIME}
**恢復(fù)時(shí)間:** {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
**故障時(shí)長:** {EVENT.AGE}
**檢查項(xiàng):** {TRIGGER.KEY1}
**當(dāng)前值:** {EVENT.RECOVERY.VALUE}
**IP地址:** {HOST.IP}
**事件ID:** {EVENT.ID}
以上這篇python3實(shí)現(xiàn)zabbix告警推送釘釘?shù)氖纠褪切【幏窒斫o大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
-
python 實(shí)現(xiàn)將文件或文件夾用相對路徑打包為 tar.gz 文件的方法
今天小編就為大家分享一篇python 實(shí)現(xiàn)將文件或文件夾用相對路徑打包為 tar.gz 文件的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧 2019-06-06
-
解決vscode python print 輸出窗口中文亂碼的問題
今天小編就為大家分享一篇解決vscode python print 輸出窗口中文亂碼的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧 2018-12-12
-
使用Python opencv實(shí)現(xiàn)視頻與圖片的相互轉(zhuǎn)換
這篇文章主要介紹了使用Python opencv實(shí)現(xiàn)視頻與圖片的相互轉(zhuǎn)換,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下 2019-07-07
-
python接口自動化之ConfigParser配置文件的使用詳解
這篇文章主要介紹了python接口自動化之ConfigParser配置文件的使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下 2020-08-08
最新評論
自己寫了一個(gè)簡單的python腳本,用來推送zabbix告警到釘釘機(jī)器人,推送格式為markdown,有需要的可以自己修改markdown的格式及推送的值(zabbix宏)

環(huán)境如下,理論上zabbix版本不影響,可以看看官方宏定義是否有區(qū)別
python 3
zabbix 3.4.2
zabbix宏官方文檔:https://www.zabbix.com/documentation/3.4/manual/appendix/macros/supported_by_location
配置
配置釘釘自定義機(jī)器人
官方文檔:https://open-doc.dingtalk.com/docs/doc.htm?treeId=257&articleId=105735&docType=1
編寫zabbix告警腳本并置于alertscripts路徑下
[itservice@zabbix alertscripts]$ cat /usr/lib/zabbix/alertscripts/alert_for_zabbix_by_dingding.py
#!/usr/bin/env python3
# encoding: utf-8
# author: huangwj
# mail: huangwjwork@gmail.com
# bolg: huangwj.app
# csdn: http://blog.csdn.net/u010871982
# github: https://github.com/huangwjwork
# file: alert_for_zabbix_by_dingding.py
# time: 2018/5/11 14:31
'''
本程序由huangwjwork開發(fā),一切最終解釋權(quán)歸于huangwjwork.
本程序?yàn)殚_源,只用于技術(shù)交流,只供開發(fā)者參考與學(xué)習(xí).
不得用于違反法律以及未經(jīng)許可不得用于商業(yè).保留其追責(zé)權(quán)利.
本程序不涉及任何違法敏感因素,如有人拿程序改造成違法工具,將與本程序開發(fā)者無關(guān).
勇于開源,請勿濫用.內(nèi)部學(xué)習(xí)交流,請勿傳播.違反者造成相關(guān)法律事故,自行承擔(dān)刑事責(zé)任.
'''
import sys
import getopt
import requests
import json
import traceback
try:
opts,args = getopt.getopt(sys.argv[1:],shortopts='',longopts=['webhook_url=','webhook_title=','alert_message='])
for opt,value in opts:
if opt == '--webhook_url':
webhook_url = value
elif opt == '--webhook_title':
webhook_title = value
elif opt == '--alert_message':
alert_message = value
webhook_header = {
"Content-Type": "application/json",
"charset": "utf-8"
}
webhook_message = {
"msgtype": "markdown",
"markdown": {
"title": webhook_title,
"text": alert_message
}
}
sendData = json.dumps(webhook_message,indent=1)
requests.post(url=webhook_url,headers=webhook_header,data=sendData)
except:
traceback.print_exc(file=open('/tmp/alert_zabbix_dingding.log','w+'))
配置zabbix mediatype
webhook_url替換成釘釘機(jī)器人webhook URL

配置user

配置action

附上message
告警
## 故障
**主機(jī)名稱:** {HOSTNAME1}
**告警名稱:** {TRIGGER.NAME}
**告警級別:** {TRIGGER.SEVERITY}
**告警時(shí)間:** {EVENT.DATE} {EVENT.TIME}
**檢查項(xiàng):** {TRIGGER.KEY1}
**當(dāng)前值:** {ITEM.LASTVALUE}
**IP地址:** {HOST.IP}
**事件ID:** {EVENT.ID}
恢復(fù)
## 恢復(fù)
**主機(jī)名稱:** {HOSTNAME1}
**告警名稱:** {TRIGGER.NAME}
**告警級別:** {TRIGGER.SEVERITY}
**告警時(shí)間:** {EVENT.DATE} {EVENT.TIME}
**恢復(fù)時(shí)間:** {EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}
**故障時(shí)長:** {EVENT.AGE}
**檢查項(xiàng):** {TRIGGER.KEY1}
**當(dāng)前值:** {EVENT.RECOVERY.VALUE}
**IP地址:** {HOST.IP}
**事件ID:** {EVENT.ID}
以上這篇python3實(shí)現(xiàn)zabbix告警推送釘釘?shù)氖纠褪切【幏窒斫o大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python 實(shí)現(xiàn)將文件或文件夾用相對路徑打包為 tar.gz 文件的方法
今天小編就為大家分享一篇python 實(shí)現(xiàn)將文件或文件夾用相對路徑打包為 tar.gz 文件的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06
解決vscode python print 輸出窗口中文亂碼的問題
今天小編就為大家分享一篇解決vscode python print 輸出窗口中文亂碼的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
使用Python opencv實(shí)現(xiàn)視頻與圖片的相互轉(zhuǎn)換
這篇文章主要介紹了使用Python opencv實(shí)現(xiàn)視頻與圖片的相互轉(zhuǎn)換,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07
python接口自動化之ConfigParser配置文件的使用詳解
這篇文章主要介紹了python接口自動化之ConfigParser配置文件的使用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08

