k8s zabbix7学习-设置告警

设置钉钉告警

创建钉钉群组,添加自定义机器人,添加

保存好生成的webhook之后要用

在zabbix服务器上

安装python并生成环境:yum install python3

yum install -y python3-pip

pip3 install requests

创建日志文件

mkdir /usr/lib/zabbix/alertscripts/log

touch /usr/lib/zabbix/alertscripts/log/dingding.log

mkdir -p /usr/lib/zabbix/log/

touch /usr/lib/zabbix/log/dingding.log

chown zabbix.zabbix -R /usr/lib/zabbix/log/

生成python脚本

vim /usr/lib/zabbix/alertscripts/dingding.py

#!/usr/bin/env python

-*- coding: utf-8 -*-

import requests

import json

import sys

import os

import datetime

webhook = "https://oapi.dingtalk.com/robot/send?access_token=237132311231w4ru3rweehfiuqeor21o34u1923412werqwrq223"

user=sys.argv1

subject=sys.argv2

text=sys.argv3

data={

"msgtype": "text",

"text": {

"content": "%s%s"%(subject,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("/usr/lib/zabbix/alertscripts/log/dingding.log"):

f=open("/usr/lib/zabbix/alertscripts/log/dingding.log","a+")

else:

f=open("/usr/lib/zabbix/alertscripts/log/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()

!!!注意替换webhook!!!

给权限:chmod +x dingding.py

chown zabbix.zabbix dingding.py

试验脚本是否可用:./dingding.py 钉钉账号 告警 test

web页面操作

告警-->媒介-->创建媒介类型

{ALERT.SUBJECT}

{ALERT.MESSAGE}

{ALERT.SENDTO}

告警-->动作-->触发器动作->创建动作



#告警操作内容:

##标题:

服务器:{HOST.NAME}发生: {TRIGGER.NAME}故障!

##消息内容:

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

告警时间:{EVENT.DATE} {EVENT.TIME}

事件ID:{EVENT.ID}

#恢复操作内容

##标题:

服务器:{HOST.NAME}: {TRIGGER.NAME}已恢复!

##消息内容:

告警主机:{HOST.NAME}

告警地址:{HOST.IP}

监控项目:{ITEM.NAME}

监控取值:{ITEM.LASTVALUE}

告警等级:{TRIGGER.SEVERITY}

当前状态:{TRIGGER.STATUS}

告警信息:{TRIGGER.NAME}

告警时间:{EVENT.DATE} {EVENT.TIME}

恢复时间:{EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}

持续时间:{EVENT.AGE}

事件ID:{EVENT.ID}

相关推荐
袁小皮皮不皮17 小时前
1.HCIP BFD 学习笔记(优化版)
服务器·网络·笔记·网络协议·学习·智能路由器·ip
装不满的克莱因瓶17 小时前
【自动驾驶领域】学习 Cityscapes 数据集——城市街景语义理解的标准基准
人工智能·pytorch·python·深度学习·学习·机器学习·自动驾驶
清辞85318 小时前
产品经理需求推进流程
大数据·深度学习·学习·产品经理
YM52e18 小时前
鸿蒙PC ArkTS 声明合并问题深度解析与最佳实践
学习·华为·harmonyos·鸿蒙·鸿蒙系统
海兰19 小时前
【实用程序】电商销售分析仪表盘 — 从零搭建一个AI参与的全栈数据洞察系统
人工智能·学习·算法
ken223220 小时前
在 Libreoffice Calc中输入自定义表情字符时,需要保存之后,才能正常显示
学习
蘋天纬地20 小时前
k8s的控制平面是什么,有什么作用
容器·kubernetes
zwenqiyu20 小时前
P5283 [十二省联考 2019] 异或粽子题解
c++·学习·算法
编程圈子20 小时前
电机驱动开发学习2. 直流无刷电机工作原理
驱动开发·学习
MartinYeung520 小时前
[论文学习]大型语言模型(LLM)安全与隐私-基于善、恶、丑的深度分析
学习·安全·语言模型