logback&lombok 简化日志处理

logback&lombok 简化日志处理

1      简介

1.1  Logback

相比较log4j,logback性能较好,且日志展现形式较美观。

1.2  Lombok

lombok 提供了简单注解的形式来简化Java代码

1.3  目的

使用lombok简化logback的使用

2      配置

2.1  lombok

详情见:http://blog.csdn.net/leeyuri/article/details/44560859

2.2  Logback

2.2.1  Maven

注:当前最新版本是1.1.2

[html]  view plain  copy
  1. <dependency>  
  2.    <groupId>ch.qos.logback</groupId>  
  3.    <artifactId>logback-classic</artifactId>  
  4.    <version>${logback-version}</version>  
  5. </dependency>  

2.2.2  Logback.xml

在${项目根目录}/src/main/resources目录下新建logback.xml

注:可以直接复用下面的配置。如果输出到数据库或email等,仅供参考。

[html]  view plain  copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <configuration>  
  3.      <!-- 日志保存路径为tomcat下面的logs下面的mobileLog文件夹,logback会自动创建文件夹,这样设置了就可以输出日志文件了  
  4.          <substitutionProperty name="logbase" value="${catalina.base}/logs/mobileLog/"  
  5.          /> -->  
  6.      <substitutionProperty name="logbase" value="${user.dir}/logs/ " />  
  7.      <!-- 这个是要配置输出文件的 -->  
  8.      <jmxConfigurator />  
  9.      <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">  
  10.          <layout class="ch.qos.logback.classic.PatternLayout">  
  11.               <pattern>%date [%thread] %-5level %logger{80} - %msg%n</pattern>  
  12.          </layout>  
  13.      </appender>  
  14.      <!-- 文件输出日志 (文件大小策略进行文件输出,超过指定大小对文件备份) -->  
  15.      <appender name="logfile"  
  16.          class="ch.qos.logback.core.rolling.RollingFileAppender">  
  17.          <Encoding>UTF-8</Encoding>  
  18.          <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">  
  19.               <File>${logbase}%d{yyyy-MM-dd}.log.html</File>  
  20.               <FileNamePattern>${logbase}.%d{yyyy-MM-dd}.log.html.zip  
  21.               </FileNamePattern>  
  22.          </rollingPolicy>  
  23.          <triggeringPolicy  
  24.               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">  
  25.               <MaxFileSize>2MB</MaxFileSize>  
  26.          </triggeringPolicy>  
  27.          <layout class="ch.qos.logback.classic.html.HTMLLayout">  
  28.               <pattern>%date%level%thread%10logger%file%line%msg</pattern>  
  29.          </layout>  
  30.      </appender>  
  31.      <!-- Output by Email -->  
  32.      <!--  
  33.      <appender name="Email" class="ch.qos.logback.classic.net.SMTPAppender">  
  34.          <SMTPHost>stmp host name</SMTPHost>  
  35.          <To>Email Address</To>  
  36.          <To>Email Address</To>  
  37.          <From>Email Address</From>  
  38.          <Subject>TESTING Email Function: %logger{20} - %m</Subject>  
  39.          <layout class="ch.qos.logback.classic.html.HTMLLayout">  
  40.               <pattern>%date%level%thread%10logger%file%line%msg</pattern>  
  41.          </layout>  
  42.      </appender> -->  
  43.    
  44.      <!-- Output to Database -->  
  45.      <!--  
  46.      <appender name="DB" class="ch.qos.logback.classic.db.DBAppender">  
  47.          <connectionSource class="ch.qos.logback.core.db.DriverManagerConnectionSource">  
  48.               <driverClass>com.mysql.jdbc.Driver</driverClass>  
  49.               <url>jdbc:mysql://localhost:3306/test</url>  
  50.               <user>root</user>  
  51.               <password>trend_dev</password>  
  52.          </connectionSource>  
  53.      </appender> -->  
  54.      <root>  
  55.          <level value="debug" />  
  56.          <appender-ref ref="stdout" />  
  57.          <appender-ref ref="logfile" />  
  58.      </root>  
  59.    
  60. </configuration>  

3      测试


[java]  view plain  copy
  1. import lombok.extern.slf4j.Slf4j;  
  2. import org.junit.Test;  
  3.    
  4. @Slf4j  
  5. public class TestLogback {  
  6.    @Test  
  7.    public void testLog(){  
  8.       log.info("纯粹做测试");  
  9.    }  
  10.    
  11. }  

 

4      效果展示



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值