Python Script beendet sich selbst - warum?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
lunar

Pekh hat geschrieben:1) Habe ich nicht behauptet, daß mein Beispiel das Musterbeispiel für die Verwendung des Logging-Moduls ist (aber ich wäre sehr dankbar, wenn du eines bereitstellen könntest).

Code: Alles auswählen

try:
    raise ValueError()
except:
    logging.exception('Unexpected error occured')
Oder, wenn man sys.excepthook verwenden möchte:

Code: Alles auswählen

def exception_handler(*exc_info):
    logging.error('Unexpected error occured', exc_info=exc_info)

sys.excepthook = exception_handler
Man braucht den zusätzlichen Import des traceback-Moduls nicht.
2) Noch eine Verständnisfrage: Was bitte ist meine Funktion 'hook', wenn nicht ein Exceptionhandler?
Ein Hook, der vom globalen Exceptionhandler aufgerufen wird. Die Ausnahme ist zum Zeitpunkt des Aufrufs deiner Funktion bereits "behandelt", daher gibt sys.exc_info() auch None zurück (weswegen logging.exception() in sys.excepthook() nicht ohne weiteres funktioniert).
Pekh
User
Beiträge: 482
Registriert: Donnerstag 22. Mai 2008, 09:09

Vielen Dank.
Antworten