springboot AOP全局拦截日志记录

Posted 狂风骤起

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot AOP全局拦截日志记录相关的知识,希望对你有一定的参考价值。

@Aspect
@Component
@Slf4j
public class WebLogAspect {
@Pointcut("execution(public * com.we.controller.*.*(..))")
public void webLog(){
}

@Before("webLog()")
public void doBefore(JoinPoint joinPoint) throws Throwable{
log.info("#######################请求开始#############################");
ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attributes.getRequest();
log.info("URL:"+request.getRequestURL().toString());
log.info("HTTP_METHOD:"+request.getMethod());
log.info("IP"+request.getRemoteAddr());
Enumeration<String> enu=request.getParameterNames();
while(enu.hasMoreElements()){
String name = enu.nextElement();
log.info("name:{},value:{}",name,request.getParameter(name));
}
}

@AfterReturning(returning ="ret",pointcut = "webLog()")
public void doAfterReturning(Object ret) throws Throwable{
log.info("Response:"+ret);
log.info("#######################请求结束#############################");
}


}































以上是关于springboot AOP全局拦截日志记录的主要内容,如果未能解决你的问题,请参考以下文章

Spring Boot 使用 Aop 实现日志全局拦截

SSH 下做一个spring AOP的 操作日志记录功能

用户操作拦截并作日志记录--自定义注解+AOP拦截

SpringBoot全局日志管理(AOP)

springboot整合aop全局日志管理

springboot+mybatis+dubbo+aop日志第三篇