Saya telah mengaktifkan apache_plugin pada simpul munin:
ln -sv /usr/share/munin/plugins/apache_* /etc/munin/plugins/
Setelah me-restart node dengan di service munin-node restartsini adalah kesalahan yang saya dapatkan:
$ 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]
Namun mod_statussudah diaktifkan:
$ a2enmod status
Module status already enabled
Dan memulai ulang apache tidak ada bedanya.
Jika saya mencoba menjalankan plugin secara manual di sini adalah apa yang saya dapatkan (saya membaca bahwa mendapatkan U adalah berita buruk jadi setidaknya itu konsisten).
$ 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
Adakah yang tahu mengapa saya masih menerima server-status not foundpesan itu dan bagaimana saya bisa menghilangkannya?
Jawaban yang diperbarui 1
Saran Shane benar tentang pengaturan penangan permintaan menggunakan Locationdan SetHandlerdi situs apache. Untuk informasi lebih lanjut, mod_statussilakan merujuk ke halaman ini
Saya dapat memverifikasi yang muninsecara efektif membuat permintaan yang sesuai dengan melihat di /var/log/apache2/access.logmana saya mendapatkan ini:
127.0.0.1 - - [10/Nov/2011:07:24:15 +0000] "GET /server-status?auto HTTP/1.1" 404 7774 "-" "libwww-perl/5.834
Dalam pengaturan kasus saya, Locationitu tidak cukup karena saya menjalankan Drupalsitus dan .htaccessdikombinasikan dengan mod_rewritemenulis ulang permintaan. Untuk memperbaikinya, saya harus menambahkan baris berikut ke blog saya.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]
Harap dicatat bahwa ini tidak mewakili masalah keamanan karena akses ke /server-statusdibatasi 127.0.0.1pada situs apache.
Jawaban yang diperbarui 2
Tampaknya menambahkan Locationke situs apache sama sekali tidak diperlukan karena ini sudah didefinisikan dalam /etc/apache2/mods-enabled/status.conf. Btw, jika Anda ingin menambahkan ExtendedStatus Onarahan, itu dalam file yang harus Anda lakukan.
mod_rewritepekerjaan (lihat pertanyaan yang diperbarui dengan jawaban)