在开发中我们项目必然要配置日志的啦:
先说说常用的日志配置:
log4j
log4j2
logback
Logback 和 log4j 是非常相似的,如果你对 log4j 很熟悉,那对 logback 很快就会得心应手
|
无论从设计上还是实现上,Logback 相对 log4j 而言有了相对多的改进。不过尽管难以一一细数,这里还是列举部分理由为什么选择 logback 而不是 log4j。牢记 logback 与 log4j 在概念上面是很相似的,它们都是有同一群开发者建立。所以如果你已经对 log4j 很熟悉,你也可以很快上手 logback。如果你喜欢使用 log4j, 你也许会迷上使用 logback。
更快的执行速度
基于我们先前在 log4j 上的工作,logback 重写了内部的实现,在某些特定的场景上面,甚至可以比之前的速度快上 10 倍。在保证 logback 的组件更加快速的同时,同时所需的内存更加少。
|
|
充分的测试
Logback 历经了几年,数不清小时数的测试。尽管 log4j 也是测试过的,但是 Logback 的测试更加充分,跟 log4j 不在同一个级别。我们认为,这正是人们选择 Logback 而不是 log4j 的最重要的原因。人们都希望即使在恶劣的条件下,你的日记框架依然稳定而可靠。
logback-classic 中的登陆类自然的实现了 SLF4J。当你使用 [](http://logback.qos.ch/reasonsToSwitch.html#slf4j)logback-classic作为底层实现时,涉及到LF4J日记系统的问题你完全不需要考虑。更进一步来说,由于 [](http://logback.qos.ch/reasonsToSwitch.html#slf4j)logback-classic强烈建议使用SLF4J作为客户端日记系统实现,如果需要切换到log4j或者其他,你只需要替换一个jar包即可,不需要去改变那些通过
SLF4J API 实现的代码。这可以大大减少更换日记系统的工作量。
|
我就配置 LogBack 了
我就在之前多环境的基础上加了
首先在 resource 中添加 XML
logback-boot.xml 名字不可以是 logback.xml
logback-xxx.xml 随意
<pre name="code" class="html"><configuration>
<!-- %m输出的信息,%p日志级别,%t线程名,%d日期,%c类的全名,,,, -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d %p (%file:%line\)- %m%n</pattern>
<charset>GBK</charset>
</encoder>
</appender>
<appender name="baselog"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>log/base.log</File>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>log/base.log.%d.%i</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- or whenever the file size reaches 64 MB -->
<maxFileSize>64 MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<pattern>
%d %p (%file:%line\)- %m%n
</pattern>
<charset>UTF-8</charset> <!-- 此处设置字符集 -->
</encoder>
</appender>
<root level="info">
<appender-ref ref="STDOUT" />
</root>
<logger name="com.example" level="DEBUG">
<appender-ref ref="baselog" />
</logger>
</configuration>
项目结构:
还需要在 application.properties 中配置
1. #配置日志
2. logging.config=classpath:logback-boot.xml
这样的话, 日志就配置 OK 了。。。至于 Logback 日志 xml 自行百度吧。