ログ出力ライブラリ LuaLogging

CGIライブラリをいじってるときは、自前のログ関数で、stderrに垂れ流していたんですが、やはり用意されたものを使うようにしようと思い、Keplerに含まれていたloggingのライブラリを調べてみました。LuaLogging というライブラリです。

http://www.keplerproject.org/lualogging/manual.html

これも、log4jをベースに設計されているそうです。(これもと書いたのは、common lispのテストツールが、JUnitを元にしていたことがあったためです)Javaの良いライブラリは、いろんなところに影響を与えているんですね。

サンプルコードやlogging.fileのソースを見て、動かすことができました。

require "logging"
require "logging.file"
log = logging.file('debug.log')
log:setLevel(logging.DEBUG)
log:debug('debugging....')
log:error('oooooooops')

これで、debug.logに下のように出力される。

07/19/08 21:51:36 DEBUG debugging....
07/19/08 21:51:36 ERROR oooooooops

簡単だ。これだけで、ログレベルを考慮したログ出力ができました。最初から使えばよかったです。

用意されたアペンダがあるので、ファイル以外にもログ出力することができます。

Appenders

The following appenders are included in the standard distribution.

* Console

* File

* SQL

* Socket

* Email

LuaLogging: A simple API to use logging features in Lua

ソースを見ればわかるんですが、アペンダの実体は、だたのログ出力関数なので、超簡単に自前のアペンダを定義することができます。

Luaには、脈々とKISS(Keep it Simple, Stupid!)の精神が流れています。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください