From 23bcbf04c875ac31e6a04453931d5173c56d5efa Mon Sep 17 00:00:00 2001 From: Stan Hu Date: Thu, 15 Nov 2018 06:33:23 -0800 Subject: [PATCH] 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 --- .../admin/background_jobs_controller.rb | 5 --- .../admin/background_jobs/show.html.haml | 38 ------------------- .../sh-remove-local-sidekiq-admin-check.yml | 5 +++ 3 files changed, 5 insertions(+), 43 deletions(-) create mode 100644 changelogs/unreleased/sh-remove-local-sidekiq-admin-check.yml 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