前言: datax_web的数据库job_info表中last_handle_code字段200代表为上次执行成功,500表示上次执行未成功。
1、 通过写一个python脚本去取值即可
#!/usr/bin/python3
# czh
import pymysql
# 打开数据库连接
db = pymysql.connect(host='数据库地址',
user='user',
password='pwd',
database='dataxweb')
# 使用cursor()方法获取 *** 作游标
cursor = db.cursor()
failjob_list=[]
# SQL 查询语句
sql = "SELECT job_desc,last_handle_code FROM `job_info` WHERE last_handle_code= %s" % (500)
try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
job_desc = row[0]
last_handle_code = row[1]
failjob_list.append(job_desc)
if failjob_list ==[]:
print(0) ####zabbix返回0正常,返回非0为时候错误zabbix会去rint值
else:
print("Today dataxfailjob is ",failjob_list)
except:
print("Error: unable to fetch data")
# 关闭数据库连接
db.close()
2、修改zabbix-agnet的配置,重启服务
vi /etc/zabbix/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=datax_job,/usr/bin/python3 /scripts/datax_job.py
3、添加zabbix监控项
4.添加触发器
5.
5 添加触发器,判断日志里面是否包含(dataxfailjob字段)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)