Hallo zusammen,
hatte mir mal vor längerer Zeit Gedanken darüber gemacht, wie man denn am besten Exceptions loggen kann (neben anderen Meldungen). Die Grundidee war dabei, dass ich eigentlich alle Fehlermeldungen unbedingt geloggt haben will, wobei dies ja sehr stark mit Exceptions verknüpft ist.
Vorab muss ich noch sagen, dass ich einen LogController habe, der nach dem Singleton-Pattern gebaut und global verfügbar ist. Somit kann ich via
LogController.Log()
von überall aus eine Log-Zeile schreiben -- vorausgesetzt das loggen selbst schlägt nicht fehl. Diese Möglichkeit will ich bei meinen weiteren Betrachtungen außer Acht lassen.
Was haltet ihr davon eine Kindklasse von
Exception zu erzeugen, die sich selbst loggt, d.h. wenn ich
raise Exception.Create('Blub')
aufrufe, wird in der Create-Methode der LogController aufgerufen, der dann die Nachricht samt Typ der
Exception loggt. Dies ist natürlich der einfachste Fall, es können auch mehrere Informationen geloggt werden, da die Create-Methode überschrieben werden kann.
Nun eure Meinungen zu dieser Idee?!
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)