summaryrefslogtreecommitdiff
path: root/config/initializers/7_prometheus_metrics.rb
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2019-10-04 06:06:05 +0000
committerGitLab Bot <gitlab-bot@gitlab.com>2019-10-04 06:06:05 +0000
commit535d167d40638105527bc6c9a86f33d2ffd62743 (patch)
tree27c73f33497378f6bb84840223ce7d3fda42cc0a /config/initializers/7_prometheus_metrics.rb
parentbee11af56deccfd13243cf5f31d42bd992404066 (diff)
downloadgitlab-ce-535d167d40638105527bc6c9a86f33d2ffd62743.tar.gz
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'config/initializers/7_prometheus_metrics.rb')
-rw-r--r--config/initializers/7_prometheus_metrics.rb23
1 files changed, 22 insertions, 1 deletions
diff --git a/config/initializers/7_prometheus_metrics.rb b/config/initializers/7_prometheus_metrics.rb
index c55c14497b4..c5cd055f4ff 100644
--- a/config/initializers/7_prometheus_metrics.rb
+++ b/config/initializers/7_prometheus_metrics.rb
@@ -35,7 +35,7 @@ Sidekiq.configure_server do |config|
# webserver metrics are cleaned up in config.ru: `warmup` block
Prometheus::CleanupMultiprocDirService.new.execute
- Gitlab::Metrics::SidekiqMetricsExporter.instance.start
+ Gitlab::Metrics::Exporter::SidekiqExporter.instance.start
end
end
@@ -58,3 +58,24 @@ if !Rails.env.test? && Gitlab::Metrics.prometheus_metrics_enabled?
Gitlab::Metrics::RequestsRackMiddleware.initialize_http_request_duration_seconds
end
end
+
+if defined?(::Unicorn) || defined?(::Puma)
+ Gitlab::Cluster::LifecycleEvents.on_master_start do
+ Gitlab::Metrics::Exporter::WebExporter.instance.start
+ end
+
+ Gitlab::Cluster::LifecycleEvents.on_before_master_restart do
+ # We need to ensure that before we re-exec server
+ # we do stop the exporter
+ Gitlab::Metrics::Exporter::WebExporter.instance.stop
+ end
+
+ Gitlab::Cluster::LifecycleEvents.on_worker_start do
+ # The `#close_on_exec=` takes effect only on `execve`
+ # but this does not happen for Ruby fork
+ #
+ # This does stop server, as it is running on master.
+ # However, ensures that we close the TCPSocket.
+ Gitlab::Metrics::Exporter::WebExporter.instance.stop
+ end
+end