私はアプリケーションを持っており、そこにはタイプ FooException をスローする約 100 の異なるクラスがあります。これらの例外はキャッチされて処理される場合もあれば、キャッチされずにバブルアップしてログに記録される場合もあります。
ただし、例外が最終的にどのように処理されるかに関係なく、FooException のすべての発生を特別なログ ファイルに送信できるようにしたいと考えています。これを実装する方法は何ですか?イベントリスナーパターンでどうにかできますか?
私はアプリケーションを持っており、そこにはタイプ FooException をスローする約 100 の異なるクラスがあります。これらの例外はキャッチされて処理される場合もあれば、キャッチされずにバブルアップしてログに記録される場合もあります。
ただし、例外が最終的にどのように処理されるかに関係なく、FooException のすべての発生を特別なログ ファイルに送信できるようにしたいと考えています。これを実装する方法は何ですか?イベントリスナーパターンでどうにかできますか?
type のすべての例外をキャッチし、FooException
それらを特別にログに記録して再スローできます。
try {
// throws exception
} catch (AnotherException e) {
//handle this one
} catch (FooException e) {
specialLog(e);
throw e;
} catch (YetAnotherException e) {
// handle
}
バブルアップしたいオカレンスに対してのみこれを行います。
すでに処理しているものについては、同じことを行いますが、再スローしないでください。