Class: Tochtli::MessageLogger
- Inherits:
-
Middleware
- Object
- Middleware
- Tochtli::MessageLogger
- Defined in:
- lib/tochtli/application.rb
Instance Method Summary collapse
Methods inherited from Middleware
Constructor Details
This class inherits a constructor from Tochtli::Middleware
Instance Method Details
#call(env) ⇒ Object
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 |
# File 'lib/tochtli/application.rb', line 100 def call(env) start_time = Time.now = env[:message] controller_class = env[:controller_class] delivery_info = env[:delivery_info] properties = env[:properties] action = env[:action] logger = env[:logger] action_info = action.is_a?(Proc) ? "block at #{action.source_location.join(':')}" : action logger.debug "\n\nAMQP Message #{.class.name} at #{start_time}" logger.debug "Processing by #{controller_class.name}##{action_info} [Thread: #{Thread.current.object_id}]" logger.debug "\tMessage: #{.attributes.inspect}." logger.debug "\tProperties: #{properties.inspect}." logger.debug "\tDelivery info: exchange: #{delivery_info[:exchange]}, routing_key: #{delivery_info[:routing_key]}." result = @app.call(env) logger.debug "Message #{properties[:message_id]} processed in %.1fms." % [(Time.now - start_time) * 1000] result end |