我的所有 Apache 插件都返回相同的值:
/usr/share/munin/plugins# munin-run apache_volume volume443.value U
这是我在 /etc/munin/plugin-conf.d/munin-node 中的配置
[apache_*] env.ports 443
有人知道问题出在哪里吗?
提前致谢
答案1
我找到了解决方案。
Apache 脚本与 SSL 不兼容。您必须使用修改后的版本:
http://munin-monitoring.org/attachment/wiki/PluginCat/apache_volume
http://munin-monitoring.org/attachment/wiki/PluginCat/apache_accesses
http://munin-monitoring.org/attachment/wiki/PluginCat/apachessl_processes
确保安装了 perl 库 LWP::UserAgent 和 Crypt::SSLeay
还修改 /etc/munin/plugin-conf.d/munin-node:
[apache_*]
env.ports 443
env.url https://localhost:443/server-status?auto
之后它运行良好;-)
答案2
您是否已设置 Apache 来提供状态信息?/etc/apache2/mods-available/status.conf
您需要类似
<IfModule mod_status.c>
ExtendedStatus On
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from localhost ip6-localhost 127.0.0.1 ::1
</Location>
</IfModule>
答案3
首先:另请参阅下面的编辑!也许您不必更改脚本!
“hotips” 的答案是正确的(+1),但只有链接不再有效。但您可以自行更改这三个脚本。这很容易。安装 perl 包 LWP::UserAgent 和 Crypt::SSLeay(如“hotips”所述)后,编辑每个脚本并更改以下几行:
...
my $ua = LWP::UserAgent->new(timeout => 30,
agent => sprintf("munin/%s (libwww-perl/%s)", $Munin::Common::Defaults::MUNIN_VERSION, $LWP::VERSION));
...
...
my $response = $ua->request(HTTP::Request->new('GET',$url));
...
进入:
...
my $ua = LWP::UserAgent->new(timeout => 30,
verify_hostname => 0,
agent => sprintf("munin/%s (libwww-perl/%s)", $Munin::Common::Defaults::MUNIN_VERSION, $LWP::VERSION));
...
...
my $response = $ua->get($url);
...
之后不要忘记添加配置条目env.ports 443
和env.url https://localhost:443/server-status?auto
(/etc/munin/plugin-conf.d/munin-node
“hotips” 也描述了)
编辑
啊!发现了一件有趣的事情。也许你不需要更改脚本!在我安装两个 perl 包并添加配置条目后,脚本与 SSL 配合得很好!