관리자 페이지의 SMTP 테스트는 정상적으로 작동하며, 해당 페이지에서 이메일을 보내는 데도 문제가 없습니다. 하지만 사용자 가입 이메일을 테스트할 때는 이메일이 전송되지 않습니다. 실제로 admin->emails->sent에 기록된 항목이 없습니다(테스트 메시지 제외). admin->emails->skipped도 비어 있으며(바운스, 수신 거부 항목도 모두 비어 있음)
제 판단으로는 production.log에 관련 오류가 없고, admin->logs->Error 로그에도 관련 항목이 없습니다.
권한 문제나 임시 디렉터리 누락처럼 보이지만, 로그에 아무런 기록이 없어 원인을 파악하기가 어렵습니다.
생각해 주실 수 있는 점이나 아이디어가 있을까요? 내부적으로 어떤 일이 일어나고 있는지 추적하기 위해 로깅 수준을 높이는 방법이 있을까요?
완전히 정상적인 운영체제에 이 작업을 전담하기 위해 Docker 컨테이너를 관리해야 하는 부담이나, 그것이 가져오는 추가 오버헤드를 감수하고 싶지는 않았습니다. 또한 인스턴스 내에 설치하는 대신, 이미 지리적으로 분산된 Postgres 시스템을 활용할 수 있습니다. 이런 일반적인 %snix 관련 작업은 제가 처리할 수 있지만, Discourse의 불투명함 때문에 지금은 다소 혼란스럽습니다. strace를 사용하면 분명히 해결할 수 있을 거라 생각하지만, 여기서 질문함으로써 약 1시간 정도의 디버깅 시간을 절약해 보고 싶었습니다
~/log/production.log 파일에서 다음과 같은 로그를 확인할 수 있으므로, 이 단계까지는 정상적으로 진행되고 있습니다.
Started POST “/u/action/send_activation_email” for X.X.X.X at 2022-02-10 21:45:52 +0000
Processing by UsersController#send_activation_email as /
Parameters: {“username”=>“my@email.net”}
Rendered text template (Duration: 0.0ms | Allocations: 3)
Completed 200 OK in 29ms (Views: 1.6ms | ActiveRecord: 0.0ms | Allocations: 7196)