钉钉怎么添加自己的状态(钉钉添加自己的状态的方法)

时刻小站 199

官网:https://www.zabbix.com/

环境:centos7; zabbix4.0

1/创建钉钉机器人

在钉钉新建一个群,然后在群里添加智能群助手->添加机器人->添加机器人->"自定义"->添加,如图:(主表示报警内容出现的字)

保存Webhook,等一下python脚本需要使用。

2/zabbix主机查看脚本存放地址

[root@localhost ~]grep -Ev ^$| /etc/zabbix/zabbix_server.conf |grep AlertScriptsPathAlertScriptsPath=/usr/lib/zabbix/alertscripts

3/zabbix主机上部署pythone脚本

[root@localhost~]cd/usr/lib/zabbix/alertscripts/[root@localhostalertscripts]ll总用量8-rwxr-xr-x1rootroot9914月1517:32dingding.py

python脚本dingding.py内容如下:

!/usr/bin/env pythoncoding:utf-8zabbix钉钉报警import requests,json,sys,os,datetime注意主机是否有对应的模块webhook="https://oapi.dingtalk.com/robot/send?access_token=bd5ed0e5689123456789"说明:这里改为自己创建的机器人的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("/var/log/zabbix/dingding.log"): f=open("/var/log/zabbix/dingding.log","a+")else:f=open("/var/log/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()

可能用到相关中间件

yum -yinstallepel-releaseyuminstallpython-pip -y && pipinstallrequests

4/添加执行权限

chmod+xdingding.pypythondingding.py主01 主01 主01 这测试会在钉钉群里报警

5/配置zabbix

管理->报警媒介类型,如图:

{ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE}

6/配置触发器

配置->动作->触发器(创建动作),如图:

操作

默认标题:故障:Host{IPADDRESS} ls:{TRIGGER.STATUS}消息内容:主机名:{HOST.NAME}告警主机名:{HOSTNAME1}告警IP地址:{IPADDRESS}告警时间:{EVENT.DATE} {EVENT.TIME}告警等级:{TRIGGER.SEVERITY}触发告警项:{TRIGGER.NAME}监控参数:{TRIGGER.KEY1}问题详情:{ITEM.NAME}: {ITEM.VALUE}告警状态:{TRIGGER.STATUS}: {ITEM.VALUE1}事件ID:{EVENT.ID}

恢复操作

默认标题: 恢复:Host{IPADDRESS} ls:{TRIGGER.STATUS} 消息内容:主机名:{HOST.NAME}恢复主机名:{HOSTNAME1}恢复IP地址:{IPADDRESS}恢复时间:{EVENT.DATE} {EVENT.TIME}恢复等级:{TRIGGER.SEVERITY}触发告警项:{TRIGGER.NAME}监控参数:{TRIGGER.KEY1}问题详情:{ITEM.NAME}: {ITEM.VALUE}恢复状态:{TRIGGER.STATUS}: {ITEM.VALUE1}事件ID:{EVENT.ID}

7、用户配置报警:

上一篇:

下一篇:

  同类阅读

分享