Class: SolidQueueTui::Data::HourlyStatsQuery
- Inherits:
-
Object
- Object
- SolidQueueTui::Data::HourlyStatsQuery
- Defined in:
- lib/solid_queue_tui/data/hourly_stats_query.rb
Defined Under Namespace
Classes: Result
Class Method Summary collapse
- .empty_result ⇒ Object
- .enqueued_per_hour ⇒ Object
- .failed_per_hour ⇒ Object
- .processed_per_hour ⇒ Object
Class Method Details
.empty_result ⇒ Object
39 40 41 42 43 |
# File 'lib/solid_queue_tui/data/hourly_stats_query.rb', line 39 def self.empty_result now = Time.now.utc data = (0..23).map { |i| (now - (23 - i) * 3600).strftime("%H").to_i } Result.new(data: data.map { 0 }, total: 0, peak: 0, avg: 0) end |
.enqueued_per_hour ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/solid_queue_tui/data/hourly_stats_query.rb', line 8 def self.enqueued_per_hour raw = SolidQueue::Job .where(created_at: 24.hours.ago..) .group(hour_sql(:created_at)) .count build_result(raw) rescue => e empty_result end |
.failed_per_hour ⇒ Object
29 30 31 32 33 34 35 36 37 |
# File 'lib/solid_queue_tui/data/hourly_stats_query.rb', line 29 def self.failed_per_hour raw = SolidQueue::FailedExecution .where(created_at: 24.hours.ago..) .group(hour_sql(:created_at)) .count build_result(raw) rescue => e empty_result end |
.processed_per_hour ⇒ Object
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/solid_queue_tui/data/hourly_stats_query.rb', line 18 def self.processed_per_hour raw = SolidQueue::Job .where.not(finished_at: nil) .where(finished_at: 24.hours.ago..) .group(hour_sql(:finished_at)) .count build_result(raw) rescue => e empty_result end |