0

上の誤った送信者に電子メールを送信し、私は、有効な電子メール送信者のある電子メールでいくつかのことが間違って発見した3.0.1delayed_jobは、私はレール3.1.3に取り組んで生産

delayed_jobを使用しています。

まず、Gmailの(xxx.gmail.com)で動作するActionMailerを設定しても問題なく動作します。

しばらくプロダクションサーバーにデプロイした後。

メールサーバーで動作するように新しいActionMailerを設定しました。

開発時にテストしました。次に、本番サーバーにコードをデプロイします。それはあまりにもうまくいく。

ただし、以前のGmail (xxx.gmail.com)を送信者として使用してメールをクライアントに送信することがあります。 (エラーなしで正しく送信されました)

PS。私は電子メール設定を保持するためにrails_config gemを使用します。

私は運が悪いと2日間デバッグしようとしています。

  • print Settings.mail_sender内側のレールコンソールを本番サーバに何回も使用します。正常に返されます( "no-reply")
  • delayed_jobを再起動します。
  • サーバーを再起動します。
  • 送信者をログに記録してみます。 (送信者がGmailでないときにログに書き込む)。
  • ここで自分のプロジェクトをチェックしてください。Gmailの設定やデータベースはありません。

は私のコード

# config/settings/production.yml 
    mail_sender: '"no-reply" <[email protected]>' 


# MyMailer.rb 

default :from => Settings.mail_sender 

def greeting(receiver)     
    @receiver = receiver 
    Delayed::Worker.logger.info "-------In inform client" 
    Delayed::Worker.logger.info "========inform client from #{Settings.mail_sender}" 

    mail(:to => "#{receiver.full_name} <#{receiver.email}>", 
    :subject => "Hello") do |format|     
     format.html 
    end 

    Delayed::Worker.logger.info inspect 
end 


# code I call the delayed_job 
    MyMailer.delay.greeting(client) if client.can_receive_email? 

任意のアイデアがありますか?ありがとう。

+0

メールが生産中に送信され、そのイベントを「盗む」/メールを送信する必要があるということを察知するテストサービスではありませんか? –

+0

申し訳ありません。私は英語がうまくない。どういう意味ですか?それについて説明できますか? – Rafaiel

答えて

1

私は既に、問題がなくなった新しいサーバー(同じデータを使用)にアプリケーションを展開しています。

次に古いサーバーをシャットダウンしてから、古いサーバーを再起動します。

問題も解決しました。私の古いサーバーにゾンビの糸が詰まっているように見えるのは非常に混乱しています。

最後に私はダンプの質問のために私のサーバーに詰まったdelayed_jobのプロセスに実際の問題を発見しました。

関連する問題