gpt4 book ai didi

java - 如何使用 Spring AOP 强制使用通用日志格式。想要附加一个字符串,例如每个记录器中的服务名称

转载 作者:太空宇宙 更新时间:2023-11-04 10:01:04 24 4
gpt4 key购买 nike

尝试了下面的示例,但它不适用于 spring。在编辑器中出现错误,例如“Spring 不支持调用切入点指示符”。

https://dzone.com/articles/enforcing-common-log-format

任何代码示例将不胜感激。

最佳答案

有很多方法可以做到这一点,这里是 1。

1) 创建注释以添加到需要添加日志记录的类/方法:

@Documented
@Target(ElementType.METHOD)
@Inherited
@Retention(RetentionPolicy.RUNTIME)
public @interface LogExecution {
}

2)创建一个方面来进行日志记录:

@Aspect
@Component
public class LogAspect {

private List<String> messages = new ArrayList<>();

@Around("@annotation(hello.LogExecution)")
public Object handelLogging(ProceedingJoinPoint joinPoint) throws Throwable {

Object proceed = null;
try {
// log before
proceed = joinPoint.proceed();
// log after
}
catch (Exception e) {
// log exception
throw e;
}
return proceed;
}
}

工作示例 here

关于java - 如何使用 Spring AOP 强制使用通用日志格式。想要附加一个字符串,例如每个记录器中的服务名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53484551/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com