class MicroLogger
Constants
- DEFAULT_HANDLERS
- VERSION
Public Instance Methods
log(message, level = :info, extra = {})
click to toggle source
# File lib/micrologger.rb, line 18 def log(message, level = :info, extra = {}) trigger level, message, {level: level, time: Time.now}.merge(extra) end
register(level = :info, handler = nil, &block)
click to toggle source
# File lib/micrologger.rb, line 22 def register(level = :info, handler = nil, &block) bind level, &resolve_handler(handler || block) end
unregister(level = :info, handler = nil, &block)
click to toggle source
# File lib/micrologger.rb, line 26 def unregister(level = :info, handler = nil, &block) if handler || block unbind level, &resolve_handler(handler || block) else unbind level end end
Private Instance Methods
formatter(message, extra)
click to toggle source
# File lib/micrologger.rb, line 47 def formatter(message, extra) "#{extra[:time].strftime('%Y-%m-%d %H:%M')} | #{extra[:level]} | #{message}" end
resolve_handler(handler)
click to toggle source
# File lib/micrologger.rb, line 37 def resolve_handler(handler) if handler.is_a?(Proc) handler elsif default_handler = DEFAULT_HANDLERS[handler] default_handler else raise ArgumentError, "no suitable handler found for #{handler.inspect}" end end