Class: Rack::Timeout::StateChangeLoggingObserver

Inherits:
Object
  • Object
show all
Defined in:
lib/rack/timeout/logging-observer.rb

Constant Summary collapse

STATE_LOG_LEVEL =
{ :expired   => :error,
  :ready     => :info,
  :active    => :debug,
  :timed_out => :error,
  :completed => :info,
}
SIMPLE_FORMATTER =
->(severity, timestamp, progname, msg) { "#{msg} at=#{severity.downcase}\n" }

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#logger=(value) ⇒ Object

Sets the attribute logger

Parameters:

  • value

    the value to set the attribute logger to.



26
27
28
# File 'lib/rack/timeout/logging-observer.rb', line 26

def logger=(value)
  @logger = value
end

Class Method Details

.mk_logger(device, level = ::Logger::INFO) ⇒ Object



18
19
20
21
22
23
# File 'lib/rack/timeout/logging-observer.rb', line 18

def self.mk_logger(device, level = ::Logger::INFO)
  ::Logger.new(device).tap do |logger|
    logger.level     = level
    logger.formatter = SIMPLE_FORMATTER
  end
end

Instance Method Details

#callbackObject

returns the Proc to be used as the observer callback block



13
14
15
# File 'lib/rack/timeout/logging-observer.rb', line 13

def callback
  method(:log_state_change)
end