efStat取扱説明書


アクセス解析パッケージ - efStat

■もくじ

この説明書ではログビューア、efStat について説明します。
efStat パッケージの中枢部分です。

■プログラム側の設定

fstat.cgi をテキストエディタで開いて下さい。
設定は大きく分けて

という4つのブロックに分かれています。
このうち、「表示オプション」と「表の足切り設定」に関しては『ログ単体表示モード』でのみ有効です。

絶対に必要な設定

<perlのパス>

fstat.cgi の一行目のPerlへのパスををお使いのプロバイダに合わせて書き換えます。
もし、perlのパスが /usr/bin/perl だったら、

#!/usr/bin/perl

と書き換えて下さい。 頭の#!は消してはいけません。

<ログファイルが置かれているディレクトリ>

ログファイルを格納したディレクトリの名前を入力します。 (デフォルトは log )
ただし、ログ用ディレクトリは efStat をインストールしたディレクトリの中(配下)になければなりません。

配布したままの状態で運用するならばデフォルトの log のままでOKですが、もし、他の名前のディレクトリに置いた場合はその名前に変更して下さい。

<あなたのサイトのURL>

なくても構いませんが、「サイト内移動分析」機能を有効にするためには必要です。
(「サイト内移動分析」で、お客さんがどのページからどのページに移動したのかが分かるようになります)

ココを空欄にしていると正常動作しません(バグ)。
興味のない人も、適当に何かを埋めておいて下さい。

<パスワードで閲覧制限するか・しないか>
<その場合のパスワード>

「する(1)」にすると、パスワードの入力無しには解析ができないようになります。 (解除の仕方は後述)
また、そのパスワードもココで設定します。
いくら長くても構わないとは思いますが(試していない)、長くても精々10文字程度の英数字を指定して下さい。

この「パスワード」は、あくまで気休め程度の物です。 暗号化などの保護は全くされません。
詳しい人間にかかれば見破るのは簡単でしょう。
絶対に他のプログラム・サービス(プロバイダ認証等)のパスワードと同じ物を使ってはいけません。

<まとめたいURL>

ここで指定した特定のURLは、参照元統計において指定した文字列に変換されます。
この「URLまとめ機能」は、efStatに登録されていないサーチエンジンや、リンク集系CGIからのリンクが多いページに向いています。
似たようなURLが表の殆どを占めて困っている方は是非試してみて下さい。
(仲良しのページを登録するだけでも楽しそうですよね)

[ '変換させたいURL文字列', '変換後の文字列' ],

という書式で追加・修正して下さい。

変換させたいURL文字列 を含むURLが統計に含まれているとき、 変換後の文字列 に変換されます。
例えば、

[ 'http://www.skipup.com/~fuka/', '有限工房' ],

と指定したとします。 このとき、

http://www.skipup.com/~fuka/
http://www.skipup.com/~fuka/cgi-bin/search.cgi?key=test
http://www.skipup.com/~fuka/link.html

などのURLは全て 有限工房 としてまとめ上げられます。 太字・イタリック の部分が一致しているのがお分かりでしょうか?

しかし、その弊害として

http://www.goo.ne.jp/cgi-bin/redirect?URL=http://www.skipup.com/~fuka/&OPT=IE5

のような、全く関係ないURLも 有限工房 の一つとして数えられてしまいます。 (ま、こういう事は滅多にありませんが)

これを逆手に取ると

[ 'tbookmark.cgi', 'TBookmarkから' ], # TBookmarkからのアクセスを全てまとめる
[ '.2ch.net.', '2chから' ], # *.2ch.netからのアクセスを全てまとめる

のような事ができます。
その他のコツとしては、

…ってな所でしょうか。 トライ&エラーで色々と試してみて下さい。

表示オプション

(※ここでの指定は「ログ単体表示モード」でのみ有効です)

<参照元へのリンクを有効にするか・しないか>

リンクを無効にすると生ログや参照元解析の部分でアドレスがハイパーリンクではなく、ただの文字になります。
参照元を確認したい時はそのアドレスをコピーし、ブラウザのウインドウを新たに開き、URL 入力欄に先ほどコピーしたアドレスを張り付けて下さい。
これで、efStat の存在を知られることなく参照元のページを覗けます。

まあ、リンクを有効にしていても、その飛びたいURLの上で右クリックし、「リンクの場所をコピー」( Netscape Navigator の場合)すれば同じ事なのですが。

また、副作用として出力されるHTMLファイルの容量がかなり削減されます。
少しでも表示を軽くしたい方は「しない」を試してみましょう。

<表示をテイストレスにするか・しないか>

「どうにもこうにも表示が重い! 責任者出てこい!」という場合は、このオプションをオンにすることで表示が高速化します(厳密には出力されるHTMLのサイズが縮まる)。
ただし、表に色が付かなくなります(真っ白な表示になります)。

ログが大きければ大きいほど効果が大きくなります。

<グラフを表示させるか・させないか>

グラフを表示させないとかなり表示が早くなるはずです。(HTMLのサイズがかなり縮みます)
グラフが無意味に思えたら、思い切って表示を切ってみましょう。

表の足切り設定(表示リミッタ)

(※ここでの指定は「ログ単体表示モード」でのみ有効です)

「生ログ表示」「参照元解析」「ホスト名解析」「ブラウザ解析」で、ここで指定した数以下の項目は表示されません。
数値を大きくすれば大きくするほど表示が高速になりますが、必要な情報量が減るという欠点もあります。
当然、ログが大きければ大きいほど効果が大きくなります。
ご自分のサイトの規模に合わせて調整して下さい。

その他指定

残りの部分はログ表示画面の表示色に関する設定です。
見たままですので、カスタマイズしたい人はとりあえず変更してみて、体で覚えて下さい(^^;
テーブル色は bgcolor から始めている事からも分かるように、当然 background も使えます。
贅沢な環境の人は、セルの背景を画像にして気分をゴージャスにしてみよう!(笑)

<?>

おまけ。 どこかにCPUのベンチマークを取れるようになるオプションがあります。
これは自分の開発のためにあるモノですが、自分のマシンに飽きたらず、プロバイダのマシンの処理速度まで計ってしまいたいスピード狂の方はどうぞ(笑)

ちなみにウチ (Pentium-133 / 48MB / FreeBSD 2.2.7R / jperl5 / ユーザ1人) だと、

です。 あなたのプロバイダのサーバの強さはどうでしょう?(笑)

オンにすると結果表示の一番下、コピーライトの直ぐ上に計算に掛かった時間が表示されます。

■ログファイルの準備

efCount取扱説明書にログファイルの作り方が書いてありますので、そちらを参考にして下さい。
次節からは既にログファイルがあり、記録されているものとして話を進めてゆきます。

■ログビューアの使い方

使用法

まず、efStatを呼び出すために必要な引数に関する情報を示します。
それぞれの意味は次の節でゆっくりと説明しますので、ちょっと我慢して頭に置いてみて下さい。

【書式】
fstat.cgi?logfile&m=0&d=t&PASS=abc

logfile ログファイルの名前
m 動作モードの指定 (Execute Mode)
指定無し(省略)で一括表示。 m=0で生ログのみ表示。 m=1でログの解析結果のみ表示。
d 解析する範囲の指定 (Day)
指定無し(省略)で全て表示。 d=tで本日分のみ表示。 d=yで昨日分のみ表示。
PASS パスワードの指定 (PASSword) (※大文字であることに注意して下さい)
パスワードを設定している場合、必ずこのオプションを付けなければなりません。

まずは呼び出してみよう

ブラウザのURL入力欄に

http://???/~username/cgi-bin/fstat/fstat.cgi

と入力してみて下さい。
(ページのあるサーバが ??? で、あなたのユーザ名が usernamecgi-bin というディレクトリの中に fstat を置いている場合)

メニュー画面は表示されましたか?(多少時間がかかる場合があります)
表示されたらそのまま調子に乗って次節へ進みましょう。

表示されなかったら…原因を追及していきましょう。 (クリックすると「トラブルシューティング」の項目に飛びます)

一括表示モード

上の例のように、何もオプションを付けずに起動するとメニュー画面が表示されます。
このメニュー画面を使ってログを表示させる場合、全てのログに対して集計を行います。

メニュー画面から全てのオプションを指定できるようになっています。 貴方のお好みに調整して下さい。
オプション項目の詳細に関しては、【プログラム側の設定】を参照して下さい。
なお、これらの指定はクッキーに保存されますので、何度も指定し直す手間はありません。

パスワードを入力し(設定で「パスワード制限」を有効にした場合)、表示させる項目をラジオボタン()等で指定したら、 ボタンを押して下さい。
なお、パスワードは一度入力すれば当分の間覚えてくれると思いますので、何度も打ち直す必要はありません。

集計には時間がかかります。 なかなか画面が切り替わらなくても、ボタンを連打しないで下さい。
プログラムが多重に起動し、サーバに負担をかけるばかりか、結果表示も逆に遅れます。

ログ単体表示モード

このモードではログを一つだけ選んで集計します。
普段はトップページの状況だけ分かれば十分ですからね。

ブラウザのURL入力欄に

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile

と入力してみて下さい。 ハテナマークと logfile というのがくっつきましたね。

logfile は貴方が【ログファイルの準備】で作ったログファイル名を指定して下さい。
上の例では ??? というプロバイダにてあなたが username というアカウント名を取得し、 cgi-bin というディレクトリの中に efStat をインストールしているということになります。

ちなみに、上記指定では拡張子はありませんが、efStat のログファイルには「 .log 」という拡張子が必須です。
ログファイルを作成する際には注意して下さいね。

さて、集計結果は表示されましたでしょうか?
表示されなかったら…原因を追及していきましょう。 (→「トラブルシューティング」)

☆表示モードの指定☆

さて、このままでも十分使えるのですが、ログが大きくなってくると画面表示が重くなってきて辛くなってくることもあると思います。
そういうときは、

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile&m=0
(最後に &(アンド/アンパサンド)m=0(ゼロ) がくっついた)

と指定すると、生ログしか表示しません(生ログ表示モード)。

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile&m=1
(最後に &m=1 がくっついた)

と指定すると、解析・分析結果しか表示しません(解析結果表示モード)。

☆解析範囲の指定☆

「今日の分の解析結果だけを表示させたい」、「昨日の分の解析結果だけを表示させたい」という場合がありますよね。
そういうときは、

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile&d=t

と指定すると、本日分しか表示しません。

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile&d=y

と指定すると、昨日分しか表示しません。
なお、解析範囲を指定した場合、カウント数集計の中では時間帯別集計のみ結果が反映されます。

☆パスワードを設定している場合☆

パスワードを設定している場合には、さらにオプションの追加が必要になります。

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile&PASS=abc

abcの部分はあなたが設定した任意のパスワードです。 無論、

http://???/~username/cgi-bin/fstat/fstat.cgi?logfile&m=1&d=t&PASS=abc

こういう合わせ技もできます。

ログ単体モードはGETメソッドを利用しています。
パスワードを入力した状態で解析結果を表示させ、その中のリンクから他のページへ飛ぶと、相手側ページで参照元を記録している場合、パスワードが分かってしまいます。
パスワードを指定している方は十分に注意して下さい。
なお、POSTメソッドを利用した「ログ一括表示モード」ではこの問題はありません。

ここまで上手く行った人は、自分が一番使う状態をブックマークとして登録しておくと良いでしょう。

■ログビューアの見方

小メニュー

各項目へジャンプできます。
小メニューへ戻るには各項目のタイトルをクリックして下さい。

ログについての情報

対象ログファイル 現在表示しているログファイルの名前です。
調査期間 解析した範囲を表しています。
指定された範囲の中で、一番古いログから一番新しいログまで。
総ヒット数 そのままですね。
アクセス数目安 規定のアクセス数(最大ログ保存数)に達するまでに何日かかるのかを大まかに予測します。

生ログ

ログに実際に記録されている内容を、人間が見やすいように整形して表示させます。
ここで実際の人の動きを調べます。 (踏んだカウント、訪問時刻、利用ホストなどから推測)

時間帯別集計

ある時間帯に、のべ何人お客さんが来たか。
「サイト計」で、サイト全体の時間別集計となります。

曜日別集計

ある曜日に、のべ何人お客さんが来たか。
「あ、水、木は中だるみで疲れてネットやらないんだな〜」とか分析できます(笑)
「サイト計」で、サイト全体の曜日別集計となります。

日別集計

一日に何人お客さんが来たか。 過去一週間+1日までを記録します。
「0日前」は本日を表します。
「7日前」は先週の同じ曜日を表します。 参考データといったところでしょうか。
「ページ計」の欄で一週間+1日の訪問者数、「サイト計」で一日にサイト全体で何人の人が来たかという事が分かります。

週別集計

週何人お客さんが来たか。 過去5週前まで記録します。
「0週前」は今週を表します。
「5週前」は一ヶ月前の同じ週(分かりにくいな)を表します。 増減の参考にして下さい。
プログラムの都合上、日曜,月曜,〜,土曜の一週間を「一週」とするのではなく、1月1日から数えた「通算週」で計算しています。 そこをお忘れなきよう。 (よって、日別集計の行の合計とは変わってきます)

月別集計

一月に何人お客さんが来たか。 1〜12月、一年間かけて記録します(笑)
「サイト計」で、サイト全体の月別集計となります。

一般に、客の立場から見て面白いサイトというのはこの数値が右肩上がりになって行く傾向があります。
多分、あなたのページを見た人が他の人に勧めたりするんでしょうね。
逆に、ずっと横這いのサイトは固定層には支持されていますが、新規客が見に来てもその殆どがイチゲンさんで、サイトの内容がパンチに欠けるのかも知れません(内輪向けサイトでないとするならば)。

年度集計

一年にに何人お客さんが来たか。 過去五年間まで保存しています。
「サイト計」で、サイト全体の月別集計となります。

総合ランキング

ページの総ヒット数の順位です。
ページの実質的な人気の順位になります。
「サンプル総数」から、サイト全体で、のべ何人お客さんが来たかの目安が分かります。

月間ランキング

ページの月間での順位です。
「サンプル総数」から、サイト全体で今月、何人お客さんが来たかの目安が分かります。

週間ランキング

ページの週間での順位です。
「サンプル総数」から、サイト全体で今週、何人お客さんが来たかの目安が分かります。

本日ランキング

ページの当日での順位です。
「サンプル総数」から、サイト全体で今日、何人お客さんが来たかの目安が分かります。

参照元統計

上記生ログから参照元部分のみを抜き出し、回数を数えて順位にしたものです。
どのページのリンクが一番の上得意様か分かります。
ただし、efStat に登録されているサーチエンジンや自サイト内からの移動は除外されます。

まとめたいURLを指定している場合、条件に一致したURLは
[User] 変換後の文字列
という形で表されます。

サイト内移動分析

自分のサイト内のどのページからどのページへ移動したのか、という統計を取っています。
例えば、お客さんが illust.html というページのハイパーリンクから melody.html に飛んだ場合、
「illust.html >> melody」
という風に表記されます。

ただし、ここで言う melody.html などの被リンク先では fcount.cgi でログを取っている必要があります。
(お客さんが illust.html から mellody.html に飛んだという情報は、 melody.html を調べないと分からないため)
また、melodyの方はあくまでログファイルの名称ですので、melodyと書かれていても実際のHTMLファイルは nekomimi.html の事かも知れません:-)

index.html などが最後に付くURLの場合はそれが省略され、単に「/」と表示されます。
例えば、「http://www.hoge.com/~fuka/」や「http://www.hoge.com/~fuka/index.html」は「/」と、
http://www.hoge.com/~fuka/link/」や「http://www.hoge.com/~fuka/link/index.html」は「link/」と表記されます。

『「自サイト内→自サイト内」のカウント』の、『全体』に対する割合が高ければ高いほど、お客さんがサイト内を積極的にうろうろしてくれている、色々と見て回ってくれている、という指標になります。
ただ、あまり割合が高いのも考え物かも(^_^;

サーチエンジンシェア

お客さんがどのサーチエンジンを使って来たのかの統計です。
「サーチエンジンから」の割合が多ければ多いほど、客の新陳代謝が激しい、つまり飛び込みの客が多いという指標になります。

サーチエンジン分析

お客さんがサーチエンジンを使ったときに入力したキーワードの統計です。
皆さん、かなり露骨なキーワードで攻めてくることが見て取れます(笑)

「サンプル総数」が「サーチエンジンから」に満たない場合が多々あります。
これは、登録されたサーチエンジンから来たことは認識できたのですが、キーワードが取得できなかったり、客がキーワードを知られたくないため(?)にサーチエンジンのリダイレクタを使ったりした場合にこういった状況になります。
(特にInfoWeb Searchなどは殆どがゴミデータだったりエンコードできないデータだったりするので結構切り捨ててます)

TINAMIカテゴリ分析

TINAMI から飛んできたお客さんの検索キーワード・選択カテゴリを数え、順位にしたものです。
[C] ○○○」という項目はお客さんによって選ばれたカテゴリです。
あなたが TINAMI に登録したときのカテゴリが載っていると思います。
Charlotte による検索の場合、「[Charlotte] ○○○」と表示されます。
その他は、お客さんが自由に入力したキーワードです。
売れ線ジャンルを掴むときにお役立て下さい。
TINAMI に登録していないサイトやTINAMI から誰も飛んできていない場合は表示されません。

Surfers Paradice分析

Surfers Paradice (SP) から飛んできたお客さんが、どのジャンル、キーワードを入力していたのかを数え、順位にしたものです。
売れ線ジャンルを掴むときにお役立て下さい。
SP に登録していないサイトやSP から誰も飛んできていない場合は表示されません。

ホスト統計

上記生ログからホスト名部分のみを抜き出し、回数を数えて順位にしたものです。
どのプロバイダの人が何回来ているか、ひいては常連さんが何回くらい来ているかの目安になります。

国籍分析

お客さんの国籍の統計を取っています。
ホスト名が取得できなかったものについては「ドメイン判別できず」という表記になります。

『[警告] IP記録無し』という表記があったら要注意です。
何らかの方法でIPを隠蔽したり、TELNETなどでカウンタを直接動かしたりするとこうなります。
ま、クラックしたあと、置いてあるスクリプトをわざわざ実行してみる人は居ないような気がしますが…。

国内ドメイン分析

現在、

が登録されています。
各県に所属するネットワークに関してはローマ字表記で県名が書かれていると思います。

ブラウザ統計

上記生ログからブラウザ(エージェント- Agent)名部分のみを抜き出し、回数を数えて順位にしたものです。
以前のブラウザ統計よりも、より、分かり易い物になったのではと自負しています。

有名なエージェントに関してはある程度注釈が付いています。
「[R] ○○」という注釈が付いているエージェントはロボットです。 主にサーチエンジンのロボットだと思われます。

エージェントについてもっと詳しく知りたい! という人は
Some Gripes on User-Agent / Kabe氏 (無断リンク失礼します)
を参照するとイイでしょう。 もう一つ、京大にヨサゲなページがあったんですが無くなってました…。

IE同士のシェア

Internet Explorer同士のバージョンの統計です。
スタイルシートやJavascript、ブラウザ依存タグを使うときの参考にして下さい。

NN同士のシェア

Netscape Navigator同士のバージョンの統計です。
スタイルシートやJavascript、ブラウザ依存タグを使うときの参考にして下さい。

利用OS統計

ブラウザ名から判断できる分だけでお客さんの使用しているOSの統計を取ります。
JAVAScriptをかまして取得しているわけではないので、どうしても不正確ですが、まあ、困らない程度の誤差でしょう。

画面情報統計

画面横幅・縦幅・色深度(最大同時発色数)を全てひっくるめた上での統計です。
お客さんがどういう画面環境でページを見ているのかが分かります。

サイズ別統計

画面横幅・縦幅のみを取りだした統計です。
純粋に、どれくらいのサイズでページを作ればいいのかという参考に使って下さい。

色深度別統計

色深度のみを取りだした統計です。
画像などを取り扱う場合、どれくらいの色数の画像を使って良いのかを調べるときに使って下さい。

Tips

パソコンのカタログなどを見てご存じの方は多いと思いますが、最大同時発色数は 2 の n 乗で表現されます。
「8ビットカラー表示」という表現は2の8乗、つまり「256色を一度に表現できる」という意味を持ちます。

まっ、CGをやっている人には釈迦に説法かな(^x^;

色数早見表
8bit 256色
16bit 65536色
24bit 約1677万色
32bit 約42億色

■トラブルシューティング

≪「指定されたログディレクトリ (ディレクトリ名) は存在しません。」と表示された≫

プログラム側の設定の絶対に必要な設定で指定したログディレクトリの場所が違っています。

≪「ログディレクトリが読み出し禁止属性になっています。」と表示された≫

指定されたディレクトリは読み出しが禁止されているため、ディレクトリを開くことが出来ませんでした。
chmod で読み込みビットを立ててやって下さい。
あと、多分、このエラーは出ません(⌒ω⌒; 普通は読み込み不可でも b. が出るんじゃないかな…?

≪「アクセスログ (ログファイル名) を開くことが出来ませんでした。」と表示された≫

プログラムは正常に動作していますが、ログファイル側に何か問題があるようです。

  1. そのログファイルは本当に存在しているか?
  2. 名前を打ち込み間違えていないか?
  3. ログファイルがちゃんと記録されているか?
  4. ログファイルのパーミッションは正しく設定されているか?
  5. ログファイルをアスキーモードで転送するのを忘れている?

≪「jcode.pl を読み込むことができませんでした。」と表示された≫

jcode.pl の場所の指定が違っています。 変更不可の場所にある設定を弄りませんでしたか?
そんな事はしていないゾ、という場合、lib ディレクトリの中に jcode.pl が本当に無いかもしれません。

≪いくら待ってもウンともスンとも言わない≫
≪「500 Internal Server Error」などと表示される≫

何らかの原因により、プログラム自体が起動できませんでした。
以下の点をチェックして下さい。


©1998-2001 不可思議絵の具
(http://www.skipup.com/~fuka/)