原理

python编写脚本返回ns记录结果,使用zabbix文本监控,触发器配合正则表达式达到报警效果

脚本源码

#!/usr/bin/env python
# coding:utf-8
 
 
#需要安装dnspython模块
 
import dns.resolver
 
domain = 'xxx.com'  #需要检测的域名
def NS():
    dn = dns.resolver.query(domain, 'NS')  #类型为NS
    result = []
    for i in dn.response.answer:
        for j in i.items:
            tmp = j.to_text()
            result.append(tmp)
    print " ".join(result)
 
 
if __name__ == '__main__':
    NS()
 
 
执行结果为:
>>>  vip1.alidns.com. vip2.alidns.com.

自定义监控key值

UserParameter=custom.dns.ns,"C:/Python27/python" "C:/Program Files/zabbix_agent/bin/check_ns.py"

创建监控项

请输入图片描述

创建触发器

请输入图片描述

监控截图

请输入图片描述

报警效果

请输入图片描述

Last modification:May 9th, 2020 at 11:24 pm
If you think my article is useful to you, please feel free to appreciate