Muninにapacheのグラフが表示されてない

下記で導入したつもりだったのですが、気づいたらグラフが表示されていません。 Fedora18のMunin2にApache_httpdの監視を追加

ログ確認

404エラーになってます。

/var/log/httpd/access_log

localhost - - [06/May/2013:20:30:02 +0900] "GET /server-status?auto HTTP/1.1" 404 11304 "-" "munin/2.0.12 (libwww-perl/6.05)"
localhost - - [06/May/2013:20:30:06 +0900] "GET /server-status?auto HTTP/1.1" 404 11304 "-" "munin/2.0.12 (libwww-perl/6.05)"
localhost - - [06/May/2013:20:30:07 +0900] "GET /server-status?auto HTTP/1.1" 404 11304 "-" "munin/2.0.12 (libwww-perl/6.05)"

munin確認

munin-runコマンドで試す。「U」はエラーのようです。正常だと数値が表示されます。

$ munin-run apache_volume
volume80.value U

httpdのコンフィグ確認

問題ないと思う。

# cat /etc/httpd/conf.d/status.conf
<IfModule mod_status.c>
    ExtendedStatus On
    <Location /server-status>
        SetHandler server-status
        Require host localhost
    </Location>
</IfModule>

ローカルからのアクセス確認1

問題なさそう。

# curl http://localhost/server-status?auto
Total Accesses: 80
Total kBytes: 1069
CPULoad: .481871
Uptime: 855
(snip)

ローカルからのアクセス確認2

ホスト名をアドレス指定にするとNG。 そうだ、名前ベースのバーチャルホスト設定してました。 muninのapacheプラグインは「127.0.0.1」をホスト名としてアクセスするんですね。

# curl http://127.0.0.1/server-status?auto
<!DOCTYPE html>
<html lang="ja" dir="ltr" class="client-nojs">
<head>
<title>Server-status - Dondari memo</title>
(snip)

対策

httpdが読み込むコンフィグファイルに下記記述し、httpd再起動。

<VirtualHost *:80>
    ServerName 127.0.0.1
</VirtualHost>

確認

アクセスできるようになりました。

$ munin-run apache_accesses
accesses80.value 10

アクセスログも 200 になってます。

/var/log/httpd/access_log

localhost - - [08/May/2013:20:23:43 +0900] "GET /server-status?auto HTTP/1.1" 200 427 "-" "munin/2.0.12 (libwww-perl/6.05)"

facebook slideshare rubygems github qiita