Hvordan kan jeg få Django 1.0 til å skrive alle feil til konsollen eller en loggfil når du kjører runserver i feilsøkingsmodus?
Jeg har prøvd å bruke en mellomvare klasse med process_exception funksjon som er beskrevet i den aksepterte svaret på dette spørsmålet:
Hvordan logger du server feil på Django nettsider
Den process_exception funksjonen kalles for noen unntak (f.eks: hevde (usann) i views.py), men process_exception er ikke å bli kalt for andre feil som ImportErrors (f.eks: import thisclassdoesnotexist i urs.py). Jeg er ny på Django / Python. Er dette på grunn av noen forskjell mellom kjøretid og kompilere-time feil? Men da ville jeg forvente runserver til å klage hvis det var en samle-tid feil, og det gjør det ikke.
Jeg har sett Simon Willison fantastiske presentasjon på Django debugging ( http://simonwillison.net/2008/May/22/debugging/ ), men jeg fikk ikke se et alternativ som ville fungere bra for meg.
I tilfelle det er relevant, skriver jeg en Facebook-app og Facebook masker HTTP 500 feil med sitt eget budskap heller enn å vise Djangos awesomely informativ 500 side. Så jeg trenger en måte for alle typer feil å bli skrevet til konsollen eller filen.
Edit: Jeg tror min forventning er at hvis Django kan returnere en 500-feil side med masse detaljer når jeg har en dårlig import (ImportError) i urls.py, bør det være i stand til å skrive det samme detalj til konsollen eller en fil uten å legge noen ekstra avvikshåndtering til koden. Jeg har aldri sett avvikshåndtering rundt import uttalelser.
Takk, Jeff













