class Hanami::Events::CloudPubsub::Middleware::Logging
Middleware
used for logging useful information about an event
Public Class Methods
new(logger: nil)
click to toggle source
# File lib/hanami/events/cloud_pubsub/middleware/logging.rb, line 9 def initialize(logger: nil) @logger = logger end
Public Instance Methods
call(msg, **opts) { |**opts| ... }
click to toggle source
# File lib/hanami/events/cloud_pubsub/middleware/logging.rb, line 13 def call(msg, **opts) started_at = Process.clock_gettime(Process::CLOCK_MONOTONIC) yield(**opts) ensure ended_at = Process.clock_gettime(Process::CLOCK_MONOTONIC) seconds = ended_at - started_at logger.info <<~MSG Processed message(id: #{msg.message_id}) took #{seconds} seconds to process MSG end
Private Instance Methods
logger()
click to toggle source
# File lib/hanami/events/cloud_pubsub/middleware/logging.rb, line 26 def logger @logger || CloudPubsub.logger end