メンテナンスしているサイトにMailgunを使用しています。通常、Mailgunは非常に機能しますが、奇妙な問題に直面しています。私のスクリプトは、HTTP APIを呼び出してMailgunを使用してメッセージを送信します。これらは「受け入れられた」としてログに表示されますが、「配信」されるまでに非常に時間がかかります。受け入れられました」。誰かが同様のエラーを経験しましたか、または誰かがそれを修正する方法を提案できますか?私はそれがAPIに提供された引数にあると推測していますが、私の人生では問題を理解することはできません。
この問題は、さまざまな受信者ドメインとさまざまな時刻に存在します。
問題のあるメッセージのJSONログは次のとおりです。もちろん、アドレスとドメインを変更しました。
{
"tags": [],
"timestamp": 1411498829.247304,
"envelope": {
"targets": "[email protected]",
"transport": "",
"sender": "[email protected]"
},
"recipient-domain": "address.com",
"event": "accepted",
"campaigns": [],
"user-variables": {},
"flags": {
"is-authenticated": true,
"is-system-test": false,
"is-test-mode": false
},
"message": {
"headers": {
"to": "[email protected]",
"message-id": "[email protected]",
"from": "\"the-site-in-question.com\" <[email protected]>",
"subject": "Dom, your password was reset."
},
"attachments": [],
"recipients": [
"[email protected]"
],
"size": 556
},
"recipient": "[email protected]",
"method": "http"
}
Mailgunログにメッセージが「Accepted」と表示される場合は常に、Mailgunがメッセージを受け入れ、配信のためにキューに入れたことを示します。メッセージはかなり迅速に配信される必要がありますが、大量のメッセージを一度に送信した場合、または受信者ESPがIP /ドメインからのメッセージをスロットリングしている場合、あなたのアカウントで。
Mailgunアカウントからサポートチケットを開いて、メッセージIDの一部を提供することをお勧めします。これにより、サポートチームは、Mailgunにメッセージが送信された後、これらの遅延の正確な原因を調査できます。
これが定期的に発生している場合、Mailgunが低層IPアドレスのいずれかを持っている可能性が非常に高くなります。これは無料アカウントのデフォルトだと思います。なぜなら、彼らは真面目/合法ではないかもしれない新しいユーザーで良いアドレスを「汚染」したくないからです。
Sender Score のようなサイトでIPアドレスの「品質」を確認できます。配信されたメッセージのMailgunログで次の行を見つけます。
"sending-ip": "XXX.XX.XXX.XXX"
送信者のスコアに70年代のスコアが表示される場合、それが問題です。 Chrisが提案したように、Mailgunにサポートチケットを送信し、彼らがより高品質のIPアドレスを取得できるかどうかを確認します。私はそうしました、そして、私のメールは90年代のスコアでIPアドレスから今送られています。それ以来、単一の遅延はありませんでした。