Class: Hanami::Logger
- Inherits:
-
Logger
- Object
- Logger
- Hanami::Logger
- Defined in:
- gems/gems/hanami-utils-1.1.2/lib/hanami/logger.rb,
gems/gems/hanami-utils-1.3.8/lib/hanami/logger/filter.rb,
gems/gems/hanami-utils-1.3.8/lib/hanami/logger/colorizer.rb,
gems/gems/hanami-utils-1.3.8/lib/hanami/logger/formatter.rb,
gems/gems/hanami-utils-1.3.8/lib/hanami/logger.rb
Overview
Hanami logger
Implementation with the same interface of Ruby std lib Logger. It uses STDOUT, STDERR, file name or open file as output stream.
When a Hanami application is initialized, it creates a logger for that specific application. For instance for a Bookshelf::Application a Bookshelf::Logger will be available.
This is useful for auto-tagging the output. Eg (app=Booshelf).
When used standalone (eg. Hanami::Logger.info), it tags lines with app=Shared.
The available severity levels are the same of Logger:
-
DEBUG
-
INFO
-
WARN
-
ERROR
-
FATAL
-
UNKNOWN
Those levels are available both as class and instance methods.
Also Hanami::Logger supports different formatters. Now available only two:
-
Formatter (default)
-
JSONFormatter
And if you want to use custom formatter you need create new class inherited from Formatter class and define _format private method like this:
class CustomFormatter < Formatter
private
def _format(hash)
# ...
end
end