Canapin
(Coin-coin le Canapin)
1
대시보드에서 다음 메시지를 받았습니다:
실패한 이메일 작업이 95개 있습니다. app.yml 파일을 확인하고 메일 서버 설정이 올바른지 확인하십시오.
해당 사이트는 discourse.diy 도메인에서 SMTP 없이 설치되었습니다.
Sidekiq에는 다음과 같이 표시됩니다:
| 다음 재시도 |
재시도 횟수 |
큐 |
작업 |
인자 |
오류 |
| 지금 |
0 |
default |
Jobs::CallDiscourseHub |
{} |
Jobs::HandledExceptionWrapper: Wrapped TypeError: Unsupported command argument type: TrueClass |
| 2분 후 |
5 |
low |
Jobs::UserEmail |
{“type”=>“digest”,“user_id”=>2,“current_site_id”=>“default”} |
Jobs::HandledExceptionWrapper: Wrapped ArgumentError: :arguments expected to be an Array of individual string args |
| 3분 후 |
7 |
low |
Jobs::UserEmail |
{“type”=>“digest”,“user_id”=>2,“current_site_id”=>“default”} |
Jobs::HandledExceptionWrapper: Wrapped ArgumentError: :arguments expected to be an Array of individual string args |
| 9분 후 |
9 |
low |
Jobs::UserEmail |
{“type”=>“digest”,“user_id”=>2,“current_site_id”=>“default”} |
Jobs::HandledExceptionWrapper: Wrapped ArgumentError: :arguments expected to be an Array of individual string args |
| 12분 후 |
12 |
low |
Jobs::UserEmail |
{“type”=>“digest”,“user_id”=>2,“current_site_id”=>“default”} |
Jobs::HandledExceptionWrapper: Wrapped ArgumentError: :arguments expected to be an Array of individual string args |
| 15분 후 |
13 |
low |
Jobs::UserEmail |
{“type”=>“digest”,“user_id”=>2,“current_site_id”=>“default”} |
Jobs::HandledExceptionWrapper: Wrapped ArgumentError: :arguments expected to be an Array of individual string args |
| … |
… |
… |
… |
… |
… |
사이트는 2026.1.0-latest (0caa6e34fe) 버전을 사용하고 있습니다.
이것이 정상적인가요?
pmusaraj
(Penar Musaraj)
2
게시해 주셔서 감사합니다!
해당 이메일이 작동하지 않는 것은 예상되는 현상이지만, 현재 확인되고 있는 에러는 다소 이례적입니다. 설정 환경의 다른 요인 때문일 수 있습니다.
테스트용 셀프호스트 인스턴스에서 초대장을 보내려고 하면 다음과 같은 에러가 표시됩니다:
Jobs::HandledExceptionWrapper: Wrapped Socket::ResolutionError: getaddrinfo: No address associated with hostname
그리고 대시보드에는 이 알림이 표시됩니다.
또한, 이 항목의 실패는 이메일과 _무관_합니다. /logs에서 이 문제에 대한 추가 정보를 확인할 수 있나요?
Canapin
(Coin-coin le Canapin)
3
기록된 오류에는 두 가지 유형이 있습니다:
하나의 Job exception: Unsupported command argument type: TrueClass
redis-client-0.26.1/lib/redis_client/command_builder.rb:37:in `block in generate'
redis-client-0.26.1/lib/redis_client/command_builder.rb:28:in `map!'
redis-client-0.26.1/lib/redis_client/command_builder.rb:28:in `generate'
redis-client-0.26.1/lib/redis_client.rb:351:in `call_v'
redis-5.4.0/lib/redis/client.rb:90:in `call_v'
rack-mini-profiler-4.0.1/lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method'
redis-5.4.0/lib/redis.rb:152:in `block in send_command'
redis-5.4.0/lib/redis.rb:151:in `synchronize'
redis-5.4.0/lib/redis.rb:151:in `send_command'
redis-5.4.0/lib/redis/commands/hashes.rb:51:in `hmset'
redis-5.4.0/lib/redis/commands/hashes.rb:66:in `mapped_hmset'
/var/www/discourse/lib/discourse_redis.rb:144:in `public_send'
/var/www/discourse/lib/discourse_redis.rb:144:in `block (3 levels) in <class:DiscourseRedis>'
/var/www/discourse/lib/discourse_redis.rb:29:in `ignore_readonly'
/var/www/discourse/lib/discourse_redis.rb:144:in `block (2 levels) in <class:DiscourseRedis>'
/var/www/discourse/lib/discourse_updates.rb:116:in `block in missing_versions='
/var/www/discourse/lib/discourse_updates.rb:114:in `each'
/var/www/discourse/lib/discourse_updates.rb:114:in `missing_versions='
/var/www/discourse/app/jobs/scheduled/call_discourse_hub.rb:19:in `execute'
/var/www/discourse/app/jobs/base.rb:318:in `block (2 levels) in perform'
rails_multisite-7.0.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
rails_multisite-7.0.0/lib/rails_multisite/connection_management.rb:17:in `with_connection'
/var/www/discourse/app/jobs/base.rb:305:in `block in perform'
/var/www/discourse/app/jobs/base.rb:301:in `each'
/var/www/discourse/app/jobs/base.rb:301:in `perform'
/var/www/discourse/app/jobs/base.rb:381:in `perform'
sidekiq-7.3.9/lib/sidekiq/processor.rb:220:in `execute_job'
sidekiq-7.3.9/lib/sidekiq/processor.rb:185:in `block (4 levels) in process'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:180:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/suppress_user_email_errors.rb:6:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/discourse_event.rb:6:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/pausable.rb:131:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
sidekiq-7.3.9/lib/sidekiq/job/interrupt_handler.rb:9:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:26:in `track'
sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:134:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:173:in `invoke'
sidekiq-7.3.9/lib/sidekiq/processor.rb:184:in `block (3 levels) in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:145:in `block (6 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_retry.rb:118:in `local'
sidekiq-7.3.9/lib/sidekiq/processor.rb:144:in `block (5 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/config.rb:39:in `block in <class:Config>'
sidekiq-7.3.9/lib/sidekiq/processor.rb:139:in `block (4 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/processor.rb:281:in `stats'
sidekiq-7.3.9/lib/sidekiq/processor.rb:134:in `block (3 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_logger.rb:15:in `call'
sidekiq-7.3.9/lib/sidekiq/processor.rb:133:in `block (2 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_retry.rb:85:in `global'
sidekiq-7.3.9/lib/sidekiq/processor.rb:132:in `block in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_logger.rb:40:in `prepare'
sidekiq-7.3.9/lib/sidekiq/processor.rb:131:in `dispatch'
sidekiq-7.3.9/lib/sidekiq/processor.rb:183:in `block (2 levels) in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:182:in `handle_interrupt'
sidekiq-7.3.9/lib/sidekiq/processor.rb:182:in `block in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:181:in `handle_interrupt'
sidekiq-7.3.9/lib/sidekiq/processor.rb:181:in `process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:86:in `process_one'
sidekiq-7.3.9/lib/sidekiq/processor.rb:76:in `run'
sidekiq-7.3.9/lib/sidekiq/component.rb:10:in `watchdog'
sidekiq-7.3.9/lib/sidekiq/component.rb:19:in `block in safe_thread'
그리고 1,300개의 Job exception: :arguments expected to be an Array of individual string args:
mail-2.9.0/lib/mail/network/delivery_methods/sendmail.rb:53:in `initialize'
mail-2.9.0/lib/mail/message.rb:278:in `new'
mail-2.9.0/lib/mail/message.rb:278:in `delivery_method'
actionmailer-8.0.4/lib/action_mailer/delivery_methods.rb:66:in `wrap_delivery_behavior'
actionmailer-8.0.4/lib/action_mailer/delivery_methods.rb:80:in `wrap_delivery_behavior!'
actionmailer-8.0.4/lib/action_mailer/base.rb:876:in `mail'
/var/www/discourse/lib/email/build_email_helper.rb:8:in `build_email'
/var/www/discourse/app/mailers/user_notifications.rb:369:in `digest'
actionpack-8.0.4/lib/abstract_controller/base.rb:215:in `process_action'
actionpack-8.0.4/lib/abstract_controller/callbacks.rb:261:in `block in process_action'
activesupport-8.0.4/lib/active_support/callbacks.rb:100:in `run_callbacks'
actionpack-8.0.4/lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack-8.0.4/lib/abstract_controller/base.rb:152:in `process'
actionmailer-8.0.4/lib/action_mailer/rescuable.rb:29:in `block in process'
actionmailer-8.0.4/lib/action_mailer/rescuable.rb:21:in `handle_exceptions'
actionmailer-8.0.4/lib/action_mailer/rescuable.rb:28:in `process'
actionview-8.0.4/lib/action_view/rendering.rb:40:in `process'
actionmailer-8.0.4/lib/action_mailer/base.rb:652:in `block in process'
activesupport-8.0.4/lib/active_support/notifications.rb:212:in `instrument'
actionmailer-8.0.4/lib/action_mailer/base.rb:651:in `process'
actionmailer-8.0.4/lib/action_mailer/message_delivery.rb:136:in `block in processed_mailer'
<internal:kernel>:90:in `tap'
actionmailer-8.0.4/lib/action_mailer/message_delivery.rb:135:in `processed_mailer'
actionmailer-8.0.4/lib/action_mailer/message_delivery.rb:32:in `__getobj__'
/usr/local/lib/ruby/3.3.0/delegate.rb:84:in `method_missing'
/var/www/discourse/lib/email/sender.rb:51:in `send'
/var/www/discourse/app/jobs/regular/user_email.rb:80:in `send_user_email'
/var/www/discourse/app/jobs/regular/user_email.rb:40:in `execute'
/var/www/discourse/app/jobs/base.rb:318:in `block (2 levels) in perform'
rails_multisite-7.0.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
rails_multisite-7.0.0/lib/rails_multisite/connection_management.rb:17:in `with_connection'
/var/www/discourse/app/jobs/base.rb:305:in `block in perform'
/var/www/discourse/app/jobs/base.rb:301:in `each'
/var/www/discourse/app/jobs/base.rb:301:in `perform'
sidekiq-7.3.9/lib/sidekiq/processor.rb:220:in `execute_job'
sidekiq-7.3.9/lib/sidekiq/processor.rb:185:in `block (4 levels) in process'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:180:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/suppress_user_email_errors.rb:6:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/discourse_event.rb:6:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
/var/www/discourse/lib/sidekiq/pausable.rb:131:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
sidekiq-7.3.9/lib/sidekiq/job/interrupt_handler.rb:9:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:183:in `block in traverse'
sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:26:in `track'
sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:134:in `call'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:182:in `traverse'
sidekiq-7.3.9/lib/sidekiq/middleware/chain.rb:173:in `invoke'
sidekiq-7.3.9/lib/sidekiq/processor.rb:184:in `block (3 levels) in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:145:in `block (6 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_retry.rb:118:in `local'
sidekiq-7.3.9/lib/sidekiq/processor.rb:144:in `block (5 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/config.rb:39:in `block in <class:Config>'
sidekiq-7.3.9/lib/sidekiq/processor.rb:139:in `block (4 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/processor.rb:281:in `stats'
sidekiq-7.3.9/lib/sidekiq/processor.rb:134:in `block (3 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_logger.rb:15:in `call'
sidekiq-7.3.9/lib/sidekiq/processor.rb:133:in `block (2 levels) in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_retry.rb:85:in `global'
sidekiq-7.3.9/lib/sidekiq/processor.rb:132:in `block in dispatch'
sidekiq-7.3.9/lib/sidekiq/job_logger.rb:40:in `prepare'
sidekiq-7.3.9/lib/sidekiq/processor.rb:131:in `dispatch'
sidekiq-7.3.9/lib/sidekiq/processor.rb:183:in `block (2 levels) in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:182:in `handle_interrupt'
sidekiq-7.3.9/lib/sidekiq/processor.rb:182:in `block in process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:181:in `handle_interrupt'
sidekiq-7.3.9/lib/sidekiq/processor.rb:181:in `process'
sidekiq-7.3.9/lib/sidekiq/processor.rb:86:in `process_one'
sidekiq-7.3.9/lib/sidekiq/processor.rb:76:in `run'
sidekiq-7.3.9/lib/sidekiq/component.rb:10:in `watchdog'
sidekiq-7.3.9/lib/sidekiq/component.rb:19:in `block in safe_thread'
이 인스턴스에는 두 개의 사용자 정의 플러그인이 설치되어 있습니다. 제거해 보고 오류가 여기서 발생하는지 확인해 볼 수 있습니다.
pmusaraj
(Penar Musaraj)
4
음, 둘 다 플러그인과 관련이 없어 보이네. 내 인스턴스(3주 전 설치)를 업데이트해서 같은 문제가 발생하는지 확인해볼게.
Falco
(Falco)
5
아마도 Disable emails 설정은 해당 항목에서 yes로 되어 있어야 할 것 같습니다.
Canapin
(Coin-coin le Canapin)
6
맞아, 그게 원인이겠네. SMTP 없이 설치할 경우 자동으로 “아니요” "예"로 설정되어야 하는 것 같아?
Falco
(Falco)
7
설정이 "비활성화"이므로 예를 말씀하시는 거죠.
그렇긴 한데, 그렇게 하면 이메일이 비활성화되어 있다는 경고가 떠서 정말 짜증나는 전역 배너가 뜹니다.