zabbix企業微信報警
1.先注冊企業微信
企業微信位址:https://work.weixin.qq.com
1.2.填寫注冊相關資訊
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiYTMfhHLlN3XnxCM38FdsYkRGZkRG9lcvx2bjxCMy8VZ6l2csI0Q0QTcHxkNRJTY10mMxVTQClGVF5UMR9Fd4VGdsATNfd3bkFGazxycykFaKdkYzZUbapXNXlleSdVY2pESa9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL3YTOhZzN4EGO5cDO5EGZ5MTOmRTO2kTZlZDZkhDM3kzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
1.3.注冊完成
2.建立報警機器人
2.1.建立應用
應用管理–應用-建立應用
2.2.編輯應用資訊
設定機器人log、機器人名稱
2.3.建立成功
需要的兩個資訊
AgentId 1000002
Secret #這個會發送到企業微信
3.微信關聯企業微信接收報警内容
點選我的企業微信–微信插件–找到二維碼掃碼關注即可接收微信報警資訊
掃描二維碼關注我的企業微信報警資訊
手機微信檢視邀請資訊
3.1.指令行測試發現微信資訊
擷取企業ID
點選我的企業–企業資訊–企業ID
企業ID:ww232c7ba826aceaac
3.2.擷取企業應用ID和密碼
點選應用管理–找到對應的–應用-複制Agentld、Secret的值
AgentID 1000002
secret TtPPKdfYWphLiNBqnAqLEjH4Re8B9Ljg9dN8QUjxkfI
4.準備Python腳本發送消息至企業微信
使用腳本的時候隻需要修改17、18、19行即可
corpid=’ ’ 企業ID
appsecret=‘ ’ secret
agentid=’ ‘ AgentID
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#comment: zabbix接入微信報警腳本
import requests
import sys
import os
import json
import logging
logging.basicConfig(level = logging.DEBUG, format = '%(asctime)s, %(filename)s, %(levelname)s, %(message)s',
datefmt = '%a, %d %b %Y %H:%M:%S',
filename = os.path.join('/tmp','weixin.log'),
filemode = 'a')
corpid='' #企業ID
appsecret='-t0rZGTakxaH2izz7degTA41naI' #secret
agentid= #AgentID
#擷取accesstoken
token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret
req=requests.get(token_url)
accesstoken=req.json()['access_token']
#發送消息
msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken
touser=sys.argv[1]
subject=sys.argv[2]
toparty='3|4|5|6'
message=sys.argv[3]
params={
"touser": touser,
"toparty": toparty,
"msgtype": "text",
"agentid": agentid,
"text": {
"content": message
},
"safe":0
}
req=requests.post(msgsend_url, data=json.dumps(params))
logging.info('sendto:' + touser + ';;subject:' + subject + ';;message:' + message)
4.2.zabbix實作企業微信報警
将腳本上傳至zabbix-server端的,/usr/lib/zabbix/alertscripts路徑下 。
報警内容
報警内容
發生的
問題發生
目前狀态: 未解決❎️
告警主機: {HOSTNAME1}
告警時間: {EVENT.DATE} {EVENT.TIME}
告警等級: {TRIGGER.SEVERITY}
告警資訊: {TRIGGER.NAME}
告警項目: {TRIGGER.KEY1}
問題詳情: {ITEM.NAME}:{ITEM.VALUE}
事件ID: {EVENT.ID}
恢複的
問題恢複
目前狀态: 已處理✅
告警主機: {HOSTNAME1}
告警時間: {EVENT.DATE} {EVENT.TIME}
告警等級: {TRIGGER.SEVERITY}
告警資訊: {TRIGGER.NAME}
告警項目: {TRIGGER.KEY1}
問題詳情: {ITEM.NAME}:{ITEM.VALUE}
事件ID: {EVENT.ID}
4.3.删除指令行測試生成的報警日志
由于我們測試是以root身份測試的,如果不删除,zabbix報警的時候則無法報警,會提示無權限講報警資訊寫入到日志
[[email protected] ~]# rm -rf /tmp/weixin.log
4.4.建立微信報警媒介-定義發件人
點選管理—報警媒介類型—新增報警媒介—填寫名稱—類型選擇腳本—添加三個腳本參數
{ALERT.SENDTO} //發件人
{ALERT.SUBJECT} //标題
{ALERT.MESSAGE} //内容
5.添加zabbix報警媒介
建立成功
5.1.定義收件人
點選使用者—報警媒介—添加—類型選擇微信報警—收件人可以從企業微信上擷取—添加—更新
5.2.停用之前的郵箱報警
zabbix企業微信報警zabbix企業微信報警
5.3.觸發報警
日志提示已經送達