summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Provaznik <jprovaznik@gitlab.com>2019-07-01 09:45:53 +0200
committerJan Provaznik <jprovaznik@gitlab.com>2019-07-02 17:31:15 +0200
commita310f760927439357edac2897345cef19214e736 (patch)
tree18ce1edf07d04a0b44970c30e12e54cdcf12fd49
parent833c4b81a582c5ea067e1302ac80b4417c647d8c (diff)
downloadgitlab-ce-unicorn-sampler-fix.tar.gz
Start UnicornSampler in master processunicorn-sampler-fix
Using `on_master_start` assures that the sampler is started in master process and not in worker processes.
-rw-r--r--changelogs/unreleased/unicorn-sampler-fix.yml5
-rw-r--r--config/initializers/7_prometheus_metrics.rb10
2 files changed, 9 insertions, 6 deletions
diff --git a/changelogs/unreleased/unicorn-sampler-fix.yml b/changelogs/unreleased/unicorn-sampler-fix.yml
new file mode 100644
index 00000000000..3f0e509f15f
--- /dev/null
+++ b/changelogs/unreleased/unicorn-sampler-fix.yml
@@ -0,0 +1,5 @@
+---
+title: Make sure UnicornSampler is started only in master process.
+merge_request: 30215
+author:
+type: fixed
diff --git a/config/initializers/7_prometheus_metrics.rb b/config/initializers/7_prometheus_metrics.rb
index 54cdefc2a10..5db72141fcd 100644
--- a/config/initializers/7_prometheus_metrics.rb
+++ b/config/initializers/7_prometheus_metrics.rb
@@ -29,15 +29,13 @@ if !Rails.env.test? && Gitlab::Metrics.prometheus_metrics_enabled?
Gitlab::Cluster::LifecycleEvents.on_worker_start do
defined?(::Prometheus::Client.reinitialize_on_pid_change) && Prometheus::Client.reinitialize_on_pid_change
- if defined?(::Unicorn)
- Gitlab::Metrics::Samplers::UnicornSampler.initialize_instance(Settings.monitoring.unicorn_sampler_interval).start
- end
-
Gitlab::Metrics::Samplers::RubySampler.initialize_instance(Settings.monitoring.ruby_sampler_interval).start
end
- if defined?(::Puma)
- Gitlab::Cluster::LifecycleEvents.on_master_start do
+ Gitlab::Cluster::LifecycleEvents.on_master_start do
+ if defined?(::Unicorn)
+ Gitlab::Metrics::Samplers::UnicornSampler.initialize_instance(Settings.monitoring.unicorn_sampler_interval).start
+ elsif defined?(::Puma)
Gitlab::Metrics::Samplers::PumaSampler.initialize_instance(Settings.monitoring.puma_sampler_interval).start
end
end