Sidekiqダッシュボードでは、左側にカウンターのあるボックスが表示されます
Processed 168
Failed 111
Busy 0
Scheduled 0
Retries 0
Enqueued 0
それらをすべて0にリセットするにはどうすればよいですか?
処理済みのジョブをリセットするには:
Sidekiq.redis {|c| c.del('stat:processed') }
失敗したジョブをリセットするには:
Sidekiq.redis {|c| c.del('stat:failed') }
また、履歴パネルで特定の日をリセットするには、次を実行できます。
Sidekiq.redis {|c| c.del('stat:processed:2015-07-02') }
Sidekiq.redis {|c| c.del('stat:failed:2015-07-02') }
クリアしたい日ごとに繰り返します。
これは、通常よりも何倍も頻繁に発生して失敗する野生のジョブがあり、通常のすべての履歴値を事実上フラットラインにする大きなスパイクのある履歴グラフを取得する場合に役立ちます。
Sidekiq :: RetrySet.new.clear
Sidekiq :: ScheduledSet.new.clear
Sidekiq :: Stats.new.reset
Sidekiq :: DeadSet.new.clear
フォント: https://Gist.github.com/wbotelhos/fb865fba2b4f3518c8e533c7487d5354
すべての適切な答えを補完するために、Rubyインタラクティブモードを使用してカウンターをリセットし、コンソールでこれを実行します。
irb
irb(main):001:0> require 'sidekiq/api'
=> true
irb(main):002:0> Sidekiq.redis {|c| c.del('stat:processed') }
=> 1
irb(main):003:0> Sidekiq.redis {|c| c.del('stat:failed') }
=> 1
特定の日付の履歴パネルとともにすべてを削除する場合は、次の便利なスニペットがあります。
from_date = Date.new(2016, 1, 1)
to_date = Date.today
Sidekiq.redis do |redis|
redis.del("stat:processed")
redis.del("stat:failed")
(from_date..to_date).each do |date|
redis.del("stat:processed:#{date}")
redis.del("stat:failed:#{date}")
end
end