From 204af2e1019e661fddc451ad0cfb982453d4085b Mon Sep 17 00:00:00 2001 From: Stan Hu Date: Tue, 8 May 2018 22:29:30 -0700 Subject: Support resetting of Prometheus metrics between test runs Adding the :prometheus tag to an rspec test will clear out memory-mapped files and reset the registry. Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/39968 --- lib/gitlab/metrics/prometheus.rb | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'lib/gitlab/metrics') diff --git a/lib/gitlab/metrics/prometheus.rb b/lib/gitlab/metrics/prometheus.rb index d12ba0ec176..d41a855bff1 100644 --- a/lib/gitlab/metrics/prometheus.rb +++ b/lib/gitlab/metrics/prometheus.rb @@ -25,6 +25,14 @@ module Gitlab end end + def reset_registry! + clear_memoization(:registry) + + REGISTRY_MUTEX.synchronize do + ::Prometheus::Client.reset! + end + end + def registry strong_memoize(:registry) do REGISTRY_MUTEX.synchronize do -- cgit v1.2.1