2014-07-07 10 views

risposta

7

Sì, tutto ciò che dovete fare è impostare CELERY_SEND_TASK_ERROR_EMAILS = True e se il processo di Celery fallisce, django invierà un messaggio con traceback a tutte le e-mail impostate nelle impostazioni ADMINS.

+0

Sì, grazie. ma ha un problema che invia un'e-mail per ogni attività fallita. – Ali

+0

Inoltre non ha nulla a che fare con Django, funzionerà anche se non usi Celery con Django finché tutte le giuste voci di configurazione sono presenti. –

+0

La domanda riguardava la ricezione di avvisi quando veniva raggiunta una soglia di attività non riuscite o riprovate, non l'invio di un'e-mail per ogni attività (potrebbero essere migliaia). Vedere [questa risposta] (http://stackoverflow.com/questions/26626946/how-to-get-the-failed-tasks-in-celery/32859547#32859547) per ottenere l'elenco delle attività non riuscite, da cui è possibile calcolare statistiche per inviare un avviso. – RichVel

2

Per quanto ne so, non è possibile fuori dalla scatola.

È possibile scrivere client personalizzati su sedano o fiore o accedere direttamente a RabbitMQ.

Quello che vorrei fare (e sto facendo) è semplicemente registrare attività fallite e quindi utilizzare qualcosa come Graylog2 per monitorare i file di registro, questo funziona per tutta l'infrastruttura, non solo per Celery.

È inoltre possibile utilizzare qualcosa come NewRelic che monitora direttamente i processi e offre molte altre funzionalità. Sebbene il reporting delle e-mail sulle eccezioni sia un po 'limitato in NewRelic.

Un semplice client/monitor è probabilmente la soluzione più rapida.

+0

Quindi perché il voto negativo? Leggi la domanda, la risposta ovvia è che non puoi farlo fuori dagli schemi. Puoi fare quello che ha detto @ Danula, ma non è serio. Se qualcosa va seriamente male, ti ritroverai con 10k email nella tua casella di posta. –

+0

Quel downvote è un mio errore. La tua soluzione è ok, non ho notato che il messaggio dovrebbe essere inviato dopo che X fallisce, non tutti falliscono. Posso cambiare il mio voto solo quando la tua risposta sarà modificata. – daniula

Problemi correlati