class SidekiqQueueStatus::Middleware
Constants
- HEADERS
Public Class Methods
new(app)
click to toggle source
# File lib/sidekiq_queue_status/middleware.rb, line 10 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/sidekiq_queue_status/middleware.rb, line 14 def call(env) if env["PATH_INFO"] =~ %r{\A/queue-status\Z} metrics = Metric.all body = { latencies: metrics.latencies, failure_percentage: metrics.failure_rate, errors: metrics.errors }.to_json status = metrics.errors.any? ? 503 : 200 [status, HEADERS, [body]] else @app.call(env) end end