Class: RailsPulse::Jobs::Charts::ExecutionVolume
- Inherits:
-
Charts::Base
- Object
- Charts::Base
- RailsPulse::Jobs::Charts::ExecutionVolume
- Defined in:
- app/models/rails_pulse/jobs/charts/execution_volume.rb
Instance Method Summary collapse
Methods inherited from Charts::Base
Constructor Details
This class inherits a constructor from RailsPulse::Charts::Base
Instance Method Details
#to_chart_data ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'app/models/rails_pulse/jobs/charts/execution_volume.rb', line 5 def to_chart_data summaries = base_summary_query # Group by period_start and sum execution counts summaries = summaries .group(:period_start) .select( :period_start, "SUM(rails_pulse_summaries.count) as total_count" ) # Build raw_data hash from grouped results raw_data = {} summaries.each do |summary| = summary.period_start.to_i raw_data[] = summary.total_count || 0 end # Pad missing data with zeros using base class helper daily_data = pad_data_with_zeros(raw_data, @start_time, @end_time, time_step) # Build labels array (timestamps in milliseconds for JavaScript) labels = daily_data.keys.map { || * 1000 } # Build series data series = [ { name: "Executions", data: daily_data.values, type: "bar", color: RailsPulse::ChartColors::DEFAULT } ] { labels: labels, series: series } end |