class Syslog::Logger

要約

Logger のようなインターフェイスを用いて syslog にログを記録するためのクラスです。

目次

特異メソッド
インスタンスメソッド
定数

特異メソッド

make_methods(meth)[permalink][rdoc]

ライブラリ内部で使用します。

new(program_name = 'ruby') -> Syslog::Logger[permalink][rdoc]

Syslog::Logger オブジェクトを初期化します。

[PARAM] program_name:
Logger との互換性のために用意されています。プログラム名を文字列で指定できますが、最初の Syslog::Logger の初期化時のみ、指定した値がセットされます(syslog の仕様で 1 つのプログラム名のみが採用されます)。
syslog -> Syslog[permalink][rdoc]

内部の Syslog オブジェクトを返します。

デフォルトでは、最初の Syslog::Logger オブジェクトの作成時に作られたものを返します。

syslog=(syslog)[permalink][rdoc]

内部の Syslog オブジェクトを引数 syslog で指定したものに設定します。

[PARAM] syslog:
Syslog オブジェクトを指定します。

インスタンスメソッド

add(severity, message = nil, progname = nil, &block) -> true[permalink][rdoc]

メッセージをログに記録します。Logger#add とほぼ同じ動作をします。

ブロックを与えた場合はブロックを評価した返り値をメッセージとしてログに記録します。 ユーザがこのメソッドを直接使うことはあまりありません。

[PARAM] severity:
ログレベル。Logger クラスで定義されている定数を指定します。この値がレシーバーに設定されているレベルよりも低い場合、メッセージは記録されません。
[PARAM] message:
ログに出力するメッセージを表すオブジェクトを指定します。省略すると nil が用いられます。
[PARAM] progname:
無視されます。

[SEE_ALSO] Logger#add

debug(message = nil, &block) -> true[permalink][rdoc]

DEBUG 情報を出力します。syslog の DEBUG の情報として記録されます。

ブロックを与えなかった場合は、message をメッセージとしてログを出力します。

ブロックを与えた場合は、ブロックを評価した結果をメッセージとして ログを出力します。

引数とブロックを同時に与えた場合は、message をメッセージとしてログを出力します(ブロックは評価されません)。

[SEE_ALSO] Syslog::Logger::LEVEL_MAP, Logger#debug

debug? -> bool[permalink][rdoc]

self が DEBUG 以上の(syslog の debug)ログレベルのメッセージを記録する場合に true を返します。

error(message = nil, &block) -> true[permalink][rdoc]

ERROR 情報を出力します。syslog の warning の情報として記録されます。

ブロックを与えなかった場合は、message をメッセージとしてログを出力します。

ブロックを与えた場合は、ブロックを評価した結果をメッセージとして ログを出力します。

引数とブロックを同時に与えた場合は、message をメッセージとしてログを出力します(ブロックは評価されません)。

[SEE_ALSO] Syslog::Logger::LEVEL_MAP, Logger#error

error? -> bool[permalink][rdoc]

self が ERROR 以上の(syslog の warning)ログレベルのメッセージを記録する場合に true を返します。

fatal(message = nil, &block) -> true[permalink][rdoc]

FATAL 情報を出力します。syslog の err の情報として記録されます。

ブロックを与えなかった場合は、message をメッセージとしてログを出力します。

ブロックを与えた場合は、ブロックを評価した結果をメッセージとして ログを出力します。

引数とブロックを同時に与えた場合は、message をメッセージとしてログを出力します(ブロックは評価されません)。

[SEE_ALSO] Syslog::Logger::LEVEL_MAP, Logger#fatal

fatal? -> bool[permalink][rdoc]

self が FATAL 以上の(syslog の err)ログレベルのメッセージを記録する場合に true を返します。

formatter -> Logger::Formatter | Proc[permalink][rdoc]

ログを出力する際に使用するフォーマッターを取得します。

デフォルトでは Logger::Formatter オブジェクトを返します。

[SEE_ALSO] Syslog::Logger#formatter=

formatter=(formatter)[permalink][rdoc]

ログを出力する際に使用するフォーマッターをセットします。

[PARAM] formatter:
4 つの引数 (severity, time, program name, message) を受け取る call メソッドを 持つオブジェクトを指定します。

引数 formatter が持つ call メソッドは以下の 4 つの引数 (severity, time, program name, message) を受けとります。

severity

このメッセージのログレベル(Logger::Severity 参照)。

time

このメッセージが記録された時刻を表す Time オブジェクト。

progname

無視されます。互換性のために用意されています。

message

記録するメッセージ。

call メソッドは文字列を返す必要があります。

[SEE_ALSO] Syslog::Logger#formatter

info(message = nil, &block) -> true[permalink][rdoc]

INFO 情報を出力します。syslog の info の情報として記録されます。

ブロックを与えなかった場合は、message をメッセージとしてログを出力します。

ブロックを与えた場合は、ブロックを評価した結果をメッセージとして ログを出力します。

引数とブロックを同時に与えた場合は、message をメッセージとしてログを出力します(ブロックは評価されません)。

[SEE_ALSO] Syslog::Logger::LEVEL_MAP, Logger#info

info? -> bool[permalink][rdoc]

self が INFO 以上の(syslog の info)ログレベルのメッセージを記録する場合に true を返します。

level -> Integer[permalink][rdoc]

self に設定されたログレベルを返します。

ログレベルは Logger と互換性があります。

[SEE_ALSO] Syslog::Logger#level=

level=(val)[permalink][rdoc]

self のログレベルを引数 val で指定した値に設定します。

[PARAM] val:
ログレベルを指定します。

[SEE_ALSO] Syslog::Logger#level

unknown(message = nil, &block) -> true[permalink][rdoc]

UNKNOWN 情報を出力します。syslog の alert の情報として記録されます。

ブロックを与えなかった場合は、message をメッセージとしてログを出力します。

ブロックを与えた場合は、ブロックを評価した結果をメッセージとして ログを出力します。

引数とブロックを同時に与えた場合は、message をメッセージとしてログを出力します(ブロックは評価されません)。

[SEE_ALSO] Syslog::Logger::LEVEL_MAP, Logger#unknown

unknown? -> bool[permalink][rdoc]

self が UNKNOWN 以上の(syslog の alert)ログレベルのメッセージを記録する場合に true を返します。

warn(message = nil, &block) -> true[permalink][rdoc]

WARN 情報を出力します。syslog の notice の情報として記録されます。

ブロックを与えなかった場合は、message をメッセージとしてログを出力します。

ブロックを与えた場合は、ブロックを評価した結果をメッセージとして ログを出力します。

引数とブロックを同時に与えた場合は、message をメッセージとしてログを出力します(ブロックは評価されません)。

[SEE_ALSO] Syslog::Logger::LEVEL_MAP, Logger#warn

warn? -> bool[permalink][rdoc]

self が WARN 以上の(syslog の notice)ログレベルのメッセージを記録する場合に true を返します。

定数

LEVEL_MAP -> {Integer => Integer}[permalink][rdoc]

Logger のログレベルと syslog(3) のログレベルのマッピングを表す Hash オブジェクトです。

Syslog::Logger では、Ruby アプリケーションからのメッセージはシステム上の他のデーモンからの syslog(3) に記録されるメッセージと比べて、ログレベルを 1 つ下げて記録されます (Logger::Severity::DEBUGLogger::Severity::INFO は除く)。例えば、Logger::Severity::FATAL として記録した場合、 Syslog::Level::LOG_ERR として処理されます。

VERSION -> '2.0'[permalink][rdoc]

Syslog::Logger のバージョンを表す文字列です。