ExtendedStatus를 활성화했습니다.
$ grep ExtendedStatus
/etc/apache2/mods-available/status.conf:ExtendedStatus On
하지만 "무닌 어드바이스(Munin Advice)"에서는 아직 문을 닫았다고 합니다.
root@SERVER:/etc/apache2# munin-node-configure --suggest|grep apache
apache_accesses | yes | no [ExtendedStatus option for apache mod_status is missing on port 11111]
apache_processes | yes | no
apache_volume | yes | no [ExtendedStatus option for apache mod_status is missing on port 11111]
# The following plugins caused errors:
# apache_processes:
# Junk printed to stderr
# ip_:
# Nothing printed to stdout
...
어쩌면 문제는 Apache가 포트 11111에서 수신 대기하는 경우 추가 구성이 필요하다는 것입니까? 아파치, 무닌을 다시 시작했습니다. Ubuntu 12.04.5 LTS 및 apache2 2.2.22-1ubuntu1.7을 사용합니다.
업데이트 #1:
Apache는 포트 11111에서 수신하도록 구성됩니다.
root@SERVER:~$ head -1 /etc/apache2/sites-enabled/000-default
<VirtualHost *:11111>
root@SERVER:~$
업데이트 #2:
"/etc/munin/plugin-conf.d/munin-node" 파일에는 다음이 포함됩니다.
[apache_*]
env.ssl yes
env.ports 11111
업데이트 #3:
내가 사용하는 경우:
wget --no-check-certificate https://localhost:11111/server-status?auto -O -
서버에서는 사용자가 LDAP를 통해서만 인증할 수 있기 때문에 401이 표시됩니다. 어쩌면 그게 문제일 수도 있습니다. LDAP 인증 전에 127.0.0.1에서 서버 상태를 허용하는 방법은 무엇입니까?
업데이트 #4:
"/etc/munin/plugins/apache_accesses" 파일을 수정해 보았습니다..:
...
my $URL = exists $ENV{'url'} ? $ENV{'url'} : "https://usernamehere%40xx.foo.com:[email protected]:11111/server-status?auto";
#my $URL = exists $ENV{'url'} ? $ENV{'url'} : "http://127.0.0.1:%d/server-status?auto";
my @PORTS = exists $ENV{'ports'} ? split(' ', $ENV{'ports'}) : (11111);
...
그런 다음..
root@SERVER:/etc/munin/plugins# ./apache_accesses autoconf
Possible unintended interpolation of @127 in string at ./apache_accesses line 90.
no (Port 11111: Can't connect to usernamehere 11111.foo.com:password.0.0.1:11111)
root@SERVER:/etc/munin/plugins#
사용자 이름에 "@"이 포함되어 있지만 %40..으로 이스케이프 처리했습니다.
usernamehere%40xx.foo.com