機械処理向きのログを表示する

fml8 以外の別のコマンドや独自の CGI などから fml8 CUI を呼びだし処理をさせたい場合に STDERR などで fml8 からのログを受けとりたいことがあります。

そういった場合は、

% makefml --log-computer-output コマンド ML名
% fml --log-computer-output     ML名 コマンド
とすると、コマンドの結果が標準出力( STDOUT )へ、 ログが STDERR へ出力されます。

たとえば次のようになります。

% fml --log-computer-output elena@fml.org list
rudo@nuinui.net
1070109341  info lock channel=recipient_map_modify
1070109342  info unlock channel=recipient_map_modify
この例(デフォルト)では、 「時刻(unix time)、ログのレベル(info,warning,errorなど)、メッセージ」 となっています。

コマンドラインオプション --log-computer-output は、 config.cf などで

use_log_computer_output = yes
と指定することでも同じ効果となります。

しかしながら、この変数を yes にすると、makefml や fml だけでなく、配送 やコマンドメールのプログラムも STDERR にログを出力してしまいますので注 意してください。

メッセージのキューイングの内部構造や出力フォーマットは、ある perl module のなかに押し込めてあります。このモジュール(デフォルトは FML::Log::Print::Simple)は config.cf で log_computer_output_engine を 変数を使えば変更可能です。出力を切替えたい場合は、自分用のモジュールを 作り、それを、この変数に指定してください。モジュールは FML::Log::Print::Simple を参考に、hack してみてください:)

fml 8.0 (fml-devel) project homepage is www.fml.org/software/fml8/.
fml 4.0 project homepage is www.fml.org/software/fml4/.
about one floppy bsd routers, see www.bsdrouter.org/.
other free softwares are found at www.fml.org/software/.

author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.

For questions about FML, e-mail <fml-bugs@fml.org>.