Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > syslog/loggerライブラリ > Syslog::Loggerクラス

class Syslog::Logger

クラスの継承リスト: Syslog::Logger < Object < Kernel < BasicObject

要約

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

目次

特異メソッド
make_methods new syslog syslog=
インスタンスメソッド
add debug debug? error error? fatal fatal? formatter formatter= info info? level level= unknown unknown? warn warn?
定数
LEVEL_MAP VERSION

特異メソッド

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 のバージョンを表す文字列です。