Merge branch 'sh-make-unicorn-work-rbtrace' into 'master'
Make rbtrace work under unicorn See merge request gitlab-org/gitlab-ce!20892
This commit is contained in:
commit
0a40035c07
4 changed files with 12 additions and 4 deletions
|
@ -1,3 +0,0 @@
|
||||||
# frozen_string_literal: true
|
|
||||||
|
|
||||||
require 'rbtrace' if ENV['ENABLE_RBTRACE']
|
|
|
@ -8,6 +8,8 @@ Sidekiq.default_worker_options = { retry: 3 }
|
||||||
enable_json_logs = Gitlab.config.sidekiq.log_format == 'json'
|
enable_json_logs = Gitlab.config.sidekiq.log_format == 'json'
|
||||||
|
|
||||||
Sidekiq.configure_server do |config|
|
Sidekiq.configure_server do |config|
|
||||||
|
require 'rbtrace' if ENV['ENABLE_RBTRACE']
|
||||||
|
|
||||||
config.redis = queues_config_hash
|
config.redis = queues_config_hash
|
||||||
|
|
||||||
config.server_middleware do |chain|
|
config.server_middleware do |chain|
|
||||||
|
|
|
@ -124,6 +124,10 @@ before_fork do |server, worker|
|
||||||
end
|
end
|
||||||
|
|
||||||
after_fork do |server, worker|
|
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
|
# per-process listener ports for debugging/admin/migrations
|
||||||
# addr = "127.0.0.1:#{9293 + worker.nr}"
|
# addr = "127.0.0.1:#{9293 + worker.nr}"
|
||||||
# server.listen(addr, :tries => -1, :delay => 5, :tcp_nopush => true)
|
# server.listen(addr, :tries => -1, :delay => 5, :tcp_nopush => true)
|
||||||
|
|
|
@ -77,7 +77,12 @@ and more. However, this is not enabled by default. To enable it, define the
|
||||||
gitlab_rails['env'] = {"ENABLE_RBTRACE" => "1"}
|
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
|
## Common Problems
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue