5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Apacheログ解析ツールAwstatsの導入

Last updated at Posted at 2017-02-07

#環境
Ubuntu16.04LTS
Apache2.4.18

#インストール

sudo apt-get install awstats

何がインストールされたかは以下のコマンドで確認(適宜grep conf)

dpkg -L awstats

#デフォルトの解析を止める
インストールするとAWStatsは10分毎にcronで解析をする。これを止める。
/etc/cron.d/awstatsを削除する。

cd /etc/cron.d
sudo rm awstats

#cgidを有効にする
Apacheのモジュールcgidが有効になっていなければならない。(有効になってないとソースがそのまま表示される)
以下のコマンドをたたくと、/etc/apache2/mods-enabledにシンボリックリンクが貼られる。

sudo a2enmod cgid

※その他のコマンド
a2dismod モジュール名 : モジュール設定を無効する
a2ensite サイト設定名 : サイト設定を有効にします。
a2dissite サイト設定名 : サイト設定を無効にします。
↓参照
UbuntuでApacheを設定する際のハマリどころ

#mime.confに以下を追記
「AddHandler cgi-script .cgi」の記述はデフォであるので.plを追記するのみ
(これは必須ではないかも、virtual-hostの設定ファイルも同様)

mime.conf
AddHandler cgi-script .cgi .pl

#設定ファイルをいじる
virtualhostごとのログファイルを解析するため、設定ファイルをそれぞれ設定する。
/etc/awstats/に設定ファイルができるので、コピーする。
hogehogeドメインのvirtualhostを解析する場合。

sudo cp awstats.conf.local awstats.hogehoge.conf

コピーした設定ファイル awstats.hogehoge.confをIncludeするように親設定ファイルawstats.confを編集

sudo pico awstats.conf

#####Includeする

awstats.conf
Include "/etc/awstats/awstats.hogehoge.conf"

ここを参照してパラメータを設定する
awstats のインストール

awstats.hogehoge.conf
# You can overrides config directives here.
# This is particularly useful for users with several configs for
# different virtual servers, who want to reuse common parameters.
# Also, this file is not updated with each new upstream release.

##解析するログファイル
LogFile="cat /var/log/apache2/hogehoge_access.log*|"

##ログのタイプ 「W」はWebログのこと。
LogType=W

##ログのフォーマットを指定。combined なので「1」を指定。
LogFormat=1

##ドメイン名の指定
SiteDomain="hogehoge.hoge.com"

##ホストのエイリアス名を指定する
##HostAliases=""

##ルックアップを行うかどうか。無駄に負荷はかけたくない場合は「0」
##ルックアップを無効にすると国別アクセス解析ができなくなる
DNSLookup=1

##解析結果を保存する場所
DirData="/home/hoge/awstats/hoge"

##cgi-binディレクトリのある場所。ドキュメントルートからの相対or絶対パス
##DirCgi="/cgi-bin/awstats"

##解析結果ページに表示されるアイコン画像のPATH。
##ドキュメントルートからの相対or絶対パス
##DirIcons="/awstats-icon"

##解析対象のインデクスファイル。index.html からindex.php へ変更。
##DefaultFile="index.php"

##言語の指定。デフォルトでは、auto に指定されています。
Lang="jp"

##表示を左右2画面のフレームにする。
UseFramesWhenCGI=1

##詳細表示をクリックしたときに別ウィンドウにするかどうか。
##別ウィンドウが開くと面倒なのでオフにした。
DetailedReportsOnNewWindows=0

##ブラウザから解析の更新を可能にする
##通常、cronで定刻時刻に解析データをアップデートするようにするところを、
##ブラウザから解析データを更新できるようにする。
##AllowToUpdateStatsFromBrowser=1

##年間の集計を許可する
AllowFullYearView=3

## ローカルからのアクセスをカウントしない
##SkipHosts="127.0.0.1 REGEX[^128\.20\.1\.]"
SkipHosts="127.0.0.1"

## 日曜日を週の頭にもってくる
FirstDayOfWeek=0

#awstats.plのシンボリックリンクを作成
インストールすると/usr/lib/cgi-bin/awstats.plができるので
これにシンボリックリンクを貼る

sudo mkdir /var/www/awstats
cd /var/www/awstats
sudo ln -s /usr/lib/cgi-bin/awstats.pl awstats.pl

#sitesのconfファイルの設定
任意のsites confファイルに以下を追記する。

/etc/apache2/sites-available/*.conf
	ScriptAlias /awstats/ "/var/www/awstats/"
	Alias /awstatsclasses "/usr/share/awstats/lib/"
	Alias /awstats-icon "/usr/share/awstats/icon/"
	Alias /awstatscss "/usr/share/doc/awstats/examples/css"
	#CGIディレクトリコンテナ
	<Directory "/var/www/cgi-bin">
		AllowOverride None
		Options ExecCGI FollowSymLinks
		Order allow,deny
		Allow from all
	</Directory>

自ホストの解析に組み込む場合、awstatsへのアクセスをログに記録しない。

/etc/apache2/sites-available/*.conf
	#awstatsを含むアクセスログは記録しない環境変数
	SetEnvIf Request_URI "awstats\.pl" no_log
	#上記で設定した環境変数を有効にする
	CustomLog ${APACHE_LOG_DIR}/hogehoge_access.log combined env=!no_log

ここまでいったら、一旦cgiスクリプトを手動で起動させ、表示させてみる。

perl /usr/lib/cgi-bin/awstats.pl -config=hogehoge.domainname -update

設定ファイルに記述したDirDataに解析データが保存されているか確かめる。
この設定例では
DirData="/home/hoge/awstats/hoge"

Apacheを再起動して解析データが表示されるか確認する。

#cronに定期的(1分毎)に解析を行うように設定する。

crontab -e

以下を追加「-config=」には/etc/awstats/にある設定ファイル名ではなく、
awstats設定ファイル内の「SiteDomain」に定義されたドメイン名を設定する。

*/01 * * * * /usr/bin/perl /usr/lib/cgi-bin/awstats.pl -config=hogehoge.domainname -update > /dev/null 2>&1

これで1分ごとに解析が行われているはず。

#参考
http://landisk.kororo.jp/debian/13_awstats.php
https://help.ubuntu.com/community/AWStats
http://www.nu-chon.org/w/index.php?AWStats%A5%E1%A5%E2
http://krakenbeal.blogspot.jp/2011/03/ubuntuawstats.html
http://centossrv.com/awstats.shtml
http://hobbit.ddo.jp/awstatsdocs/awstats_tools.html
http://sourceforge.net/projects/awstats/?source=typ_redirect

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?