尝试运行escript但只获得“NRPE:无法读取输出”

时间:2014-08-25 10:12:01

标签: erlang nagios nrpe erlang-escript

我使用Nagios来监控我的服务器,我想通过NRPE在服务器上运行一个escript文件。所以我必须使用CHECK_NRPE方法来调用escript,这是一个Erlang脚本文件。 这是我的escript文件:

#!/usr/bin/env escript

main(_) ->
    io:format("test\n"), 
    halt(1).

当escript文件在服务器上运行时,其结果是OK:

  

测试

但是当我使用下面的命令来调用escript文件时:

  

check_nrpe -H localhost -c check_test

我还在nrpe.cfg中定义了这样的命令:

  

命令[check_test] = / USR /本地/的nagios /的libexec / check_test

现在,结果转为:

  

NRPE:无法读取输出

我怀疑它可能是由于许可问题引起的。然后我将escript文件修改为具有相同路径,相同文件名和相同权限的shell脚本文件,如下所示:

#!/usr/bin bash
echo "test";
exit 1;

此时,我再次尝试命令,但结果正常:

  

测试

那是为什么? Nagios不支持erlang脚本吗?我不相信。

0 个答案:

没有答案