O relatório a seguir foi preparado para mim pelo ChatGPT, com base na minha experiência real de instalação do Discourse (como não sou muito entendido em tecnologia, tenho contado com a IA para obter ajuda em tarefas que considero difíceis). Não preciso de ajuda no momento, mas espero que o relatório possa ser um feedback útil sobre a versão 3.5.0.beta2-dev.
==================
Prezados membros da equipe do Discourse,
Gostaria de compartilhar alguns detalhes de solução de problemas sobre questões de e-mail que enfrentei ao executar o Discourse 3.5.0.beta2-dev. Não preciso de assistência direta, pois decidi reverter para a versão 3.4.0.beta4-dev, mas espero que este relatório seja útil para identificar possíveis problemas com a versão de desenvolvimento mais recente.
1. Resumo do Problema
Realizei uma instalação limpa do Discourse em uma nova instância Vultr, usando o serviço SMTP da 20i (smtp.stackmail.com). No entanto, os e-mails nunca foram entregues, apesar de:
- Um teste de conectividade SMTP bem-sucedido (
openssl s_client -connect smtp.stackmail.com:587 -starttls smtp). - Nenhum erro aparecendo nos logs de e-mail da 20i (sugerindo que o Discourse não estava realmente enviando e-mails).
- O Sidekiq falhando ao processar trabalhos de e-mail.
Isso foi inesperado porque, algumas semanas atrás, instalei com sucesso o Discourse 3.4.0.beta4-dev em uma instância idêntica sem problemas de e-mail.
Após uma depuração completa, descobri que minha instalação atual havia instalado inesperadamente o Discourse 3.5.0.beta2-dev, o que provavelmente contribuiu para os problemas.
2. Principais Problemas Identificados
A. E-mails Não Foram Entregues
- As configurações de SMTP estavam corretas, verificadas por meio de testes manuais (testes
swakseopensslforam bem-sucedidos). - Os e-mails foram enfileirados no Sidekiq, mas nunca recebidos.
- Os logs de e-mail da 20i mostraram nenhuma rejeição ou tentativa de entrega (sugerindo que as mensagens nunca saíram do Discourse).
- Nenhum erro relacionado a e-mail apareceu no
production.log(grep "smtp"não retornou nada).
B. Problemas com Sidekiq e Redis
- Inicialmente, o Sidekiq não estava em execução (
Sidekiq::Workers.new.sizeretornou0). - Reiniciar o Sidekiq manualmente (
sv restart sidekiq) falhou porque o Sidekiq estava faltando como um serviço. - O Redis estava em execução (
redis-cli pingretornouPONG), mas os logs do Discourse ainda mostravam erros de conexão do Redis (Errno::ECONNREFUSED). - Os logs do Sidekiq indicavam falhas de trabalho devido a problemas de conexão do Redis, mesmo que o Redis estivesse confirmado como ativo.
- Iniciar o Sidekiq manualmente (
bundle exec sidekiq) permitiu que os trabalhos fossem processados, mas os e-mails ainda não eram enviados.
C. Incompatibilidade de Versão Entre Instalações
- Minha instalação anterior (que funcionou) foi na versão 3.4.0.beta4-dev.
- Minha instalação atual instalou inesperadamente a versão 3.5.0.beta2-dev, apesar de usar o mesmo método de configuração.
- Como o e-mail funcionou perfeitamente na versão 3.4.0.beta4-dev, suspeito de uma regressão ou alteração incompatível na versão 3.5.
3. Ações Tomadas (Todas Falharam)
Tentamos sistematicamente as seguintes soluções:
Conectividade SMTP confirmada com:
openssl s_client -connect smtp.stackmail.com:587 -starttls smtp # Bem-sucedido
swaks --to my-email --server smtp.stackmail.com --port 587 --auth LOGIN # Bem-sucedido
Verificado se os e-mails foram enfileirados:
Jobs.enqueue(:user_email, type: :test_message, to_address: 'masden@kumagaku.ac.jp') # Retornou um ID de trabalho
Sidekiq::Queue.new("default").size # Retornou 0 (indicando que o trabalho foi processado)
Verificado os logs do Discourse:
grep "smtp" /shared/log/rails/production.log # Nenhum erro relacionado a SMTP
- Falhas de conexão do Redis (
Errno::ECONNREFUSEDemproduction.log).
Reiniciados e acionados manualmente os serviços:
sv restart sidekiq # Falhou, serviço ausente
redis-cli ping # Confirmado em execução
bundle exec sidekiq # Trabalhos processados, mas nenhum e-mail enviado
Verificado se os e-mails estavam sendo bloqueados pela 20i:
- Nenhuma rejeição ou tentativa de entrega nos logs de e-mail da 20i.
- Se os e-mails estivessem sendo rejeitados, deveria haver uma entrada de log, mas nada apareceu.
4. Conclusão: Revertendo para a versão 3.4.0.beta4-dev
Após extensa solução de problemas, decidi limpar a instalação e reinstalar a versão 3.4.0.beta4-dev, pois minha instalação anterior funcionou perfeitamente nessa versão.
Embora eu não precise de ajuda direta, queria relatar esses problemas porque:
- O processamento de e-mail pode ter mudado na versão 3.5, impedindo a entrega via SMTP.
- O serviço ausente do Sidekiq e os erros do Redis sugerem problemas de processamento de trabalhos em segundo plano na versão 3.5.
- Como consegui instalar a versão 3.4.0.beta4-dev sem problemas, isso sugere uma possível regressão na versão 3.5.
Espero que este relatório seja útil para identificar possíveis problemas na versão Discourse 3.5.0.beta2-dev.
Atenciosamente,
Kirk

