diff options
author | Rémy Coutable <remy@rymai.me> | 2018-07-30 18:28:37 +0000 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2018-07-30 18:28:37 +0000 |
commit | 0a40035c0762be80330a0155dc790d3fde90da68 (patch) | |
tree | ecfd8a787195f2cddcb4abc9d332c639e2cc3c74 | |
parent | cb2e07309b4e61501a44c3568155bdb73252338f (diff) | |
parent | 37748e44f7d1eec0b280d1f6aa15b2282a12dec4 (diff) | |
download | gitlab-ce-0a40035c0762be80330a0155dc790d3fde90da68.tar.gz |
Merge branch 'sh-make-unicorn-work-rbtrace' into 'master'
Make rbtrace work under unicorn
See merge request gitlab-org/gitlab-ce!20892
-rw-r--r-- | config/initializers/rbtrace.rb | 3 | ||||
-rw-r--r-- | config/initializers/sidekiq.rb | 2 | ||||
-rw-r--r-- | config/unicorn.rb.example | 4 | ||||
-rw-r--r-- | doc/administration/troubleshooting/debug.md | 7 |
4 files changed, 12 insertions, 4 deletions
diff --git a/config/initializers/rbtrace.rb b/config/initializers/rbtrace.rb deleted file mode 100644 index 3a076c99ad0..00000000000 --- a/config/initializers/rbtrace.rb +++ /dev/null @@ -1,3 +0,0 @@ -# frozen_string_literal: true - -require 'rbtrace' if ENV['ENABLE_RBTRACE'] diff --git a/config/initializers/sidekiq.rb b/config/initializers/sidekiq.rb index f6803eb0b5a..6f54bee4713 100644 --- a/config/initializers/sidekiq.rb +++ b/config/initializers/sidekiq.rb @@ -8,6 +8,8 @@ Sidekiq.default_worker_options = { retry: 3 } enable_json_logs = Gitlab.config.sidekiq.log_format == 'json' Sidekiq.configure_server do |config| + require 'rbtrace' if ENV['ENABLE_RBTRACE'] + config.redis = queues_config_hash config.server_middleware do |chain| diff --git a/config/unicorn.rb.example b/config/unicorn.rb.example index 220a0191160..8f2d842e5b6 100644 --- a/config/unicorn.rb.example +++ b/config/unicorn.rb.example @@ -124,6 +124,10 @@ before_fork do |server, worker| end after_fork do |server, worker| + # Unicorn clears out signals before it forks, so rbtrace won't work + # unless it is enabled after the fork. + require 'rbtrace' if ENV['ENABLE_RBTRACE'] + # per-process listener ports for debugging/admin/migrations # addr = "127.0.0.1:#{9293 + worker.nr}" # server.listen(addr, :tries => -1, :delay => 5, :tcp_nopush => true) diff --git a/doc/administration/troubleshooting/debug.md b/doc/administration/troubleshooting/debug.md index 7ae4f7c1515..2902af8c782 100644 --- a/doc/administration/troubleshooting/debug.md +++ b/doc/administration/troubleshooting/debug.md @@ -77,7 +77,12 @@ and more. However, this is not enabled by default. To enable it, define the gitlab_rails['env'] = {"ENABLE_RBTRACE" => "1"} ``` -Then reconfigure the system and restart Unicorn and Sidekiq. +Then reconfigure the system and restart Unicorn and Sidekiq. To run this +in Omnibus, run as root: + +```ruby +/opt/gitlab/embedded/bin/ruby /opt/gitlab/embedded/bin/rbtrace +``` ## Common Problems |