Class | Yell::Formatter |
In: |
lib/yell/formatter.rb
|
Parent: | Object |
Table | = | { "m" => "message(event.messages)", # Message "l" => "level(event.level, 1)", # Level (short), e.g.'I', 'W' "L" => "level(event.level)", # Level, e.g. 'INFO', 'WARN' "d" => "date(event.time)", # ISO8601 Timestamp "h" => "event.hostname", # Hostname "p" => "event.pid", # PID "P" => "event.progname", # Progname "t" => "event.thread_id", # Thread ID "F" => "event.file", # Path with filename where the logger was called "f" => "File.basename(event.file)", # Filename where the loger was called "M" => "event.method", # Method name where the logger was called "n" => "event.line", # Line where the logger was called "N" => "event.name" | ||
LegacyTable | = | Hash[ Table.keys.map { |k| [k, 'noop'] } ].merge( 'm' => 'message(msg)', 'l' => 'level(event, 1)', 'L' => 'level(event)', 'd' => 'date(time)', "p" => "$$", 'P' => 'progname' | For standard formatted backwards compatibility | |
PatternMatcher | = | /([^%]*)(%\d*)?(#{Table.keys.join('|')})?(.*)/m |
date_pattern | [R] | |
pattern | [R] |
Initializes a new +Yell::Formatter+.
Upon initialization it defines a format method. `format` takes a {Yell::Event} instance as agument in order to apply for desired log message formatting.
@example Blank formatter
Formatter.new
@example Formatter with a message pattern
Formatter.new("%d [%5L] %p : %m")
@example Formatter with a message and date pattern
Formatter.new("%d [%5L] %p : %m", "%D %H:%M:%S.%L")
@example Formatter with a message modifier
Formatter.new do |f| f.modify(Hash) { |h| "Hash: #{h.inspect}" } end