springboot 框架计算每个方法执行时间,显示在日志中

本人微信 zf363133213 欢迎各位添加好友,共同探讨问题

加入aop的jar

    org.springframework.boot

    spring-boot-starter-aop

//代码如下

@Aspect

@Component

public class ServiceAspect {

    Logger logger = LoggerFactory.getLogger(ServiceAspect.class);

    @Pointcut("execution(* com.service.*.*.*ServiceImpl.*(..))")

     private void pointCutMethodService(){

    }

    @Around("pointCutMethodService()")

    public Object doAroundService(ProceedingJoinPoint pjp) throws Throwable{

    long begin = System.nanoTime();

    Object obj=pjp.proceed();

    long end =System.nanoTime();

    logger.info("调用Service方法:{},参数:{},执行耗时:{}纳秒,耗时:{}毫秒",

    pjp.getSignature().toString(),Arrays.toString(pjp.getArgs()),(end-begin),(end-begin)/1000000);

    return obj;

    }

}

你可能感兴趣的:(springboot 框架计算每个方法执行时间,显示在日志中)