mirror of
https://github.com/mperham/sidekiq.git
synced 2022-11-09 13:52:34 -05:00
Transition more of the web to use the API, add enqueued_at to the Job view
This commit is contained in:
parent
d5f8b45957
commit
f900c2a098
4 changed files with 23 additions and 14 deletions
|
@ -93,6 +93,10 @@ module Sidekiq
|
||||||
class Queue
|
class Queue
|
||||||
include Enumerable
|
include Enumerable
|
||||||
|
|
||||||
|
def self.all
|
||||||
|
Sidekiq.redis {|c| c.smembers('queues') }.map {|q| Sidekiq::Queue.new(q) }
|
||||||
|
end
|
||||||
|
|
||||||
attr_reader :name
|
attr_reader :name
|
||||||
|
|
||||||
def initialize(name="default")
|
def initialize(name="default")
|
||||||
|
@ -171,7 +175,7 @@ module Sidekiq
|
||||||
end
|
end
|
||||||
|
|
||||||
def enqueued_at
|
def enqueued_at
|
||||||
Time.at(@item['enqueued_at'])
|
Time.at(@item['enqueued_at'] || 0)
|
||||||
end
|
end
|
||||||
|
|
||||||
def queue
|
def queue
|
||||||
|
|
|
@ -41,9 +41,7 @@ module Sidekiq
|
||||||
def reset_worker_list
|
def reset_worker_list
|
||||||
Sidekiq.redis do |conn|
|
Sidekiq.redis do |conn|
|
||||||
workers = conn.smembers('workers')
|
workers = conn.smembers('workers')
|
||||||
workers.each do |name|
|
conn.srem('workers', *workers)
|
||||||
conn.srem('workers', name)
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -104,13 +102,16 @@ module Sidekiq
|
||||||
end
|
end
|
||||||
|
|
||||||
def display_args(args, count=100)
|
def display_args(args, count=100)
|
||||||
args.map { |arg| a = arg.inspect; a.size > count ? "#{a[0..count]}..." : a }.join(", ")
|
args.map do |arg|
|
||||||
|
a = arg.inspect
|
||||||
|
a.size > count ? "#{a[0..count]}..." : a
|
||||||
|
end.join(", ")
|
||||||
end
|
end
|
||||||
|
|
||||||
RETRY_JOB_KEYS = Set.new(%w(
|
RETRY_JOB_KEYS = Set.new(%w(
|
||||||
queue class args retry_count retried_at failed_at
|
queue class args retry_count retried_at failed_at
|
||||||
jid error_message error_class backtrace
|
jid error_message error_class backtrace
|
||||||
error_backtrace enqueued_at
|
error_backtrace enqueued_at retry
|
||||||
))
|
))
|
||||||
|
|
||||||
def retry_extra_items(retry_job)
|
def retry_extra_items(retry_job)
|
||||||
|
@ -158,7 +159,7 @@ module Sidekiq
|
||||||
end
|
end
|
||||||
|
|
||||||
get "/queues" do
|
get "/queues" do
|
||||||
@queues = Sidekiq::Stats.new.queues
|
@queues = Sidekiq::Queue.all
|
||||||
slim :queues
|
slim :queues
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -5,11 +5,11 @@ table class="queues table table-hover table-bordered table-striped table-white"
|
||||||
th = t('Queue')
|
th = t('Queue')
|
||||||
th = t('Size')
|
th = t('Size')
|
||||||
th = t('Actions')
|
th = t('Actions')
|
||||||
- @queues.each do |queue, size|
|
- @queues.each do |queue|
|
||||||
tr
|
tr
|
||||||
td
|
td
|
||||||
a href="#{root_path}queues/#{queue}" #{queue}
|
a href="#{root_path}queues/#{queue.name}" #{queue.name}
|
||||||
td= number_with_delimiter(size)
|
td= number_with_delimiter(queue.size)
|
||||||
td width="20%"
|
td width="20%"
|
||||||
form action="#{root_path}queues/#{queue}" method="post"
|
form action="#{root_path}queues/#{queue.name}" method="post"
|
||||||
input.btn.btn-danger.btn-small type="submit" name="delete" value="#{t('Delete')}" data-confirm="#{t('AreYouSureDeleteQueue', :queue => queue)}"
|
input.btn.btn-danger.btn-small type="submit" name="delete" value="#{t('Delete')}" data-confirm="#{t('AreYouSureDeleteQueue', :queue => queue.name)}"
|
||||||
|
|
|
@ -19,11 +19,15 @@ table class="retry table table-bordered table-striped"
|
||||||
th JID
|
th JID
|
||||||
td
|
td
|
||||||
code= @retry.jid
|
code= @retry.jid
|
||||||
|
tr
|
||||||
|
th = t('Enqueued')
|
||||||
|
td== relative_time(@retry.enqueued_at)
|
||||||
- unless retry_extra_items(@retry).empty?
|
- unless retry_extra_items(@retry).empty?
|
||||||
tr
|
tr
|
||||||
th = t('Extras')
|
th = t('Extras')
|
||||||
td
|
td
|
||||||
code= display_args(retry_extra_items(@retry), 1000)
|
code
|
||||||
|
= retry_extra_items(@retry).inspect
|
||||||
- if @retry['retry_count'] > 0
|
- if @retry['retry_count'] > 0
|
||||||
tr
|
tr
|
||||||
th = t('RetryCount')
|
th = t('RetryCount')
|
||||||
|
@ -37,7 +41,7 @@ table class="retry table table-bordered table-striped"
|
||||||
td== relative_time(@retry['failed_at'].is_a?(Numeric) ? Time.at(@retry['failed_at']) : Time.parse(@retry['failed_at']))
|
td== relative_time(@retry['failed_at'].is_a?(Numeric) ? Time.at(@retry['failed_at']) : Time.parse(@retry['failed_at']))
|
||||||
tr
|
tr
|
||||||
th = t('NextRetry')
|
th = t('NextRetry')
|
||||||
td== relative_time(Time.at(@retry.score))
|
td== relative_time(@retry.at)
|
||||||
|
|
||||||
h3 = t('Error')
|
h3 = t('Error')
|
||||||
table class="error table table-bordered table-striped"
|
table class="error table table-bordered table-striped"
|
||||||
|
|
Loading…
Add table
Reference in a new issue