| ログ解析スクリプトAWStats 7.8ドキュメント |

# その他のツール

これはAWStatsが提供するそのた他のツールのリストです。
これらのすべてのツールはAWStatsのtoolsディレクトリにあります。

## awstats_updateall.pl

awstats_updateallは、特定のディレクトリにあるすべての(awstats.model.confを除く)AWStats構成ファイルの更新処理を開始するので、容易にcron/スケジューラジョブをセットアップできます。スキャンされるディレクトリはデフォルトでは/etc/awstatsです。

用法: awstats_updateall.pl now [オプション]

ここで、オプションは
-awstatsprog=awstats.plへのパス
-configdir=構成ファイルのディレクトリ

## awstats_buildstaticpages.pl

awstats_buildstaticpagesは、-outputオプションで可能なすべてのページをAWStatsの-staticlinksオプションで作成するようにAWStatsを起動します。

用法: awstats_buildstaticpages.pl (awstatsのオプション) [awstats静的ページ作成オプション]

ここで、awstatsのオプションは、AWStatsの任意のオプションです。

-config=mysite | mysiteは構成ファイルを指定する(必須)。
-update | ページ作成前に更新することを指定する。
-lang=LL | HTMLレポートの言語LL(jp,en,de,es,fr,...)
-month=MM | 以前の月MMのHTMLレポートを出力する。
-year=YYYY | 以前の年YYYYのHTMLレポートを出力する。

awstats静的ページ作成オプションは、

-awstatsprog=awstatsplへのパス | AWStatsスクリプト(awstats.pl)へのパスを指定する。
-dir=出力デイレクトリ | 生成するページのディレクトリ。
-builddate=%YY%MM%DD | 生成するページのファイル名に指定日付を付加する。
-staticlinksext=xxx | 生成するページの拡張子を.htmlでなく、.xxxにすることを指定する。
-buildpdf[=htmldocへのパス] | HTMLページの作成後にPDFファイルを作成することを指定する。このオプションを指定する場合、出力ディレクトリにはアイコンディレクトリ(htmldoc)が必要

最新版とFAQはhttp://www.awstats.orgを参照のこと。

## logresolvemerge.pl

logresolvemergeはいくつかのログファイルを日付でソートされた一つのファイルにマージします。また、すべてのIPアドレスを逆DNSルックアップしてホスト名に置き換えます。logresolvemergeは、まったく無保証です。それはGNU General Public Licenseで配布されたフリーソフトウェアです(COPYING.txtを参照のこと)。logresolvemergeはAWStatsの一部ですが、他のログアナライザを使用する前に、ログマージやレゾルバとして単独で使用できます。

用法:
logresolvemerge.pl [オプション] ファイル
logresolvemerge.pl [オプション] ファイル1 ... ファイルn
logresolvemerge.pl [オプション] *.*

オプション

-dnslookup | IPアドレスを逆DNSルックアップすることを指定する。
-dnscache=file | ページ作成前に更新することを指定する。
-showsteps | 8192行ごとにベンチマーク情報を出力する
-addfilenum | 複数の入力ファイルを使うとき、出力の第一フィールドにファイル番号をつける。

logresolvemergeは、コマンドラインで実行され、(日付でソートされた)いくつかのウェブサーバーログファイルをマージし、(必要なら)逆DNSルックアップを実行します。結果ログファイルは標準出力に出力します。
注意: logresolvemergeは1個のファイルをソートする'ソート'ツールではありません。ログファイルがいくつかのファイルに分かれていても、ソートされたログファイルを出力できる(逆DNSルックアップが含まれている場合もありますが)ソフトウェアです。それぞれのログファイルは前もってソートされいなければなりません(すべてのウェブサーバーログファイルはそうなっています)。それで、負荷分散されたサーバのログファイルとか、いくつかの古いログファイルを処理するのに使用できます。

logresolvemergeの第一目的がディスク上でマージすることなしに(まったくディスクスペースを使いません)、またメモリにファイルをロードしないで(まったく余分なメモリを使いません)、ソートされたデータをログアナライザに送ることなを忘れないでください。出力レコードの選択はオンザフライに行われます。

(ログアナライザに使用するために)パイプを通してディスクや、余分ののメモリの使用なしにすばやく、いくつかの、そして/または、大きいログファイルを出力する用途には、logresolvemergeは特に役に立ちます。

注意:入力レコードが「厳密に」ソートされているのではなく、「だいたい」ソートされているのだとしても(これは重いサーバで起こります)、問題にはなりません。出力も「だいたい」ソートされていることになりますが、(AWStatsのような)いくつかのログアナライザのは、そのようなログに対処できます。

警告:ログファイルが古いMACテキストファイル(行がCRで終わっている)であるなら、WindowsやUnixプラットホームでこのツールを実行できません。

警告:ActiveState Perlバージョンの重要なメモリホールのために、大きいログファイルを処理する必要があるなら、別のPerlインタプリタを使用してください。(訳註:ActivePerl build 1003では、200MB程度のファイルに適用して問題ありませんでした。)

ログ形式の自動検出
zcat/bzcatツールがPATHで利用可能であるなら、.gz/.bz2ファイルも処理できます。
新しいバージョンとFAQはhttp://www.awstats.org。

## maillogconvert.pl

maillogconvertは、(postfix、sendmailまたはqmailサーバの)メールログファイルを人間が読める形式に変換するメールログプリプロセッサです。また、出力形式はAWStatsのようなログアナライザが使用できます。

用法:
perl maillogconvert.pl [standard|vadmin] [年] < logfile > output

最初のパラメタは、メールログファイルがどんな形式であるかを指定します:

- standard - ログファイルは、標準のpostfix、sendmail、qmailまたはmdaemonログ形式
- vadmin - ログファイルは、vadminマルチホストサポートのqmailログ形式

2番目のパラメタは、現在の年が正しくない場合に(たとえば2002年のログファイルを処理する場合)、ログファイに格納する年を指定します。いつも4ケタ指定してください。指定されないなら、現在の年が使用されています。

出力が全く指定されないなら、コンソール(stdout)に出力します。
例えば、以下はポストフィックスメールログサーバからの例です。

    # 1 Mail fromuser@aol.com -> touser@toserver.com, forward touser@toserver.com -> touser@mainserver.com
    Jan 01 07:27:31 apollon postfix/smtpd[1684]: connect from remt30.cluster1.charter.net[209.225.8.40]
    Jan 01 07:27:32 apollon postfix/smtpd[1684]: 2BC793B8A4: client=remt30.cluster1.charter.net[209.225.8.40]
    Jan 01 07:27:32 apollon postfix/cleanup[1687]: 2BC793B8A4: message-id=<36027278@vneka>
    Jan 01 07:27:32 apollon postfix/qmgr[13860]: 2BC793B8A4: from=<fromuser@aol.com>, size=2130, nrcpt=1 (queue active)
    Jan 01 07:27:32 apollon postfix/smtpd[1684]: disconnect from remt30.cluster1.charter.net[209.225.8.40]
    Jan 01 07:27:38 apollon postfix/local[1689]: 2BC793B8A4: to=<touser@mainserver.com>, orig_to=<touser@toserver.com>, relay=local, delay=6, status=sent ("|/usr/bin/procmail")
    # 2 Reject: 450
    Jan 01 14:05:44 apollon postfix/smtpd[2114]: connect from baby.mainframe.nl[81.29.4.2]
    Jan 01 14:05:44 apollon postfix/smtpd[2114]: E0C9D3BD9A: client=baby.mainframe.nl[81.29.4.2]
    Jan 01 14:05:44 apollon postfix/smtpd[2114]: E0C9D3BD9A: reject: RCPT from baby.mainframe.nl[81.29.4.2]: 450 <touser2@toserver.com>: User unknown in local recipient table; from=<> to=<touser2@toserver.com> proto=ESMTP helo=<baby.mainframe.nl>
    Jan 01 14:10:16 juni postfix/smtpd[2568]: C34ED1432B: reject: RCPT from relay2.tp2rc.edu.tw[163.28.32.177]: 450 <unknownuser@unknownserver.com>: User unknown in local recipient table; from=<> proto=ESMTP helo=<rmail.nccu.edu.tw>
    # 1 From unknown
    Jan 01 15:17:05 apollon postfix/smtpd[29866]: connect from tomts12.bellnexxia.net[209.226.175.56]
    Jan 01 15:17:05 apollon postfix/smtpd[29866]: 578093B8B5: client=tomts12.bellnexxia.net[209.226.175.56]
    Jan 01 15:17:05 apollon postfix/cleanup[28931]: 578093B8B5: message-id=<20030905131913.EOVH11393.tomts12-srv.bellnexxia.net@tomts12-srv>
    Jan 01 15:17:06 apollon postfix/qmgr[965]: 578093B8B5: from=<>, size=109367, nrcpt=1 (queue active)
    Jan 01 15:17:06 apollon postfix/local[32432]: 578093B8B5: to=<touser@mainserver.com>, orig_to=<touser@toserver.com>, relay=local, delay=1, status=sent ("|/usr/bin/procmail")
    Jan 01 15:17:06 apollon postfix/smtpd[29866]: disconnect from tomts12.bellnexxia.net[209.226.175.56]

が下記のように変換されます:

    2004-01-01 07:27:38 fromuser@aol.com touser@toserver.com remt30.cluster1.charter.net localhost SMTP - 1 2130
    2004-01-01 14:05:44 <> touser2@toserver.com baby.mainframe.nl - SMTP - 450 0
    2004-01-01 14:10:16 <> unknownuser@unknownserver.com relay2.tp2rc.edu.tw - SMTP - 450 0
    2004-01-01 15:17:06 <> touser@toserver.com tomts12.bellnexxia.net localhost SMTP - 1 109367

FAQ-COM100を見て、メールログファイルを分析するのにAWStatsとmaillogconvert.plを使用する方法を確認してください。

## urlaliasbuilder.pl

Urlaliasbuilderは入力ファイルからの'urlalias'ファイルを生成します。入力ファイルはURLのリストを含まなければなりません(AWStats履歴ファイルも使用できます)。それぞれのURLから、スクリプトは、対応するHTMLページを読み込みヘッダー情報(タイトル)を見つけます。次に、URLごとにいくつかのフィールドのある1行を、出力ファイルに出力します:

- 最初のフィールドはURLです。
- 2番目はウェブページから読み込んだタイトルです。

このファイルは、AWStats urlalias pluginに使用できます。

用法:
urlaliasbuilder.pl -site=www.myserver.com [オプション]

siteパラメタはページを得るウェブサーバーを含んでいます。
ここで、オプションは:

- -urllistfile=入力urllistファイル
  このファイルがAWStats履歴ファイルであるなら、urlaliasbuilderはこのファイルのSIDER部を入力URLとして使用するでしょう。
- -urlaliasfile=出力urlaliasファイル
- -overwrite 出力ファイルが存在しても重ね書きする
- -secure httpsプロトコルを使用する

例: urlaliasbuilder.pl -site=www.someotherhost.com

http://www.awstats.orgに新しいバージョンとFAQ

このスクリプはSimon Waightのオリジナルtitle-grabber.plから書かれた。

Article written by Laurent Destailleur.
Follow @awstats_project