Class: Karafka::Web::Ui::Controllers::DashboardController

Inherits:
BaseController
  • Object
show all
Defined in:
lib/karafka/web/ui/controllers/dashboard_controller.rb

Overview

Main Karafka Pro Web-Ui dashboard controller

Constant Summary

Constants inherited from BaseController

BaseController::Models

Instance Method Summary collapse

Methods inherited from BaseController

#initialize

Constructor Details

This class inherits a constructor from Karafka::Web::Ui::Controllers::BaseController

Instance Method Details

#indexObject

View with statistics dashboard details

[View source]

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
# File 'lib/karafka/web/ui/controllers/dashboard_controller.rb', line 10

def index
  @current_state = Models::ConsumersState.current!
  @counters = Models::Counters.new(@current_state)

  current_metrics = Models::ConsumersMetrics.current!

  # Build the charts data using the aggregated metrics
  @aggregated = Models::Metrics::Aggregated.new(
    current_metrics.to_h.fetch(:aggregated)
  )

  # Load only historicals for the selected range
  @aggregated_charts = Models::Metrics::Charts::Aggregated.new(
    @aggregated, @params.current_range
  )

  @topics = Models::Metrics::Topics.new(
    current_metrics.to_h.fetch(:consumer_groups)
  )

  @topics_charts = Models::Metrics::Charts::Topics.new(
    @topics, @params.current_range
  )

  render
end