Prima di tutto sì, questa è ancora un'altra domanda / argomento sulla coda di posta elettronica 1.9.1. Ma non si tratta di problemi di cron (come questo o questo ) o di non utilizzare la nuova funzione di coda (come questo ).
Nel nostro caso abbiamo avuto il problema, che la coda ( core_email_queue
e core_email_queue_recipients
) semplicemente non avrebbe ricevuto e-mail su nuovi ordini o aggiornamenti di ordini e quindi non più e-mail sono state inviate per qualsiasi cosa relativa all'ordine, anche cron sta funzionando perfettamente e aggiungendo manualmente e-mail a la coda funziona e vengono inviati.
La cosa strana è che nel nostro ambiente di test tutto ha funzionato. Anche quando siamo andati online oggi nei primi minuti, tutte le e-mail sono state elaborate, ma dopo alcuni minuti (senza ulteriori modifiche sul sistema live, ovviamente) non sono state aggiunte più nuove e-mail alla coda. Sembra che questo sia accaduto (ma non posso dirlo con certezza) quando il primo cliente ha utilizzato PayPal Express, che non abbiamo testato in anticipo: - / E in effetti stavamo usando alcune sostituzioni personalizzate nella logica di PayPal Express con la vecchia sendNewOrderEmail()
funzione. Ma non siamo riusciti a far funzionare nuovamente le e-mail anche dopo averle patchate queueNewOrderEmail()
.
Quindi la prima domanda sarebbe: è possibile che la vecchia funzione abbia innescato alcune incoerenze che "si sono rotte" la coda di posta elettronica? O è solo una grande coincidenza e c'è una spiegazione completamente diversa?
Dato che non siamo riusciti a trovare il problema, ma ovviamente avevamo bisogno che le e-mail funzionassero di nuovo al più presto, abbiamo optato per un'altra sostituzione principale. In Mage_Core_Model_Email_Template_Mailer
(ovviamente in una copia in local
) abbiamo commentato la riga 76: ->setQueue($this->getQueue())
questo sembra bypassare la coda e tutte le mail vengono inviate di nuovo alla vecchia maniera.
Tuttavia, poiché vorremmo ridurre al minimo il numero di override principali e al momento non possiamo nemmeno dire se dovremo affrontare altri effetti collaterali, eventuali altri suggerimenti o soluzioni da parte di persone con una comprensione più profonda del codice magento e del la coda di posta elettronica sarebbe apprezzata.
Aggiornamento per 1.9.2: sull'aggiornamento a 1.9.2 abbiamo dato di nuovo un'occhiata più da vicino alla coda e-mail e non siamo stati in grado di riprodurre il problema. Ma dato che non abbiamo ancora idea di quale fosse il problema con 1.9.1 e dato che l'override Mage_Core_Model_Email_Template_Mailer::send()
funziona ancora nel modo qui descritto, non stiamo ancora usando la coda. In questo modo speriamo di non ripetere lo stesso problema dopo qualche tempo in produzione.
tl; dr: la coda e-mail non funziona in 1.9.1, commentando la riga 76 in Mage_Core_Model_Email_Template_Mailer
bypass la coda e-mail e le e-mail vengono inviate di nuovo, ma questa non sembra una buona soluzione. Come può essere risolto meglio?
core
ecc. Per garantire che tutto ciò che non è personalizzato o un'estensione sia presente e non modificato ed è). Le autorizzazioni corrispondono alla vecchia configurazione e i registri / i rapporti sono puliti.
core_email_queue_send_all
l'esecuzione anche ogni minuto e da dove vediamo che viene effettivamente eseguito.
exception.log
o forsesystem.log
ci sono degli indizi?