diff --git a/app/models/admin_dashboard_data.rb b/app/models/admin_dashboard_data.rb
index a1dfa5f78aa..abe94003dd6 100644
--- a/app/models/admin_dashboard_data.rb
+++ b/app/models/admin_dashboard_data.rb
@@ -37,7 +37,7 @@ class AdminDashboardData
ruby_version_check,
host_names_check,
gc_checks,
- sidekiq_check,
+ sidekiq_check || queue_size_check,
ram_check,
google_oauth2_config_check,
facebook_config_check,
@@ -109,6 +109,11 @@ class AdminDashboardData
I18n.t('dashboard.sidekiq_warning') if Jobs.queued > 0 and (last_job_performed_at.nil? or last_job_performed_at < 2.minutes.ago)
end
+ def queue_size_check
+ queue_size = Jobs.queued
+ I18n.t('dashboard.queue_size_warning', queue_size: queue_size) unless queue_size < 100_000
+ end
+
def ram_check
I18n.t('dashboard.memory_warning') if MemInfo.new.mem_total and MemInfo.new.mem_total < 1_000_000
end
diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml
index cb285896d9c..63034613e8a 100644
--- a/config/locales/server.en.yml
+++ b/config/locales/server.en.yml
@@ -703,6 +703,7 @@ en:
host_names_warning: "Your config/database.yml file is using the default localhost hostname. Update it to use your site's hostname."
gc_warning: 'Your server is using default ruby garbage collection parameters, which will not give you the best performance. Read this topic on performance tuning: Tuning Ruby and Rails for Discourse.'
sidekiq_warning: 'Sidekiq is not running. Many tasks, like sending emails, are executed asynchronously by sidekiq. Please ensure at least one sidekiq process is running. Learn about Sidekiq here.'
+ queue_size_warning: 'The number of queued jobs is %{queue_size}, which is high. This could indicate a problem with the Sidekiq process(es), or you may need to add more Sidekiq workers.'
memory_warning: 'Your server is running with less than 1 GB of total memory. At least 1 GB of memory is recommended.'
google_oauth2_config_warning: 'The server is configured to allow signup and log in with Google OAuth2 (enable_google_oauth2_logins), but the client id and client secret values are not set. Go to the Site Settings and update the settings. See this guide to learn more.'
facebook_config_warning: 'The server is configured to allow signup and log in with Facebook (enable_facebook_logins), but the app id and app secret values are not set. Go to the Site Settings and update the settings. See this guide to learn more.'