Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2016-06-14 17:49:26 +0300
committerSean McGivern <sean@gitlab.com>2016-06-14 18:41:17 +0300
commit3582c6aedcee14162217cd103092e6340a1c4741 (patch)
tree000c87a76cc6ef6ac8911207121bfa54788998e5 /config
parentab3fb00c429133ac4aa98887314dba3a167b919c (diff)
Track new Redis connections
Increment the counter `new_redis_connections` on each call to `Redis::Client#connect`, if we're in a transaction.
Diffstat (limited to 'config')
-rw-r--r--config/initializers/metrics.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/config/initializers/metrics.rb b/config/initializers/metrics.rb
index f6509ee43f1..4bc6acdedb9 100644
--- a/config/initializers/metrics.rb
+++ b/config/initializers/metrics.rb
@@ -138,4 +138,20 @@ if Gitlab::Metrics.enabled?
GC::Profiler.enable
Gitlab::Metrics::Sampler.new.start
+
+ module TrackNewRedisConnections
+ def connect(*args)
+ val = super
+
+ if current_transaction = Gitlab::Metrics::Transaction.current
+ current_transaction.increment(:new_redis_connections, 1)
+ end
+
+ val
+ end
+ end
+
+ class ::Redis::Client
+ prepend TrackNewRedisConnections
+ end
end