Python - eine gute Methode, um Fehler zu finden

8

Ich habe diese Dateien in meinem Projekt:

%Vor%

main ist die Hauptdatei, die direkt in der Konsole ausgeführt wird.

module1 wird in main importiert und wirft Module1Exception .

module2 wird in module1 , throws Module2Exception importiert und verwendet lib, die NormalException und CriticalException Ausnahmen auslöst.

Bei allen Ausnahmen sollte die Anwendung beendet werden.

Welche Option ist am effektivsten, um diese Fehler zu erfassen?
a) Alle Ausnahmen werden in main abgefangen, Nachricht gedruckt und beendet
b) Ermöglicht Modulen das Abfangen von Ausnahmen ( module2 catch lib Ausnahmen, module1 catch nur Module2Exception und main catch Module1Exception ), Nachricht drucken und beenden.
c) Wie b , mit der Ausnahme, dass Module nicht beendet werden, sondern False zurückgegeben wird und exit in main

aufgerufen wird

Bearbeiten:

Dies ist eine serverseitige Anwendung, die als Daemon läuft. Ich erwarte, dass ich in Zukunft mehrere Server mit globaler Protokollüberwachung wie Gerinne oder Schreiber verwenden werde. Ausnahmen müssen abgefangen werden. Diese Dateien sind nur ein Beispiel. Tatsächlich schreibe ich eine große Anwendung, die als eine Art Server fungiert. In diesem Moment schreibe ich Modul zum Laden und Parsen der Konfigurationsdatei. In diesem Fall sollte das Skript beendet werden, wenn Ausnahmen ausgelöst werden. Und nur in diesem Fall. Nach dem Laden der Konfigurationsdateien und dem Bestehen der Tests bleibt das Skript unbeaufsichtigt.

    
Galmi 20.05.2011, 02:58
quelle

1 Antwort

14

main sollte die Verantwortung haben, zu beenden, nicht die Module.

Was ist, wenn Sie diese Module in ein anderes Projekt importieren möchten und nicht die Anwendung für eine Ausnahme beenden möchten?

    
Demian Brecht 20.05.2011, 03:02
quelle

Tags und Links