Carpe Diem

  Top > スポンサー広告> サーバ監視・アクセス解析 > アクセスログ解析  

スポンサーサイト

-- - --/-- [--] - --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

アクセスログ解析

2011 - 06/10 [Fri] - 14:00

アクセスログ解析の出来る「AWstats」の設定です。

このソフトの良いところは日本語に対応していて、非常に見やすいユーザーインターフェースである点です。
他にもVisitorなどがありますが、見た目からこちらを選びました。

まずインストール。

$ sudo apt-get install awstats


Apacheのログフォーマットの確認。次の設定で使用します。

$ cat /etc/apache2/sites-available/default | grep CustomLog

combined
なら aswtats の 設定は
/etc/awstats/awstats.confをLogFormat=1
common なら aswtats の 設定は
/etc/awstats/awstats.confをLogFormat=4
今回はcombinedとして進めていきます。

では設定

$ sudo emacs -nw /etc/awstats/awstats.conf

LogFile="/var/log/apache2/access.log"
ここは変更しなくてもいいですが、僕の場合SSL側しか使ってないので
LogFile="/var/log/apache2/ssl_access.log"
に変更。

Apache のログフォーマットがcombinedのだったので
LogFormat=4 をLogFormat=1にする
LogFormat=1

awstatsが稼働しているマシンのドメイン(ダイナミックDNS)を入力
SiteDomain="myServer"

アイコンフォルダの指定
DirIcons="./icon"

#Lang="auto"を"jp"に変更
Lang="jp"


awstats.confの設定はここで終わり。
アイコンフォルダの作成

$ sudo mkdir /var/www/awstats
$ sudo ln -s /usr/share/awstats/icon /var/www/awstats/icon



アクセスログ解析のWebページ作成
僕の場合SSLなのでdefault-sslを使用。普通はdefaultでいいです。
$ sudo emacs -nw /etc/apache2/sites-available/default-ssl

# こっちはすでにあるかも
<Directory "/usr/lib/cgi-bin">
  AllowOverride None
  Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
  Order allow,deny
  Allow from all
</Directory>


# 適当に下の方に追記。僕はWebDAVの設定の下に追記
<Location /awstats>
  Order deny,allow
  Deny from all
  Allow from 127.0.0.1  # アクセス許可IP(ログ閲覧者。つまり自分。外からも見たければallとか)
</Location>


</VirtualHost> ←これより上で


Apacheの再起動
$ sudo /etc/init.d/apache2 restart

* Restarting web server apache2
... waiting ...done.


レポート出力

$ sudo /usr/lib/cgi-bin/awstats.pl -config=myServer -update
Create/Update database for config "/etc/awstats/awstats.conf" by AWStats version 6.95 (build 1.943)
From data in log file "/var/log/apache2/access.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Phase 2 : Now process new records (Flush history on disk after 20000 hosts)...
Reverse DNS lookup for ::1 not available without ipv6 plugin enabled.
Jumped lines in file: 0
Parsed lines in file: 105
Found 0 dropped records,
Found 0 corrupted records,
Found 0 old records,
Found 105 new qualified records.

-configの指定がおかしいとデフォルトの設定ファイル(awstats.conf)を読みに行きます。
この状態でとりあえずブラウザにて

http://myServer/cgi-bin/awstats.pl?config=myServer

で表示されたらとりあえずOK。


◆出力したレポートをHTMLにする

sudo suモードで

$ /usr/lib/cgi-bin/awstats.pl -config=myServer -output -staticlink > /var/www/awstats/index.html

これで一応アクセスログを確認できるので
https://(サーバーのホスト名またはIPアドレス/)/awstats/」にアクセス。
表示されたらOK。


◆出力したレポートをcgiフォルダを開かずに見えるようにする
上のやり方でうまく更新されない場合です。
$ sudo mkdir /var/www/awstats
$ sudo ln -s /usr/lib/cgi-bin/awstats.pl /var/www/awstats/awstats.pl


Apache2の設定ファイルがあるディレクトリに移動
$ cd /etc/apache2/sites-available

設定ファイルを編集
$ sudo emacs -nw default-ssl

さっき編集した部分に
<Location /awstats>
  Options Indexes FollowSymLinks MultiViews +ExecCGI
  AddHandler cgi-script .cgi .pl

  Order deny,allow
  Deny from all
  Allow from 127.0.0.1
</Location>


を付け加えます。これでブラウザ上で

https://(サーバーのホスト名またはIPアドレス/)/awstats/awstats.pl

で表示されればOK。


◆アクセスログ更新頻度の変更

$ sudo emacs -nw /etc/cron.d/awstats
元の設定をコメントアウトして

# 0,10 * * * * www-data [ -x /usr/lib/cgi-bin/awstats.pl -a -f /etc/awstats/awstats.conf -a -r /var/log/apache/access.log ] && /usr/lib/cgi-bin/awstats.pl -config=awstats -update >/dev/null

0,10,20,30,40,50 * * * * root /usr/lib/cgi-bin/awstats.pl -config=myServer -update >/dev/null

これで10分ごとにアップデートコマンドを行うようになります。注意として最後に改行を入れないと保存が出来ません。
最後の>/dev/nullは、エラーなどをnullディバイスに捨ててやるようです。Ubuntuの場合これがないとうまく実行されない場合があるみたいです。

一応実行権限与えて再起動します。
$ sudo chmod 755 /etc/cron.d/awstats
$ sudo /etc/init.d/cron restart

ちゃんと実行されているかの確認はsyslogをみれば分かります。動かない場合はエラーメッセージをコピペして検索すると解決しやすいです。

$ tail /var/log/syslog


僕の場合なぜかこれではcron.dが動かず、更新されなかった。けど一度直接

$ ./awstats


をしたらなぜか動くようになった。上のコマンド自体は無反応だった。2回目からは構文のエラーメッセージ出たけど。
よくわからないなぁ。

cronについて詳しくは「cronで自動更新」を参考にしてください。


追記
ちなみにログ解析画面を見たときに、グラフとかがカラーに表示されていない場合はiconの指定が間違っています。
これそのままにしておくと、/var/log/apache2/のerror.logがめちゃくちゃ肥大化するので、エラー内容を見て修正してください。


ソース:
Ubuntuにawstatsをインストールする
Ubuntu Server as 家サーバ:AWStats


コメントの投稿





管理者にだけ表示を許可する

 | ホーム | 

プロフィール

Cicatrice

Author:Cicatrice
備忘録

検索フォーム

カテゴリ

最新記事

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。