Volt – A Variant of Bolt OCaml Logging Tool

概要

VoltはBolt OCaml Logging Toolの改造版であり、オリジナルに加えて次のような特徴があります。

  • パスフィルター
  • 拡張されたロガー記述構文
  • より詳細なデフォルトロガー名
  • 不要な引数評価の抑止
  • pattern、csv レイアウトにおける追加キー

パスフィルター

各ロガーにはパスフィルターが関連付けられます。パスフィルターは条件に合致するイベントのみをロガー階層の上位に伝搬させます。

拡張されたロガー記述構文

log_expr ::= …
| FATAL_MSG (string|ident) arguments attributes
| ERROR_MSG (string|ident) arguments attributes
| WARN_MSG (string|ident) arguments attributes
| INFO_MSG (string|ident) arguments attributes
| DEBUG_MSG (string|ident) arguments attributes
| TRACE_MSG (string|ident) arguments attributes
block_expr ::=
| BEGIN_FATAL expr_seq END_FATAL
| BEGIN_ERROR expr_seq END_ERROR
| BEGIN_WARN expr_seq END_WARN
| BEGIN_INFO expr_seq END_INFO
| BEGIN_DEBUG expr_seq END_DEBUG
| BEGIN_TRACE expr_seq END_TRACE

より詳細なデフォルトロガー名

オリジナル版ではロガーの名前指定を省略すると、拡張子を省き頭文字を大文字にしたソースファイル名がロガー名となりますが、それに加えて、ロガーを内包するモジュール名、クラス名、関数名がロガー名に付加されます。

不要な引数評価の抑止

LOG 式と *_MSG 式の引数は、それらが定義するロガーがイベントを記録しない場合、評価されることはありません。

pattern、csvレイアウトにおける追加キー

monthname – 月の名前。 例)January, February, …
monthnm – 短縮された月の名前。 例) Jan, Feb, …

ソースコード

開発版ソースコードは、GitHub から入手できます。

ライセンス

オリジナルと同様、このツールはLGPL v3の下にリリースされるフリーソフトウェアです。

インストレーション

INSTALL をご覧下さい。

オリジナル

オリジナルの Bolt の著作権は Copyright © 2009-2011 Xavier Clerc で、LGPL v3の下にリリースされています。