Class: Sidekiq::Statsd::ServerMiddleware
- Inherits:
-
Object
- Object
- Sidekiq::Statsd::ServerMiddleware
- Defined in:
- lib/sidekiq/statsd/server_middleware.rb
Instance Attribute Summary collapse
-
#client ⇒ Object
readonly
Returns the value of attribute client.
-
#prefix ⇒ Object
readonly
Returns the value of attribute prefix.
Instance Method Summary collapse
- #call(worker, msg, queue) ⇒ Object
-
#initialize(client, options = {}) ⇒ ServerMiddleware
constructor
A new instance of ServerMiddleware.
Constructor Details
#initialize(client, options = {}) ⇒ ServerMiddleware
Returns a new instance of ServerMiddleware.
9 10 11 12 |
# File 'lib/sidekiq/statsd/server_middleware.rb', line 9 def initialize(client, = {}) @client = client @prefix = .delete(:prefix) || "sidekiq" end |
Instance Attribute Details
#client ⇒ Object (readonly)
Returns the value of attribute client.
7 8 9 |
# File 'lib/sidekiq/statsd/server_middleware.rb', line 7 def client @client end |
#prefix ⇒ Object (readonly)
Returns the value of attribute prefix.
7 8 9 |
# File 'lib/sidekiq/statsd/server_middleware.rb', line 7 def prefix @prefix end |
Instance Method Details
#call(worker, msg, queue) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/sidekiq/statsd/server_middleware.rb', line 14 def call(worker, msg, queue) if msg['enqueued_at'] # convert and round to ms latency = ((Time.now.to_f - msg['enqueued_at']) * 1000).round client.timing(metric_key(worker, "latency"), latency) end client.time(metric_key(worker, "duration")) do yield end client.increment(metric_key(worker, "success")) rescue => e client.increment(metric_key(worker, "failure")) raise e end |