Come faccio a fare in modo che i gestori di segnale Django non falliscano in modo silenzioso quando si verifica un'eccezione nel gestore?Come faccio a fare in modo che i gestori di segnale Django non falliscano silenziosamente quando si verifica un'eccezione nel gestore di segnale?
C'è un luogo in cui tutti questi errori vengono registrati durante l'utilizzoserver di sviluppo?
Perché i gestori di segnale django falliscono comunque in modo silenzioso? Non è contro una delle linee in Zen of Python?
Zen di Python afferma chiaramente ...
errori non devono mai passare in silenzio.
Li rende un incubo per il debug. Tutto quello che puoi vedere è che il segnale non viene sparato ...
Ho trovato la domanda this ma la risposta è inutile per me in quanto è molto specifica alla domanda (la risposta suggerisce l'uso di pyflakes, io uso già pydev che fa soddisfacente analisi statica)
se gli errori all'interno della funzione di callback non funzionano correttamente, perché non si disattiva la funzione di richiamata? tutti i parametri di callback possono essere facilmente derisi per garantire che la funzione di callback sia priva di errori – dm03514
Puoi creare una testcase per riprodurre questo? Ho scoperto di avere dei traceback dal server di sviluppo con il seguente: http://pastie.org/private/tqd11vmhxvwgpxu65kixg – monk
@ dm03514 Unittests sarebbe la strada da percorrere ... ma preferirei se fosse possibile che i gestori di segnale generassero eccezioni , così anche se qualche caso soggetto a errori viene ignorato durante la scrittura di unittests, viene facilmente rilevato ... – Optimus