#!/usr/local/python3/bin/python3
# coding:utf-8
# zabbix企业微信报警
import
requests, json, sys, os, datetime
#微信钩子机器人地址
webhook
=
"https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxxxxxxxxxxxxxxxxxxxxx"
#zabbix传过来的三个变量
user
=
sys.argv[
1
]
title
=
sys.argv[
2
]
text
=
sys.argv[
3
]
#每发送一次报警,就记一次日志
file
=
r
"/var/log/zabbix/send2wechat.log"
#报警的信息
data
=
{
"msgtype"
:
"markdown"
,
"markdown"
: {
"content"
: title
+
"\n"
+
text
}
}
#请求这个钩子机器人
headers
=
{
'Content-Type'
:
'application/json'
}
x
=
requests.post(url
=
webhook, data
=
json.dumps(data), headers
=
headers)
if
os.path.exists(
file
):
f
=
open
(
file
,
"a+"
)
else
:
f
=
open
(
file
,
"w+"
)
f.write(
" "
+
" - -"
*
30
)
f.write(
"\n"
)
#记录日志
if
x.json()[
"errcode"
]
=
=
0
:
f.write(
" "
+
str
(datetime.datetime.now())
+
" "
+
str
(user)
+
" "
+
"发送成功"
+
" "
+
str
(title)
+
"\n"
)
f.close()
else
:
f.write(
" "
+
str
(datetime.datetime.now())
+
" "
+
str
(user)
+
" "
+
"发送失败"
+
" "
+
str
(title)
+
"\n"
)
f.close()