Ich habe die apache_
Plugins auf einem Munin-Knoten aktiviert:
ln -sv /usr/share/munin/plugins/apache_* /etc/munin/plugins/
Nach dem Neustart des Knotens mit service munin-node restart
hier sind die Fehler, die ich bekomme:
$ munin-node-configure --suggest 2>/dev/null | grep "apache\|Plugin\|------"
Plugin | Used | Suggestions
------ | ---- | -----------
apache_accesses | yes | no [apache server-status not found. check if mod_status is enabled]
apache_processes | yes | no [apache server-status not found. check if mod_status is enabled]
apache_volume | yes | no [apache server-status not found. check if mod_status is enabled]
Ist mod_status
jedoch bereits aktiviert:
$ a2enmod status
Module status already enabled
Und ein Neustart von Apache macht keinen Unterschied.
Wenn ich versuche, die Plugins manuell auszuführen, bekomme ich Folgendes (ich habe gelesen, dass das Erhalten eines U eine schlechte Nachricht ist, also ist das zumindest konsistent).
$ munin-run apache_accesses --debug
# Processing plugin configuration from /etc/munin/plugin-conf.d/munin-node
# Set /rgid/ruid/egid/euid/ to /110/65534/110 110 /65534/
# Setting up environment
# About to run '/etc/munin/plugins/apache_accesses'
accesses80.value U
$ munin-run apache_processes --debug
# Processing plugin configuration from /etc/munin/plugin-conf.d/munin-node
# Set /rgid/ruid/egid/euid/ to /110/65534/110 110 /65534/
# Setting up environment
# About to run '/etc/munin/plugins/apache_processes'
busy80.value U
idle80.value U
free80.value U
$ munin-run apache_volume --debug
# Processing plugin configuration from /etc/munin/plugin-conf.d/munin-node
# Set /rgid/ruid/egid/euid/ to /110/65534/110 110 /65534/
# Setting up environment
# About to run '/etc/munin/plugins/apache_volume'
volume80.value U
Weiß jemand, warum ich die server-status not found
Nachricht immer noch bekomme und wie ich sie loswerden kann?
Aktualisierte Antwort 1
Der Vorschlag von Shane war richtig, einen Anforderungshandler mithilfe Location
und SetHandler
auf der Apache-Site festzulegen. Weitere Informationen zu finden mod_status
Sie auf dieser Seite
Ich konnte überprüfen, ob munin
die entsprechenden Anfragen tatsächlich gestellt wurden, indem ich mir ansah, /var/log/apache2/access.log
woher ich diese hatte:
127.0.0.1 - - [10/Nov/2011:07:24:15 +0000] "GET /server-status?auto HTTP/1.1" 404 7774 "-" "libwww-perl/5.834
In meinem Fall Location
reichte die Einstellung nicht aus, da ich eine Drupal
Site betreibe und die Anforderungen .htaccess
zusammen mit neu geschrieben mod_rewrite
wurden. Um das Problem zu beheben, musste ich die folgende Zeile zu meiner hinzufügen.htaccess
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteCond %{REQUEST_URI} !=/server-status # <= added this line
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Bitte beachten Sie, dass dies stellt kein Sicherheitsproblem , da der Zugang zu /server-status
auf das beschränkt ist 127.0.0.1
in der Apache - Website.
Aktualisierte Antwort 2
Es scheint, dass das Hinzufügen der Location
zur Apache-Site schließlich nicht erforderlich war, da dies bereits in definiert ist /etc/apache2/mods-enabled/status.conf
. Übrigens, wenn Sie die ExtendedStatus On
Direktive hinzufügen möchten, sollten Sie dies in dieser Datei tun.
mod_rewrite
arbeiten musste (siehe aktualisierte Frage mit Antwort)