Class: Pgbus::Api::InsightsController

Inherits:
Pgbus::ApplicationController show all
Defined in:
app/controllers/pgbus/api/insights_controller.rb

Instance Method Summary collapse

Methods inherited from Pgbus::ApplicationController

#pgbus

Instance Method Details

#showObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'app/controllers/pgbus/api/insights_controller.rb', line 6

def show
  minutes = insights_minutes
  payload = {
    summary: data_source.job_stats_summary(minutes: minutes),
    throughput: data_source.job_throughput(minutes: minutes),
    status_counts: data_source.job_status_counts(minutes: minutes),
    slowest: data_source.slowest_job_classes(minutes: minutes)
  }
  if Pgbus::JobStat.latency_columns?
    payload[:latency_trend] = data_source.latency_trend(minutes: minutes)
    payload[:latency_by_queue] = data_source.latency_by_queue(minutes: minutes)
  end
  render json: payload
end