Class: Wellness::Services::SidekiqService
- Defined in:
- lib/wellness/services/sidekiq_service.rb
Overview
Constant Summary collapse
- KEYS =
%w(redis_stats uptime_in_days connected_clients used_memory_human used_memory_peak_human)
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
Methods inherited from Base
#call, dependency, #failed_check, #healthy?, #initialize, #passed_check
Constructor Details
This class inherits a constructor from Wellness::Services::Base
Instance Method Details
#check ⇒ Hash
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/wellness/services/sidekiq_service.rb', line 15 def check sidekiq_stats = Sidekiq::Stats.new queue = Sidekiq::Queue.new redis = Redis.new(self.params.fetch(:redis)) redis_stats = redis.info.select { |k, _| KEYS.include?(k) } workers_size = redis.scard('workers').to_i { status: 'HEALTHY', details: { processed: sidekiq_stats.processed, failed: sidekiq_stats.failed, busy: workers_size, enqueued: sidekiq_stats.enqueued, scheduled: sidekiq_stats.scheduled_size, retries: sidekiq_stats.retry_size, default_latency: queue.latency, redis: redis_stats } } rescue => error { status: 'UNHEALTHY', details: { error: error. } } end |