我的服务器上安装了Nagios和Oracle sqlplus客户端。 Sqlplus运行时需要很少的环境变量,因此我将导出添加到/etc/profile
以root身份登录设置变量,登录为用户nagios设置也没关系但是当我从nagios web界面运行一些检查时(这些检查是用bash编写的),它们以错误Error: Empty result from sqlplus. Check plugin settings and Oracle status.
结束
当我从终端以root用户或nagios用户运行这些检查时,一切正常,这就是我发现问题出现在env变量中的方式。
我会很高兴有任何建议。
答案 0 :(得分:10)
我发现这是来自nagios的错误,您可以查看来自this link的文档。
您可以在文件/etc/init.d/nagios
中找到此代码。
# Load any extra environment variables for Nagios and its plugins
if test -f /etc/sysconfig/nagios; then
. /etc/sysconfig/nagios
fi
只需在Fedora或rhel的nagios
路径上创建文件/etc/sysconfig/
,即可获得所需的额外变量。
案件。
[root@server sysconfig]# cat nagios
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
就是这样。
最好的考虑Marco。
答案 1 :(得分:1)
与马克提到的NRPE一样,这个问题也是如此。
你必须将环境变量添加到/ etc / sysconfig / nrpe然后你必须重新启动nrpe:service nrpe restart
由于 优素福