Class: Sidekiq::Metrics::Queues

Inherits:
Object
  • Object
show all
Defined in:
lib/sidekiq/metrics/queues.rb

Instance Method Summary collapse

Constructor Details

#initialize(influxdb_client:, series_name: 'sidekiq_queues', retention_policy: nil, tags: {}) ⇒ Queues

Returns a new instance of Queues.



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/sidekiq/metrics/queues.rb', line 7

def initialize(
  influxdb_client:,
  series_name: 'sidekiq_queues',
  retention_policy: nil,
  tags: {}
)
  @influxdb = influxdb_client
  @series = series_name
  @retention = retention_policy
  @tags = tags
end

Instance Method Details

#publishObject



19
20
21
22
23
24
25
26
27
28
# File 'lib/sidekiq/metrics/queues.rb', line 19

def publish
  queues = Sidekiq::Stats::Queues.new.lengths

  queues.each do |queue, size|
    save(
      tags: {queue: queue}.merge(@tags),
      values: {size: size}
    )
  end
end