zabbix 自定义监控,自动化运维远程处理主机程序
zabbix_agent配置
[ops@seg0* etc]$ cat zabbix_agentd.conf | egrep -v "^#|^$"
EnableRemoteCommands=1 //开启执行远程命令
LogRemoteCommands=1
LogFile=/var/log/zabbix/zabbix_agentd.log
Server=10.92.208.**,10.92.208.*
ListenPort=10080
ServerActive=10.92.208.**
Hostname=10.92.208.28*
Include=/usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/*.conf #自定义监控脚本存放位置
UnsafeUserParameters=1 #打开自定义监控项功能
监控脚本
备注:该脚本是监控kafka消费程序数据延迟情况
#!/bin/python
import requests
#import sys
from lxml import etree
import argparse
#from locale import *
url_path = r'/usr/local/zabbix-agent/scripts/url_list'
#arg1 = sys.argv[1]
#arg2 = sys.argv[2]
topic_offset = {}
topic_lag = {}
#setlocale(LC_NUMERIC, 'English_US')
def get_consume_info(arg1,arg2):
with open(url_path,'r') as f:
urls = f.readlines()
for url in urls:
url = url.strip()
# print(url)
html = etree.HTML(requests.get(url=url).text)
# print(etree.tostring(html, encoding='utf-8').decode('utf-8'))