# Sidekiq가 계속 재시작되는 문제, 어떻게 해결할 수 있을까요?

**URL:** https://meta.discourse.org/t/sidekiq-keeps-restarting-how-to-troubleshoot/387346
**Category:** Self-hosting
**Tags:** sidekiq
**Created:** [11월 1, 2025, 12:32오후 UTC](https://meta.discourse.org/t/sidekiq-keeps-restarting-how-to-troubleshoot/387346 "2025-11-01T12:32:40Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Padoup-Padoup](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/padoup-padoup/32/335841_2.png) [@Padoup-Padoup](https://meta.discourse.org/u/Padoup-Padoup)
#### Post date: [11월 1, 2025, 12:32오후 UTC](https://meta.discourse.org/t/sidekiq-keeps-restarting-how-to-troubleshoot/387346/1 "2025-11-01T12:32:40Z")

</div>

안녕하세요,

저희는 약 4년 동안 두 개의 컨테이너로 구성된 멀티 도메인 Discourse 서버를 운영해 왔으며, 약 20개의 도메인을 호스팅하고 있습니다. 그동안 정기적인 업데이트를 성공적으로 수행해 왔습니다. 그러나 10월 초(대략 10월 8일~10일경)부터, 아마도 Discourse 업데이트 이후에 가입 이메일이 전송되지 않는다는 사실을 알게 되었습니다. sidekiq 태스크가 실행되지 않고 있으며, Sidekiq가 계속 재시작되고 있다는 점도 확인했습니다.

정기적으로 수행하던 마이그레이션과의 유일한 차이점은, 이번에는 최신 `vector` 확장자를 활성화하기 위해 모든 Postgres 데이터베이스를 수동으로 수정해야 했다는 것입니다. 업그레이드 스크립트는 메인 `discourse` 데이터베이스에서만 이를 처리하는 것으로 보입니다.

**증상:**

1. 로그에 Sidekiq가 몇 초마다 재시작되는 것으로 나타납니다.

 ![Capture d’écran du 2025-11-01 13-19-14](https://global.discourse-cdn.com/meta/original/4X/e/0/c/e0cf7af657afde1ae270cdeb36c829428e099705.png)

1. 재시작은 다음과 같은 오류 메시지와 함께 발생합니다:

```plaintext
/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'

```

1. “sidekiq view”에서 작업이 처리되지 않는 것으로 보입니다.

 ![Capture d’écran du 2025-11-01 13-23-16](https://global.discourse-cdn.com/meta/original/4X/f/2/8/f284a98fbee4045c8d8e8a85faca153cbd90a4c7.png)

1. UI에서 Sidekiq가 제대로 실행되지 않는다는 몇 가지 경고가 표시됩니다: `A check for updates has not been performed. Ensure Sidekiq is running.`

저희가 시도해 본 내용은 다음과 같습니다:

- 재빌드 (오류 없음)
- Redis 큐 플러싱 (동작합니다. Sidekiq 대시보드가 0으로 돌아오지만 태스크는 여전히 처리되지 않음)
- 데이터 컨테이너의 [redis 버전](https://meta.discourse.org/t/sidekiq-heartbeat-test-failed-restarting/137496/4) 확인 (redis 버전: 7.0.15)
- [Sidekiq가 일시 정지되어 있는지 확인](https://meta.discourse.org/t/sidekiq-kicking-it/52390) (아님)
- `shared/web-only/log`의 로그를 훑어보았지만 관련 있는 내용을 찾지 못했습니다. **추가적인 힌트** 가 있다면 환영합니다!
- `web_only.yml`에서 `DISCOURSE_LOG_SIDEKIQ: 1`을 설정하고 `./launcher stop web_only && ./launcher destroy web_only && ./launcher start web_only`를 실행하여 Sidekiq 로그 활성화를 시도했습니다. 로그에는 다음과 같은 성공 메시지만 표시됩니다:

```plaintext
{"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"}

```

문제를 파악하기 위해 더 이상 아이디어가 떠오르지 않습니다. 의미 있는 오류 메시지를 어디서 찾을 수 있을까요?

감사합니다!

---

<div class="post-metadata">

### Author: ![RBoy](https://avatars.discourse-cdn.com/v4/letter/r/2bfe46/32.png) [@RBoy](https://meta.discourse.org/u/RBoy)
#### Post date: [12월 2, 2025, 3:29오후 UTC](https://meta.discourse.org/t/sidekiq-keeps-restarting-how-to-troubleshoot/387346/2 "2025-12-02T15:29:20Z")

</div>

저도 같은 현상을 확인했지만, 그다지 자주 일어나지는 않습니다. 수년 동안 문제없이 잘 작동해 왔는데, 최근에는 한 달에 한 번 정도 발생하는 걸 보고 있습니다. 지난 해에는 discourse 업그레이드에 맞춰 인스턴스의 RAM을 두 배로 늘리기도 했습니다.

```plaintext
Message

Sidekiq heartbeat test failed for 2087, restarting

Backtrace

/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:218:in `block in dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:217:in `map'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:217:in `dispatch'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/activesupport-8.0.4/lib/active_support/broadcast_logger.rb:129:in `warn'
/var/www/discourse/lib/demon/sidekiq.rb:39: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'
config/unicorn.conf.rb:131:in `block (2 levels) in reload'

```

---

<div class="post-metadata">

### Author: ![Padoup-Padoup](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/padoup-padoup/32/335841_2.png) [@Padoup-Padoup](https://meta.discourse.org/u/Padoup-Padoup)
#### Post date: [12월 6, 2025, 11:55오전 UTC](https://meta.discourse.org/t/sidekiq-keeps-restarting-how-to-troubleshoot/387346/3 "2025-12-06T11:55:09Z")

</div>

감사합니다! 몇 시간 동안 조사해 본 결과, 서버가 스트레스(입출력, CPU, RAM)를 받을 때 Sidekiq가 재시작되는 것 같지만, 더 명확하게 특정할 수는 없었습니다(로그 없음, OOM 없음).

재시작 빈도는 1분에 한 번에서 약 10분에 한 번(이로써 큐 처리가 가능해짐)으로, 그리고 그보다 더 낮은 빈도로 줄어들었습니다.
