天天看點

zabbix企業微信報警zabbix企業微信報警

zabbix企業微信報警

1.先注冊企業微信

企業微信位址:https://work.weixin.qq.com
           

1.2.填寫注冊相關資訊

zabbix企業微信報警zabbix企業微信報警

1.3.注冊完成

zabbix企業微信報警zabbix企業微信報警

2.建立報警機器人

2.1.建立應用

應用管理–應用-建立應用

zabbix企業微信報警zabbix企業微信報警

2.2.編輯應用資訊

設定機器人log、機器人名稱

zabbix企業微信報警zabbix企業微信報警

2.3.建立成功

需要的兩個資訊

AgentId 1000002

Secret #這個會發送到企業微信

zabbix企業微信報警zabbix企業微信報警

3.微信關聯企業微信接收報警内容

點選我的企業微信–微信插件–找到二維碼掃碼關注即可接收微信報警資訊

zabbix企業微信報警zabbix企業微信報警

掃描二維碼關注我的企業微信報警資訊

zabbix企業微信報警zabbix企業微信報警

手機微信檢視邀請資訊

zabbix企業微信報警zabbix企業微信報警

3.1.指令行測試發現微信資訊

擷取企業ID

點選我的企業–企業資訊–企業ID

企業ID:ww232c7ba826aceaac
           
zabbix企業微信報警zabbix企業微信報警

3.2.擷取企業應用ID和密碼

點選應用管理–找到對應的–應用-複制Agentld、Secret的值

AgentID 1000002
secret TtPPKdfYWphLiNBqnAqLEjH4Re8B9Ljg9dN8QUjxkfI
           
zabbix企業微信報警zabbix企業微信報警

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報警媒介

zabbix企業微信報警zabbix企業微信報警

建立成功

zabbix企業微信報警zabbix企業微信報警

5.1.定義收件人

點選使用者—報警媒介—添加—類型選擇微信報警—收件人可以從企業微信上擷取—添加—更新

zabbix企業微信報警zabbix企業微信報警

5.2.停用之前的郵箱報警
zabbix企業微信報警zabbix企業微信報警

5.3.觸發報警

zabbix企業微信報警zabbix企業微信報警

日志提示已經送達

zabbix企業微信報警zabbix企業微信報警

5.4.檢視報警資訊

zabbix企業微信報警zabbix企業微信報警

繼續閱讀