Zabbix里item取值超时怎么办?

正文

开发同学新开发了一个模块,需要运维监控一下8683\8682\9002这三个端口,于是我就在zabbix里把这三个端口进行了监控,但是却无法返回值,如图:
paradin

可见其他的自定义监控项是好使的,偏偏三个监控端口的项都是not-supported。我就进去到item里看看,type of informationdata type都是正常的,而且每三十秒一次更新,应该是没有什么问题的。
paradin

于是我就去zabbix的server使用zabbix-get去试试,到底是怎么回事儿,使用结果如图:
paradin

可见使用zabbix_get是可以取到值的,而且取值都正确,三个正常的端口反馈都是1,而不存在的端口(9002)的反馈是0。可是,我发现使用zabbix_get取值pid是结果秒出,而取值net.tcp.listen则是等了几乎5秒钟才获得结果。那么问题就出在这里了。

调整zabbix_agentd.conf里的Timeout值,把其设定为10,然后重启zabbix进程就OK了。

补充

1)https://www.xiaomastack.com/2015/07/03/zabbix_net-tcp-listen/comment-page-1/#comment-319,很多时候端口监听会出错,于是就用自定义键值的方法,但是小马哥博客里的这个方法在centos里是无法启动,zabbix会报语法错误。由于公司的zabbix是2.2版本,等我有时间需要细化一下这个语法。

2)调整unsupport items检查时间的方法是:在Adiministration里选择General然后在右侧下拉菜单里选择Other,然后修改Refresh unsupported items (in sec)的值,这个值得意思是“每多少秒去重新检查一下那些not_supported的值”。
paradin

3)这种长时间获取key的行为,很容易导致zabbix unreachable poller processes more than 75 busy这个错误,所以尽可能的不要添加这样的监控,而换用其它的方式。导致zabbix unreachable poller processes more than 75 busy这个错误的另一个原因就是可能有某台zabbix-agent死机了。

-------------This article is over!Thanks for reading!-------------
感谢您请我喝咖啡!(o´ω`o)
0%