MathLMのログ

ログを書き込む
ログを書き込むには次の2つの方法がある.
ログファイルの文法
MathLMのログファイルは,すべてデフォルトでApacheのようなWebサーバで使われているW3CのCommon Logfile Formatで生成される.しかし,オプションの -logformatを使ってその形式をカスタマイズすることができる.このオプションはサーバメッセージを表示する形式を指定する文字列を引数に取る.文字列は%var#という形式の一連のコマンドを含む.それぞれは以下の意味を持つ.

注:ネットワーク上のWindowsのクライアントはすべて同じユーザID(デフォルトで65535になっている)を持っている.ゆえに,ユーザIDの設定はUnix,Linux,Mac OS Xを実行しているクライアントにのみ意味がある.

注:GMT(グリニッジ標準時)のオフセット形式(%t3)を使う場合はMathLMをスタートする際に-localtimeオプションも使わなければならない.

サンプルと動作
コマンドmathlm -logfile log.txtをオプション-logformatなしで実行すると,メッセージはデフォルト形式で生成される.以下は,log.txtに含まれるデフォルト形式でのメッセージの例である.
Common Logfile Formatを真似たデフォルトのフォーマット文字列は,以下で呼び出すことができる.
%h3 - %u2 [%d/%m2/%y2:%t2 %t3] %q%e2%q %q%r2%q -
Common Logfile Formatを手動で指定するためには,下のコマンドに示す通り,上記の文字列を-logformatオプションの値として指定しなければならない.このコマンドで生成されたメッセージは,上の例と同じ形式である.
mathlm -logfile log.txt -logformat "%h3 - %u2 [%d/%m2/%y2:%t2 %t3] %q%e2%q %q%r2%q -"
時間はデフォルトでグリニッジ標準時で表示される.現地時間で表示したければ,%t1タグか%t2タグで-localtimeコマンドラインオプションを使わなければならない.現地時間で表示したい場合は,%t3タグはフォーマット文字列には現れない.
現地時間を使う別のフォーマット文字列である.
mathlm -logfile log.txt -localtime -logformat "%h1 - %u2 [%m1-%d-%y1: %t1] %q%e2%q %q%r2%q -"
以下は,log.txtに含まれるような,ユーザ指定の形式によるサーバメッセージの例である.

注:IPv6ネットワークのサーバメッセージは,別の指定をしなくても自動的にIPv6アドレスを表示する.