Olá, estou usando o Discourse auto-hospedado em meu servidor. Estou na versão de desenvolvimento mais recente até o momento: Commits · discourse/discourse · GitHub
Estou percebendo que o Discourse envia e-mail 2 vezes quando um usuário se cadastra ou recebe uma mensagem privada, etc.
Posso recriar isso quando cadastro um novo usuário. Não sei como posso solucionar isso ou qual é o problema exato, ou se isso pode ser um problema do meu servidor de e-mail… Encontrei alguns tópicos semelhantes, mas eles têm alguns anos, então queria abrir um novo tópico.
Você vê alguma informação nos logs de E-mails Enviados do seu site relacionada a esses e-mails? Observe que você pode usar os campos na parte superior dessa página para filtrar e-mails por Usuário, Endereço de Destinatário ou Tipo de E-mail:
Embora algo estranho tenha acontecido. Com o domínio protonmail.com, ele não enviou duplicado, mas com anonaddy.com há um e-mail duplicado. Isso me faz pensar que talvez esse problema esteja ligado ao servidor de e-mail e não ao Discourse.
Embora eu também receba e-mails duplicados do meu próprio domínio/servidor de e-mail. Podemos confiar que, se o e-mail não for mostrado na página de enviados, então é 100% certo que o Discourse não está enviando e-mails duplicados?
Ok, parece que ambos estão vindo do Discourse, se entendi corretamente:
Primeiro e-mail:
Return-Path: <SRS0=ll8P=FH=anonaddy.com=b_na4w2nlvmv3gizdenmya_gq4wmodfhfrwm@Mail Server>
Delivered-To: Email Address
Received: from mail2.anonaddy.me (mail2.anonaddy.me [***.***.***.***])
by Mail Server (Postfix) with ESMTPS id A9132370DA
for Email Address; Sat, 23 Sep 2023 11:06:42 +0300 (+03)
Received: from mail2.anonaddy.me (mail2.anonaddy.me [127.0.0.1])
by mail2.anonaddy.me (Postfix) with ESMTPS id 64958FA584
for Email Address; Sat, 23 Sep 2023 09:06:41 +0100 (BST)
DKIM-Signature: [Truncated]
From: [Sender]
To: Email Address
Subject: =?utf-8?Q?=5BBilin=C3=A7li?= Teknoloji
=?utf-8?Q?T=C3=BCketicileri=5D_Hesab=C4=B1n=C4=B1z=C4=B1_ona?=
=?utf-8?Q?ylaman=C4=B1z_i=C3=A7in_an=C4=B1msat=C4=B1c=C4=B1?=
Feedback-ID: F:28f5e9fd-7ba5-4466-8b17-b52f087bd332:anonaddy
Message-ID: [Message ID]
Received: from Mail Server ([***.***.***.***]) by
mail2.anonaddy.me (Postfix) with ESMTPS id 70F86100233 for
Email Address; Sat, 23 Sep 2023 09:06:37 +0100 (BST)
Segundo e-mail (o mesmo, em duplicidade, você pode ver que estão separados por segundos):
Return-Path: <SRS0=mdkr=FH=anonaddy.com=b_payts6dtgn5dkodznftq_my3tgntdgvqwk@Mail Server>
Delivered-To: Email Address
Received: from mail2.anonaddy.me (mail2.anonaddy.me [***.***.***.***])
by Mail Server (Postfix) with ESMTPS id D2066370DA
for Email Address; Sat, 23 Sep 2023 11:06:54 +0300 (+03)
Received: from mail2.anonaddy.me (mail2.anonaddy.me [127.0.0.1])
by mail2.anonaddy.me (Postfix) with ESMTPS id 68CBC107D41
for Email Address; Sat, 23 Sep 2023 09:06:54 +0100 (BST)
DKIM-Signature: [Truncated]
From: [Sender]
To: Email Address
Subject: =?utf-8?Q?=5BBilin=C3=A7li?= Teknoloji
=?utf-8?Q?T=C3=BCketicileri=5D_Hesab=C4=B1n=C4=B1z=C4=B1_ona?=
=?utf-8?Q?ylaman=C4=B1z_i=C3=A7in_an=C4=B1msat=C4=B1c=C4=B1?=
Feedback-ID: F:28f5e9fd-7ba5-4466-8b17-b52f087bd332:anonaddy
Message-ID: [Message ID]
Received: from Mail Server ([***.***.***.***]) by
mail2.anonaddy.me (Postfix) with ESMTPS id E34B6100233 for
Email Address; Sat, 23 Sep 2023 09:06:51 +0100 (BST)
Em seguida, verifique os logs do Mail Server para descobrir se o Discourse enviou uma mensagem vs. duas e qual é o histórico do e-mail que atingiu os servidores de e-mail do anonaddy como 70F86100233 e E34B6100233.
O primeiro é: Message-ID: \u003c6172c966-5777-44c2-988f-6acdd7ff33ff@btt.community\u003e
O segundo é: Message-ID: \u003c70297dae-5cb7-467b-980d-ef6dcfeea220@btt.community\u003e
Verifiquei os logs do meu servidor de e-mail assim: cat mail.log | grep 70297dae
Acho que a Claudia não consegue encontrar essa informação. Quaisquer outras sugestões sobre como podemos identificar e corrigir o problema seriam apreciadas, pois estou sem ideias. Obrigado.
Uma vez eu estava lutando com um comportamento semelhante. Os usuários foram bombardeados com e-mails, que o servidor de e-mail enviou, mas na visão do Discourse não foram enviados.
Minha hipótese era que era possível que o Discourse desse um trabalho ao servidor de e-mail e houvesse um tempo limite durante o processo, o que faz com que isso pareça uma falha para o Discourse, mesmo que o e-mail tenha sido enviado. O trabalho falho é então repetido e resulta em um novo e-mail.
Fiquei feliz em resolver isso matando trabalhos no Sidekiq, reiniciando o servidor de e-mail e mexendo nas regras do fail2ban.