我正在尝试使用以下Python代码和说明从Nagios获得响应: http://skipperkongen.dk/2011/12/06/hello-world-plugin-for-nagios-in-python/
由于某些原因,我从来没有得到Nagios的确定,它总是带回来的消息:返回代码126超出界限 - 插件可能缺失
我安装了nagiosplugin 1.0.0,但似乎仍然无法正常工作 与此同时,我有一些其他服务(不是python文件),例如, http检查,当前用户和SSH
我做错了什么?我已经尝试解决这几天了
答案 0 :(得分:1)
让Nagios使用您的新插件非常简单。您应该对三个文件进行更改并重新启动Nagios - 这就是全部。
第一个文件是 /etc/nagios/command-plugins.cfg (如果你知道 ubuntu 中此文件或模拟的路径,请留下评论)。假设插件文件放在/ usr / lib / nagios / plugins /目录中:
command[check_hello_world]=/usr/lib/nagios/plugins/check_helloworld.py -m 'some message'
将一个目录下载到 /etc/nagios/objects/commands.cfg (对于ubuntu用户,应该在该目录中创建cfg文件 / etc / nagios-plugins / config / 强>):
define command {
command_name check_hello_world
command_line $USER1$/check_hello_world.py -m 'some message'
}
保存文件并打开 /etc/nagios/objects/localhost.cfg (在ubuntu路径中找到位于/etc/nagios3/nagios.cfg中的服务定义文件,默认情况下 cfg_dir = / etc / nagios3 / conf.d 。因此,要在ubuntu中定义新服务,用户应在该目录中创建cfg文件,例如 hello.cfg )。找到此部分:
#
# SERVICE DEFINITIONS
#
并添加新条目:
define service {
use local-service ; Name of service template to use
host_name localhost
service_description Check using the hello world plugin (always returns OK)
check_command check_hello_world
}
剩下的就是重启Nagios并验证插件是否正常工作。通过发出以下命令重新启动Nagios:
/etc/init.d/nagios restart
http://www.linux-mag.com/id/7706/
ubuntuforums.org - Thread: My Notes for Installing Nagios on Ubuntu Server 12.04 LTS
答案 1 :(得分:0)
我必须在python2.7前面添加路径,即使文件中的shebang指定了它。
在命令定义中我有这个:
command_line /usr/local/bin/python2.7 $USER1$/check_rabbit_queues.py --host $HOSTADDRESS$ --password $ARG1$
即使实际python文件的顶部有:
#!/usr/bin/env python2.7
即使脚本执行并从命令行返回得很好而没有指定解释器。
我尝试的其他任何东西似乎都没有用。