在我sidekiq儀表盤,我看到左邊一個盒子計數器如何重置我的sidekiq計數器?
Processed 168
Failed 111
Busy 0
Scheduled 0
Retries 0
Enqueued 0
如何他們都重置爲0?
在我sidekiq儀表盤,我看到左邊一個盒子計數器如何重置我的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') }
,並重復你要清除每一天。
如果你的野外工作產卵和失敗的次數比平時多出許多倍,那麼這很有用,你會得到一個歷史圖表,其中有一個巨大的峯值,使所有通常的歷史值有效地變成一條平坦線。
如果你想刪除整個事情與歷史面板具體日期一起,這裏是有幫助的片段:
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
這也將重置歷史和Redis的隊列中完全
刪除一切Sidekiq.redis {|c| c.flushdb }
這是一個核選項,它將刪除Redis數據庫中的所有內容,而不僅僅是Sidekiq統計信息。這意味着您將失去任何新的Sidekiq作業,任何會話以及您恰好在使用Redis的任何其他數據。 – 2017-09-27 16:26:41
感謝帕克,我在某件事情的中間,並沒有完成這個職位,但是,你是100%正確的。 – user1320651 2017-09-27 16:32:35
只是爲了補充所有很好的答案,重新使用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
這樣做的竅門,謝謝! – Joe 2015-04-30 00:02:57
API已經更新,現在接受你想重置的統計信息[source](https://github.com/mperham/sidekiq/blob/v4.0.1/lib/sidekiq/api.rb#L95)。所以你現在可以清除特定的統計信息'Sidekiq :: Stats.new.reset('failed')'或者多個統計信息'Sidekiq :: Stats.new.reset('failed','processed')'。 – tmr08c 2015-12-30 20:58:03
這似乎是更受歡迎的解決方案,IMO應該是選定的答案 – Ben 2018-02-01 03:50:10