こんにちは。
約4年間、2つのコンテナ、マルチドメインのDiscourseサーバーを運用しており、約20のドメインをホストしています。定期的なアップデートは成功裏に行ってきました。しかし、10月初旬(10月8〜10日頃)に、おそらくDiscourseのアップデート後に、サインアップメールが送信されなくなったことに気づきました。sidekiqタスクが実行されず、Sidekiqが再起動し続けていることがわかりました。
通常の移行との唯一の違いは、今回はすべてのPostgresデータベースを手動で変更して最新のvector拡張機能を有効にする必要があったことです。アップグレードスクリプトは、メインのdiscourseデータベースに対してのみ行うようです。
症状:
-
ログには、Sidekiqが数秒ごとに再起動していることが表示されます。
-
再起動は、次のエラーメッセージに関連しています。
/var/www/discourse/lib/demon/sidekiq.rb:31:in `heartbeat_check' config/unicorn.conf.rb:131:in `block (2 levels) in reload' E, [2025-11-01T11:56:05.989645 #67] ERROR -- : reaped #<Process::Status: pid 6534 SIGKILL (signal 9)> worker=unknown I, [2025-11-01T11:56:41.468169 #7038] INFO -- : Loading Sidekiq in process id 7038 W, [2025-11-01T11:57:20.944092 #67] WARN -- : Process would not terminate cleanly, force quitting. pid: 7038 Demon::Sidekiq /var/www/discourse/lib/demon/base.rb:94:in `restart' /var/www/discourse/lib/demon/sidekiq.rb:40:in `block in heartbeat_check' /var/www/discourse/lib/demon/sidekiq.rb:31:in `each' /var/www/discourse/lib/demon/sidekiq.rb:31:in `heartbeat_check' -
「sidekiqビュー」はジョブを処理していないようです。
-
UIには、sidekiqが正常に実行されていないことを示す警告が表示されます。「更新のチェックが実行されていません。Sidekiqが実行されていることを確認してください。」
試したこと:
-
再構築(エラーなし)
-
Redisキューのフラッシュ(機能する。Sidekiqダッシュボードはゼロに戻るが、タスクはまだ処理されない)
-
データコンテナ内のredisバージョンを確認(redisバージョン:7.0.15)
-
Sidekiqが一時停止しているか確認(一時停止していない)
-
shared/web-only/logのログをざっと確認したが、関連するものは見つからなかった。(追加のポインターがあれば歓迎!) -
web_only.ymlでDISCOURSE_LOG_SIDEKIQ: 1を設定し、./launcher stop web_only && ./launcher destroy web_only && ./launcher start web_onlyを実行してSidekiqログを有効にしようとした。ログには次のような成功メッセージのみが表示される。{"hostname":"forum-web-only","pid":12961,"database":"chatonnade","job_id":null,"job_name":"Jobs::DiscourseAutomation::StalledWikiTracker","job_type":"scheduled","opts":"{}","status":"success","live_slots_start":1298445,"duration":0.04405494895763695,"sql_duration":0.03392060892656446,"sql_calls":1,"redis_duration":0,"redis_calls":0,"net_duration":0,"net_calls":0,"live_slots_finish":1299663,"live_slots":1218,"@timestamp":"2025-11-01T12:17:32.561+00:00"}問題の特定に役立つアイデアが尽きてきました。意味のあるエラーメッセージはどこで探せばよいでしょうか?
よろしくお願いします!

