所以我编写了大量代码,大部分都有以下几行
public <method_constraint> <methodname>(<some args>) {
try {
// do some logic here
} catch(Exception e) {
// do some logic here
} finally {
//do some logic here
}
}
其中一些捕获行有e.printStackTrace();
,而其中一些没有。{/ p>
我正在寻找SpringAOP来创建一些JoinPoints和PointCuts来处理它。 反正我是否真的记录了在没有函数抛出异常的情况下捕获的异常?
我想在这里实现的是每当我有一个'catch'行时,我想在该捕获行上记录异常的stacktrace。
这可能吗?
这是我现有的一个方面。 这会记录所有进行的方法调用:
@Aspect
@Component
public class MethodCallAspect {
private static DebugManager logger = DebugManager.getInstance(MethodCallAspect.class);
@Before("execution(* com.cistera..*(*))")
public void loggingAdvice(JoinPoint joinPoint) {
StringBuilder methodCall = new StringBuilder(joinPoint.getTarget().getClass().toString()).append(" - ").append(joinPoint.getSignature().getName());
logger.debug(methodCall.toString());
}
}
PS:我可以进入每个类并从每个'catch'行记录stacktrace,但是这将是一个痛苦的,必须更新大量的代码。
谢谢。