要約
ユーザ定義のアプリケーションにログ機能を簡単に追加することができます。
使用方法
- このクラスのサブクラスとしてユーザ定義のアプリケーションのクラスを定義します。
- ユーザ定義のクラスでメイン処理を行う run メソッドを定義します。
- そのクラスをインスタンス化して start メソッドを呼び出します。
例:
class FooApp < Application
def initialize(foo_app, application_specific, arguments)
super('FooApp') # Name of the application.
end
def run
...
log(WARN, 'warning', 'my_method1')
...
@log.error('my_method2') { 'Error!' }
...
end
end
status = FooApp.new(....).start
注意
このクラスは 2.2.0 で gem ライブラリとして切り離されました。2.2.0 以降ではそちらを利用してください。
目次
継承しているメソッド
特異メソッド
new(appname = nil) -> Logger::Application[permalink][rdoc]-
このクラスを初期化します。
- [PARAM] appname:
- アプリケーション名を指定します。
インスタンスメソッド
appname -> String[permalink][rdoc]-
アプリケーション名を取得します。
level=(level)[permalink][rdoc]-
ログのログレベルをセットします。
- [PARAM] level:
- ログのログレベル。
[SEE_ALSO] Logger::Severity
log(severity, message = nil) -> true[permalink][rdoc]log(severity, message = nil) { ... } -> true-
メッセージをログに記録します。
ブロックを与えた場合はブロックを評価した返り値をメッセージとしてログに記録します。
- [PARAM] severity:
- ログレベル。Logger::Severity クラスで定義されている定数を指定します。この値がレシーバーに設定されているレベルよりも低い場合、メッセージは記録されません。
- [PARAM] message:
- ログに出力するメッセージを文字列か例外オブジェクトを指定します。省略すると nil が用いられます。
[SEE_ALSO] Logger#add
log=(logdev)[permalink][rdoc]-
ログの出力先をセットします。
- [PARAM] logdev:
- ログファイル名か IO オブジェクトを指定します。
logdev -> ()[permalink][rdoc]-
このメソッドは使用されていません。
set_log(logdev, shift_age = 0, shift_size = 1024000) -> Integer[permalink][rdoc]-
内部で使用する Logger のオブジェクトを初期化します。
- [PARAM] logdev:
- ログを書き込むファイル名か、 IO オブジェクト(STDOUT, STDERR など)を指定します。
- [PARAM] shift_age:
- ログファイルを保持する数か、ログファイルを切り替える頻度を指定します。頻度には daily, weekly, monthly を文字列で指定することができます。省略すると、ログの保存先を切り替えません。
- [PARAM] shift_size:
- shift_age を整数で指定した場合のみ有効です。このサイズでログファイルを切り替えます。
- [RETURN]
- ログのログレベルを返します。
start -> ()[permalink][rdoc]-
アプリケーションをスタートさせます。
- [RETURN]
- run メソッドの返値を返します。
- [EXCEPTION] RuntimeError:
- サブクラスで run メソッドを定義していない場合に発生します。