Приветствую,
Проблема в следующем. Имеются 4-ые рельсы, реализована отправка почты через ActionMailer.
Далее потребовалось прикрутить delayed_job, так как рассылка проводится по большой базе пользователей ( сразу скажу - не СПАМ ). После прикручивания DJ почта доставляться перестала, при это DJ корректно отрабатывает ( записи в таблице delayed_jobs появляются и затем обрабатываются ). В чем проблема? Я грешу на то, что DJ почему-то не подцепляет config.action_mailer из production.rb
Заранее спасибо за ответ.
Код и лог ниже.
production.rb:
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'mail.xxx.ru',
port: 25,
domain: 'xxx.ru',
user_name: 'ruby@xxx.ru',
password: 'XxXxXx',
authentication: 'plain',
enable_starttls_auto: false
}
mail_controller.rb
def send_some(emails)
email_subject = ...
.....
emails.each do |e|
PMailer.send_email(e.to_s,email_subject,email_body).deliver
end
redirect_to root_path
end
p_mailer.rb:
class PMailer < ActionMailer::Base
default from: "ruby@xxx.ru"
def send_email(email,mail_subject,mail_body)
mail(to: email, subject: "#{mail_subject}", body: "#{mail_body}")
end
handle_asynchronously :send_email
end
PMailer#send_email: processed outbound mail in 6.2ms
(0.2ms) BEGIN
SQL (0.3ms) INSERT INTO "delayed_jobs" ("created_at", "handler", "run_at", "updated_at") VALUES ($1, $2, $3, $4) RETURNING "id" [["created_at", "2014-09-18 07:46:53.823461"], ["handler", "--- !ruby/object:Delayed::PerformableMethod\nobject: !ruby/object:PMailer\n _routes: \n _action_has_layout: true\n _mail_was_called: false\n _message: !ruby/object:Mail::Message\n body: !ruby/object:Mail::Body\n boundary: \n preamble: \n epilogue: \n charset: US-ASCII\n part_sort_order:\n - text/plain\n - text/enriched\n - text/html\n parts: !ruby/array:Mail::PartsList []\n raw_source: ''\n encoding: 7bit\n body_raw: \n separate_parts: false\n text_part: \n html_part: \n errors: \n header: !ruby/object:Mail::Header\n errors: []\n charset: UTF-8\n raw_source: ''\n fields: !ruby/array:Mail::FieldList []\n charset: UTF-8\n defaulted_charset: true\n smtp_envelope_from: \n smtp_envelope_to: \n perform_deliveries: true\n raise_delivery_errors: true\n delivery_handler: \n delivery_method: !ruby/object:Mail::SMTP\n settings:\n :address: localhost\n :port: 25\n :domain: localhost.localdomain\n :user_name: \n :password: \n :authentication: \n :enable_starttls_auto: true\n :openssl_verify_mode: \n :ssl: \n :tls: \n transport_encoding: !ruby/class 'Mail::Encodings::SevenBit'\n mark_for_delete: false\n raw_source: ''\n _prefixes: &1\n - pumpit_mailer\n _lookup_context: !ruby/object:ActionView::LookupContext\n details_key: \n details:\n :locale:\n - :en\n :formats:\n - :html\n - :text\n - :js\n - :css\n - :ics\n - :csv\n - :vcf\n - :png\n - :jpeg\n - :gif\n - :bmp\n - :tiff\n - :mpeg\n - :xml\n - :rss\n - :atom\n - :yaml\n - :multipart_form\n - :url_encoded_form\n - :json\n - :pdf\n - :zip\n :variants: []\n :handlers:\n - :erb\n - :builder\n - :raw\n - :ruby\n - :jbuilder\n - :coffee\n skip_default_locale: true\n cache: true\n prefixes: *1\n rendered_format: \n view_paths: !ruby/object:ActionView::PathSet\n paths:\n - !ruby/object:ActionView::OptimizedFileSystemResolver\n pattern: \":prefix/:action{.:locale,}{.:formats,}{+:variants,}{.:handlers,}\"\n cache: !ruby/object:ActionView::Resolver::Cache\n data: !ruby/object:ActionView::Resolver::Cache::SmallCache\n backend: {}\n default_proc: !ruby/object:Proc {}\n path: \"/Users/administrator/apps/pmailer/app/views\"\n _action_name: send_email\n _response_body: \nmethod_name: :send_email_without_delay\nargs:\n- user@xxxx.ru\n- \"Здравствуй, мама!\"\n- \"Пишу тебе из горящего танка, извини за неровный почерк, так как пишу на спине убитого\n товарища и раскаленная сталь капает за шиворот с горящей танковой башни...\"\n"], ["run_at", "2014-09-18 07:46:53.823398"], ["updated_at", "2014-09-18 07:46:53.823461"]]
(0.5ms) COMMIT