summaryrefslogtreecommitdiff
path: root/app/controllers/metrics_controller.rb
blob: 37587a52eafa6326052ae4f0d4343b0bdeecb010 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class MetricsController < ActionController::Base
  include RequiresWhitelistedMonitoringClient

  protect_from_forgery with: :exception

  before_action :validate_prometheus_metrics

  def index
    render text: metrics_service.metrics_text, content_type: 'text/plain; version=0.0.4'
  end

  private

  def metrics_service
    @metrics_service ||= MetricsService.new
  end

  def validate_prometheus_metrics
    render_404 unless Gitlab::Metrics.prometheus_metrics_enabled?
  end
end