java使用AOP切面获取请求日志并记录

}

3.AOP切面如下

package com.tjair.tjapi.config;

import com.alibaba.fastjson.JSON;

import com.alibaba.fastjson.JSONObject;

import com.tjair.common.log.TjapiLogVo;

import com.tjair.common.util.IPUtil;

import com.tjair.tjapi.feign.LogFeignService;

import com.tjair.tjapi.util.HttpHelper;

import io.swagger.annotations.ApiOperation;

import lombok.extern.slf4j.Slf4j;

import org.aspectj.lang.ProceedingJoinPoint;

import org.aspectj.lang.annotation.Around;

import org.aspectj.lang.annotation.Aspect;

import org.aspectj.lang.annotation.Pointcut;

import org.aspectj.lang.reflect.MethodSignature;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.context.annotation.Configuration;

import org.springframework.web.context.request.RequestAttributes;

import org.springframework.web.context.request.RequestContextHolder;

import org.springframework.web.context.request.ServletRequestAttributes;

import javax.servlet.http.HttpServletRequest;

import java.io.IOException;

import java.util.Date;

import java.util.Objects;

/**

  • @description 拦截所有控制器的返回,记录响应报文

  • @author unhejing

  • @date 2021-03-17 上午11:52:26

*/

@Aspect

@Configuration

@Slf4j

public class LogAspect {

@Autowired

private LogFeignService logFeignService;

public LogAspect() {

}

@Pointcut(“execution(public * com.tjair.tjapi.controller..(…))”)

public void pointCutMethod() {

}

// 声明环绕通知

@Around(“pointCutMethod()”)

public Object doAround(ProceedingJoinPoint pjp) throws Throwable {

Long startTime = System.currentTimeMillis();

  • 18
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值