diff options
author | Stan Hu <stanhu@gmail.com> | 2018-11-15 06:33:23 -0800 |
---|---|---|
committer | Stan Hu <stanhu@gmail.com> | 2018-11-15 06:37:12 -0800 |
commit | 23bcbf04c875ac31e6a04453931d5173c56d5efa (patch) | |
tree | 30b4fae00c4498222d3bf56eb3beeaf56919ed2e | |
parent | bf31bd0d82affc29963d7d15c850ae0a0cc362a3 (diff) | |
download | gitlab-ce-23bcbf04c875ac31e6a04453931d5173c56d5efa.tar.gz |
Remove display of local Sidekiq process in /admin/sidekiq
In a cloud-native or high-availability configuration, Sidekiq may not
be running on the same node as the Web worker. The output of the `ps`
output does not work in this case and can mislead admins that
Sidekiq isn't running. Remove it in favor of the Sidekiq dashboard,
which shows local processes using the Redis information.
Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/46133
-rw-r--r-- | app/controllers/admin/background_jobs_controller.rb | 5 | ||||
-rw-r--r-- | app/views/admin/background_jobs/show.html.haml | 38 | ||||
-rw-r--r-- | changelogs/unreleased/sh-remove-local-sidekiq-admin-check.yml | 5 |
3 files changed, 5 insertions, 43 deletions
diff --git a/app/controllers/admin/background_jobs_controller.rb b/app/controllers/admin/background_jobs_controller.rb index 7701f2e645b..fc877142418 100644 --- a/app/controllers/admin/background_jobs_controller.rb +++ b/app/controllers/admin/background_jobs_controller.rb @@ -1,9 +1,4 @@ # frozen_string_literal: true class Admin::BackgroundJobsController < Admin::ApplicationController - def show - ps_output, _ = Gitlab::Popen.popen(%W(ps ww -U #{Gitlab.config.gitlab.user} -o pid,pcpu,pmem,stat,start,command)) - @sidekiq_processes = ps_output.split("\n").grep(/sidekiq \d+\.\d+\.\d+/) - @concurrency = Sidekiq.options[:concurrency] - end end diff --git a/app/views/admin/background_jobs/show.html.haml b/app/views/admin/background_jobs/show.html.haml index 9aa705d9fa6..a0a00ac5d96 100644 --- a/app/views/admin/background_jobs/show.html.haml +++ b/app/views/admin/background_jobs/show.html.haml @@ -6,43 +6,5 @@ %p.light GitLab uses #{link_to "sidekiq", "http://sidekiq.org/"} library for async job processing %hr - - .card - .card-header Sidekiq running processes - .card-body - - if @sidekiq_processes.empty? - %h4.cred - %i.fa.fa-exclamation-triangle - There are no running sidekiq processes. Please restart GitLab - - else - .table-holder - %table.table - %thead - %th USER - %th PID - %th CPU - %th MEM - %th STATE - %th START - %th COMMAND - %tbody - - @sidekiq_processes.each do |process| - %tr - %td= gitlab_config.user - - parse_sidekiq_ps(process).each do |value| - %td= value - .clearfix - %p - %i.fa.fa-exclamation-circle - If '[#{@concurrency} of #{@concurrency} busy]' is shown, restart GitLab. - = link_to sprite_icon('question', size: 16), help_page_path('administration/restart_gitlab') - - %p - %i.fa.fa-exclamation-circle - If more than one sidekiq process is listed, stop GitLab, kill the remaining sidekiq processes (sudo pkill -u #{gitlab_config.user} -f sidekiq) and restart GitLab. - = link_to sprite_icon('question', size: 16), help_page_path('administration/restart_gitlab') - - - .card %iframe{ src: sidekiq_path, width: '100%', height: 970, style: "border: 0" } diff --git a/changelogs/unreleased/sh-remove-local-sidekiq-admin-check.yml b/changelogs/unreleased/sh-remove-local-sidekiq-admin-check.yml new file mode 100644 index 00000000000..3ec15908fc7 --- /dev/null +++ b/changelogs/unreleased/sh-remove-local-sidekiq-admin-check.yml @@ -0,0 +1,5 @@ +--- +title: Remove display of local Sidekiq process in /admin/sidekiq +merge_request: 23118 +author: +type: fixed |