web-dev-qa-db-ja.com

Mailgun:メッセージは「受け入れられました」が、配信に時間がかかる(または配信されない)

メンテナンスしているサイトに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"
}
55
Dom Weldon

Mailgunログにメッセージが「Accepted」と表示される場合は常に、Mailgunがメッセージを受け入れ、配信のためにキューに入れたことを示します。メッセージはかなり迅速に配信される必要がありますが、大量のメッセージを一度に送信した場合、または受信者ESPがIP /ドメインからのメッセージをスロットリングしている場合、あなたのアカウントで。

Mailgunアカウントからサポートチケットを開いて、メッセージIDの一部を提供することをお勧めします。これにより、サポートチームは、Mailgunにメッセージが送信された後、これらの遅延の正確な原因を調査できます。

43
Chris Hammer

これが定期的に発生している場合、Mailgunが低層IPアドレスのいずれかを持っている可能性が非常に高くなります。これは無料アカウントのデフォルトだと思います。なぜなら、彼らは真面目/合法ではないかもしれない新しいユーザーで良いアドレスを「汚染」したくないからです。

Sender Score のようなサイトでIPアドレスの「品質」を確認できます。配信されたメッセージのMailgunログで次の行を見つけます。

"sending-ip": "XXX.XX.XXX.XXX"

送信者のスコアに70年代のスコアが表示される場合、それが問題です。 Chrisが提案したように、Mailgunにサポートチケットを送信し、彼らがより高品質のIPアドレスを取得できるかどうかを確認します。私はそうしました、そして、私のメールは90年代のスコアでIPアドレスから今送られています。それ以来、単一の遅延はありませんでした。

52
Greg Kaleka