Ich versuche, eine Ausnahmebehandlung Mechanismus mit mehreren Ebenen von Informationen für den Benutzer für meine Anwendung mit Python Logging-Modul anzuzeigen.Python - Selektive Behandlung der Ausnahme Traceback
In der Anwendung verfügt das Protokollierungsmodul über zwei Handler: einen Dateihandler zum Speichern von DEBUG-Informationen und einen Stream-Handler zum Speichern von INFO-Informationen. Standardmäßig ist die Protokollierungsstufe auf INFO eingestellt. Was ich versuche zu erreichen, ist ein Setup, bei dem, wenn eine Ausnahme auftritt, dem Benutzer eine einfache Fehlermeldung ohne Rückverfolgung angezeigt wird. Wenn die Protokollierungsstufe auf DEBUG gesetzt ist, sollte der Benutzer immer noch die einfache Nachricht nur erhalten, aber dieses Mal wird der Ausnahme-Traceback in einer Protokolldatei über den Dateihandler protokolliert.
Ist es möglich, dies zu erreichen?
Ich versuchte mit logger.exception(e)
, aber es druckt immer das Traceback auf der Konsole.
mit dieser Lösung ist das gedruckte Traceback dasjenige, das in dem Ausnahmeblock beginnt, nicht dasjenige, das von der Ausnahme beginnt. Es hilft nicht wirklich, die Quelle des Absturzes zu lokalisieren. –