当前位置:   article > 正文

zabbix添加telnet监控_zabbix telnet 表达式

zabbix telnet 表达式

添加针对端口监听telnet的监控项

应运营需求,添加程序端口的telnet监控。整体思路如下,


1.收集当前ip及端口情况,形成test文件,后边会被ansible批量执行时调用

2.将脚本2(monitor_listen_port.py)放到各机子下的/etc/zabbix/script/monitor_listen_port.py,并修改定时任务,这两项写到ansible-playbook中执行,执行脚本(ansible_add.yml)如下


 执行ansible-playbook脚本

3.zabbix-server端相关修改

3.1修改/etc/zabbix/zabbix_agentd.d/userparameter_auto_check_conn.conf,新增用于lld的两个脚本,修改后重启zabbix-agent服务

  1. #脚本telnet_port.py
  2. #!/usr/bin/python
  3. import telnetlib,sys
  4. IP=sys.argv[1]
  5. PORT=sys.argv[2]
  6. try:
  7. tn = telnetlib.Telnet(IP,PORT,timeout=10)
  8. ok=tn.set_debuglevel(2)
  9. print 1
  10. except:
  11. print 0
  1. #脚本listen_port_detect.py
  2. #! /usr/bin/python
  3. import os,sys,json
  4. def read_file(host_file_list):
  5. temp_list=[]
  6. for per_file_name in host_file_list:
  7. with open('/logdata/zabbix_monitor/%s' %(per_file_name)) as f:
  8. data=f.readlines()
  9. data=data+temp_list
  10. temp_list=data
  11. return data
  12. def rebuild_lld_format(ip_port_list,dict_hehe):
  13. for i in ip_port_list:
  14. port,ip=i.split()
  15. dict_hehe['data'].append({"{#IP}":'%s' %(ip),"{#PORT}":'%s' %(port)})
  16. print json.dumps(dict_hehe)
  17. if __name__=="__main__":
  18. dict_hehe={'data':[]}
  19. host_file=os.listdir('/logdata/zabbix_monitor')
  20. list_ip_port=read_file(host_file)
  21. rebuild_lld_format(list_ip_port,dict_hehe)


3.2 zabbix配置模板

添加名为 listen_port_monitor 的模板

添加discovery rules


添加lld item模板

添加lld trigger模板


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/304266
推荐阅读
相关标签
  

闽ICP备14008679号