springboot使用log4j

1.导入依赖

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-log4j</artifactId>
   <version>1.3.8.RELEASE</version>
</dependency>

2.排除springboot自带的日志工具

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter</artifactId>
   <exclusions><!-- 去掉默认日志配置logback -->
      <exclusion>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-logging</artifactId>
      </exclusion>
   </exclusions>
</dependency>

3.写log4j.properties文件

log4j.rootLogger=info,error,warn,stdout
##############打印到平台的日志##################
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#输出的信息格式
log4j.appender.stdout.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}-[%p:%X{traceID}]-(%C:%L) %m%n
##############WARN打印的文件的日志##################
log4j.appender.warn=org.apache.log4j.DailyRollingFileAppender
log4j.appender.tracking.Encoding=utf-8
log4j.appender.warn.layout=org.apache.log4j.PatternLayout
log4j.appender.warn.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}-[%p]-(%C:%L) %m%n
#输出文件位置
log4j.appender.warn.File=D:/log/log.txt
log4j.appender.warn.DatePattern='.'yyyy-MM-dd-HH
#mybatis显示SQL语句日志配置
log4j.logger.com.example.demo.mapper=DEBUG

4.简单测试

public class LogRecord implements HandlerInterceptor {
    //从日志工厂获取日志对象   
    private final Logger log = LoggerFactory.getLogger(LogRecord.class);
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        //请求开始时间
        DateTime reqTime = DateUtil.dateSecond();
        log.info("请求地址:{}", request.getRequestURL());
        log.info("请求类型:{}", request.getMethod());
        HandlerMethod handler1 = (HandlerMethod) handler;
        log.info("请求方法:{}", handler1.getMethod().getName());
        log.info("方法参数:{}", handler1.getMethod().getParameters());
        log.info("请求耗时:{}s", DateUtil.between(reqTime, DateUtil.dateSecond(), DateUnit.SECOND));
        return true;
    }
}

5.效果

控制台:

      

文件:

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值