summaryrefslogtreecommitdiff
path: root/lib/gitlab/prometheus/queries/base_query.rb
blob: 2a2eb4ae57fbcfa1fe5fe6a6c4bb684979a4a9ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
module Gitlab
  module Prometheus
    module Queries
      class BaseQuery
        attr_accessor :client
        delegate :query_range, :query, to: :client, prefix: true

        def raw_memory_usage_query(environment_slug)
          %{avg(container_memory_usage_bytes{container_name!="POD",environment="#{environment_slug}"}) / 2^20}
        end

        def raw_cpu_usage_query(environment_slug)
          %{avg(rate(container_cpu_usage_seconds_total{container_name!="POD",environment="#{environment_slug}"}[2m])) * 100}
        end

        def initialize(client)
          @client = client
        end

        def query(*args)
          raise NotImplementedError
        end
      end
    end
  end
end