ログ解析スクリプトAWStats 7.7ドキュメント |
AWStatsは、使いやすく、強力な拡張を可能にするとてもフレキシブルなプラグインアーキテクチャを採用しています。ここでは、独自の開発を始めるために必要な情報があります。このドキュメントでは、プラグインやモジュールという用語は、同じ意味で使用されます。
各プラグインは、名前、フック、実装し、必要なAWStatsのバージョンという3つの必要なローカル変数を実装する必要があります。通常は、サンプルコードのようにプラグインファイルの先頭にこれらを実装します。
#-----------------------------------------------------------------------------
# PLUGIN VARIABLES
#-----------------------------------------------------------------------------
# <-----
# ここにプラグインに必要な最小AWStatsのバージョンとプラグインが管理
# するすべての機能の名前を入力します。
my $PluginNeedAWStatsVersion="5.5";
my $PluginHooksFunctions="GetCountryCodeByAddr GetCountryCodeByName
ShowInfoHost";
my $PluginName = "geoipfree";
my $PluginImplements = "mou";
# ----->
$PluginNeedAWStatsVersionはプラグインを正常に実行するために必要なAWStatsのの最小バージョンを示します。ユーザーがプログラムの古いバージョンを使用してプラグインを実装しようとすると、プラグインがロードされません。
$PluginHooksFunctionsは、プラグインが実装するフックのスペースで区切られたリストです。このリストには、プラグインのフックで定義された名前をだけを含む必要があります。プライベートモジュールの機能やこのリストのInit_のフックは記載しません。すべてのフックの命名規則は、HookName_PluginNameです。フックは、下線のないフックの名前が含まれています。
$PluginNameは、フックとファイル名に表示されているとおり、単にプラグインの名前です。これは、ロード時にAWStatsが使用します。
$PluginImplementsは、プラグインが実行する操作に対応する文字コードのリストです。これらの文字コードの少なくとも一つがなければ、プラグインが実行されません。コードは次のとおりです。
したがって、構成ファイルの設定のデバッグレベルを利用できます(するべきです)。
debug("デバッグメッセージ", デバッグレベル) - ユーザが実行時に設定したデバッグレベル(整数)以下のデバッグレベルの場合に標準出力に"デバッグメッセージ"を書き込みます。高いデバッグレベルほど、重要度の低いまたは情報的なメッセージとなります。メッセージを出力した後も、プログラムは実行を継続します。
error("エラーメッセージ") - 標準出力に"エラーメッセージ"を書き込みプログラムの実行を停止します。
Format_Bytes(バイト) - バイトで指定された十進数値をキロバイト、メガバイト、ギガバイトなどに変換します。1024.5を指定すると"1 KB"が返されます。
Format_Date(YYYYMMDDHHMMSS) - - 入力されたタイムスタンプを2010年4月30日16:55のように変換します。
Format_Number(数字) - 読みやすいようにコンマまたはユーザー定義文字を[3桁ごとの]区切りとして追加します。[123456789を入力すると123,456,789を返します。]