Comment puis - je obtenir Django 1.0 à écrire toutes les erreurs à la console ou un fichier journal lors de l' exécution runserver en mode débogage?
Je l'ai essayé d'utiliser une classe de middleware avec fonction process_exception tel que décrit dans la réponse acceptée à cette question:
Comment connectez-vous des erreurs de serveur sur les sites de django
La fonction process_exception est appelé à quelques exceptions près (par exemple: assert (Faux) dans views.py) mais process_exception n'est pas appelé à d'autres erreurs comme ImportErrors (par exemple: thisclassdoesnotexist d'importation urs.py). Je suis nouveau à Django / Python. Est-ce en raison d'une distinction entre l'exécution et la compilation des erreurs? Mais je me attends runserver de se plaindre si elle était une erreur de compilation du temps et il ne fonctionne pas.
Je l' ai regardé la présentation fantastique de Simon Willison le débogage Django ( http://simonwillison.net/2008/May/22/debugging/ ) mais je ne vois pas une option qui fonctionne bien pour moi.
Dans le cas où il est pertinent, je vous écris une application Facebook et masques Facebook HTTP 500 erreurs avec leur propre message plutôt que de montrer la page d' information 500 awesomely de Django. Donc je besoin d' un moyen pour tous les types d'erreurs à écrire sur la console ou un fichier.
Edit: Je suppose que mon attente est que si Django peut retourner une page d'erreur 500 avec beaucoup de détails quand j'ai une mauvaise importation (ImportError) dans urls.py, il devrait être en mesure d'écrire les mêmes détails sur la console ou un fichier sans avoir à ajouter une gestion des exceptions supplémentaires au code. Je ne l' ai jamais vu la gestion des exceptions dans les déclarations d'importation.
Merci, Jeff













