0

我的 tomcat 应用程序在 /usr/share/tomcat6/webapps/myApp/munin/ 下的文件中写入了一些值。该文件的权限默认为 644(tomcat:tomcat 所有权)。我编写了一个非常简单的 munin 插件来读取这些值,它位于 /usr/share/munin/plugins/ 中。与其他插件一样,权限为 (root:root) 755。我还在 /etc/munin/plugins/ 中创建了一个符号链接。

如果我使用 munin-run myApp_lookuptime,我会得到正确的值、配置和 --debug 输出。但是,如果我远程登录,它会给我“错误退出”。munin-node.log 说:

2013/05/03-14:35:08 [30657] Error output from myApp_lookuptime:
2013/05/03-14:35:08 [30657]     /etc/munin/plugins/myApp_lookuptime: line 15: /usr/share/tomcat6/webapps/myApp/munin/myApp.LookupTime.log: Permission denied
2013/05/03-14:35:08 [30657] Service 'myApp_lookuptime' exited with status 1/0.

在 /etc/munin/plugin-conf.d/munin-node 中,我写道:

[myApp*]
user root
group root

但它仍然失败。从该服务器上的任何虚拟帐户,我都可以读取该日志,但仍然 munin 失败并出现“Permission Denied”错误。我究竟做错了什么?

4

2 回答 2

1

嗯,真的很简单。SELinux 阻止了我的插件。因此,如果您的服务器不公开,请将其关闭,或者如果服务器公开,请学习制定规则。

这是 CentOS 的指南:http ://www.centos.org/docs/5/html/5.2/Deployment_Guide/sec-sel-enable-disable.html

在那之后,我重新启动,我的插件就像一个魅力。

谢谢你,我。

于 2013-06-10T14:18:46.800 回答
0

在 /etc/munin/plugin-conf.d/munin-node 中为您的插件设置 env.PATH 变量,以便它可以找到所有可执行文件对我有用。

http://munin-monitoring.org/wiki/faq#Q:Whydoesapluginworkwithmunin-runbutnotinmunin-node

于 2013-11-20T20:20:34.073 回答