diff options
Diffstat (limited to 'lib/gitlab/usage/metrics/instrumentations/prometheus_metric.rb')
-rw-r--r-- | lib/gitlab/usage/metrics/instrumentations/prometheus_metric.rb | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/lib/gitlab/usage/metrics/instrumentations/prometheus_metric.rb b/lib/gitlab/usage/metrics/instrumentations/prometheus_metric.rb new file mode 100644 index 00000000000..ab1298b63c3 --- /dev/null +++ b/lib/gitlab/usage/metrics/instrumentations/prometheus_metric.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +module Gitlab + module Usage + module Metrics + module Instrumentations + class PrometheusMetric < GenericMetric + # Usage example + # + # class GitalyApdexMetric < PrometheusMetric + # value do + # result = client.query('avg_over_time(gitlab_usage_ping:gitaly_apdex:ratio_avg_over_time_5m[1w])').first + # + # break FALLBACK unless result + # + # result['value'].last.to_f + # end + # end + def value + with_prometheus_client(verify: false, fallback: FALLBACK) do |client| + super(client) + end + end + end + end + end + end +end |