summaryrefslogtreecommitdiff
path: root/config/initializers
diff options
context:
space:
mode:
authorJan Provaznik <jprovaznik@gitlab.com>2019-07-01 15:32:19 +0000
committerKamil TrzciƄski <ayufan@ayufan.eu>2019-07-01 15:32:19 +0000
commit606261e8e7d6d7879a2b88c3c217df08b063c9fc (patch)
treec1a6dd029360ea2d8c2dd3225ce26beccaf6caf5 /config/initializers
parent59963779362b00723d79ae6190689ad0fccf729e (diff)
downloadgitlab-ce-606261e8e7d6d7879a2b88c3c217df08b063c9fc.tar.gz
Run do_master_restart callback on server start
We want to call master_restart callback on start too - this callback is used for cleaning up prometheus files. It has been added to Omnibus already: https://gitlab.com/gitlab-org/omnibus-gitlab/merge_requests/3350 So make sure that Unicorn example configs are up-to-date and that the same callback is called for Puma too.
Diffstat (limited to 'config/initializers')
-rw-r--r--config/initializers/7_prometheus_metrics.rb15
1 files changed, 11 insertions, 4 deletions
diff --git a/config/initializers/7_prometheus_metrics.rb b/config/initializers/7_prometheus_metrics.rb
index 68f8487d377..54cdefc2a10 100644
--- a/config/initializers/7_prometheus_metrics.rb
+++ b/config/initializers/7_prometheus_metrics.rb
@@ -43,14 +43,21 @@ if !Rails.env.test? && Gitlab::Metrics.prometheus_metrics_enabled?
end
end
-Gitlab::Cluster::LifecycleEvents.on_master_restart do
+def cleanup_prometheus_multiproc_dir
# The following is necessary to ensure stale Prometheus metrics don't
# accumulate over time. It needs to be done in this hook as opposed to
# inside an init script to ensure metrics files aren't deleted after new
# unicorn workers start after a SIGUSR2 is received.
- prometheus_multiproc_dir = ENV['prometheus_multiproc_dir']
- if prometheus_multiproc_dir
- old_metrics = Dir[File.join(prometheus_multiproc_dir, '*.db')]
+ if dir = ::Prometheus::Client.configuration.multiprocess_files_dir
+ old_metrics = Dir[File.join(dir, '*.db')]
FileUtils.rm_rf(old_metrics)
end
end
+
+Gitlab::Cluster::LifecycleEvents.on_master_start do
+ cleanup_prometheus_multiproc_dir
+end
+
+Gitlab::Cluster::LifecycleEvents.on_master_restart do
+ cleanup_prometheus_multiproc_dir
+end