Debuggen einer SMTP-Timeout-Fehler
Arbeite ich an einem Rails-Projekt, bei Action-Mailer-senden E-mail Kampagnen. Für den moment habe ich getestet, alles mit einem einfachen alten GMail-Konto. Immer näher an die Version jetzt, und ich beschlossen habe zu wechseln, der smtp-server auf unseren lokalen mail-server.
Das ist ja alles schön und gut, bis wir versuchen eigentlich E-mail senden. Mit diesen neuen smtp-server-Einstellungen mit dem mailer nichts tut, sondern time-out:
MY_SMTP_SETTINGS = {
:address => 'oz.some.server.edu',
:port => 465,
:user_name => MY_USERNAME,
:authentication => :login,
:password => MY_PASSWORD
}
Dies ist der stack-trace von dem Fehler erhalte ich nach einiger Zeit zu senden versuchen, eine Kampagne:
Timeout::Error: execution expired
from /opt/local/lib/ruby/1.8/timeout.rb:60:in `rbuf_fill'
from /opt/local/lib/ruby/1.8/net/protocol.rb:134:in `rbuf_fill'
from /opt/local/lib/ruby/1.8/net/protocol.rb:116:in `readuntil'
from /opt/local/lib/ruby/1.8/net/protocol.rb:126:in `readline'
from /opt/local/lib/ruby/1.8/net/smtp.rb:911:in `recv_response'
from /opt/local/lib/ruby/gems/1.8/gems/ambethia-smtp-tls-1.1.2/lib/smtp-tls.rb:19:in `do_start'
from /opt/local/lib/ruby/1.8/net/smtp.rb:921:in `critical'
from /opt/local/lib/ruby/gems/1.8/gems/ambethia-smtp-tls-1.1.2/lib/smtp-tls.rb:19:in `do_start'
from /opt/local/lib/ruby/1.8/net/smtp.rb:525:in `start'
from /opt/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.2/lib/action_mailer/base.rb:681:in `perform_delivery_smtp'
from /opt/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.2/lib/action_mailer/base.rb:523:in `__send__'
from /opt/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.2/lib/action_mailer/base.rb:523:in `deliver!'
from /opt/local/lib/ruby/gems/1.8/gems/actionmailer-2.3.2/lib/action_mailer/base.rb:395:in `method_missing'
from /Users/ryan/Development/gsoc/cohort/repo/app/models/freemailer_campaign.rb:39:in `send_campaign'
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/associations/association_collection.rb:364:in `method_missing_without_paginate'
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/associations/association_proxy.rb:219:in `method_missing'
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/associations/association_proxy.rb:219:in `each'
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/associations/association_proxy.rb:219:in `send'
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/associations/association_proxy.rb:219:in `method_missing'
from /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/associations/association_collection.rb:364:in `method_missing_without_paginate'
from /Users/ryan/Development/gsoc/cohort/repo/vendor/plugins/will_paginate/lib/will_paginate/finder.rb:167:in `method_missing'
from /Users/ryan/Development/gsoc/cohort/repo/app/models/freemailer_campaign.rb:37:in `send_campaign'
Tun jemand eine Idee, wie ich das genau finden kann mein problem?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Problem ist nicht in ruby, sondern in der E-Mail-server. Stellen Sie sicher, dass die E-Mail-server arbeiten (Test-E-Mail-server über die telnet-Konsole) und versuchen Sie es erneut.
Versuchen telneting in der SMTP-Feld.
Verwenden von telnet auf den mail-server auf port 465, wenn Ihr nicht öffnen, überprüfen Sie die firewall-und mail-server-Konfiguration.Sie können auch versuchen, diese für Ihre actionmailer-Einstellungen:
Bekannten Ruby-Fehler:
http://lindsaar.net/2007/12/9/rbuf_filltimeout-error