【发布时间】:2012-04-25 10:50:38
【问题描述】:
我有一个来自Postsharp 的multicast OnExceptionAspect,它应用于装配级别。这自然意味着所有方法在抛出异常时都会调用 Aspect。
在 Aspect 中,我正在记录异常详细信息包括参数值,当异常发生时,这是正常工作的。
但是,由于这适用于程序集中的所有方法,因此会为堆栈中的每个方法创建一个日志条目,因为每个方法都会出现异常。
我对如何防止这种情况一无所知,最初我打算比较异常(看看它是否相同),但这似乎很混乱。以前一定有人遇到过这个问题,有什么想法吗?
【问题讨论】:
-
预期的行为是什么?你不清楚这一点。
-
道歉。我希望能够在异常发生时记录方法的堆栈跟踪和参数。但我也希望它像往常一样向上传播堆栈(无需随后再次记录异常)。
标签: c# exception exception-handling log4net postsharp