公司的新平台最近日志总出问题:
- 满容量后不自动备份,并且把该日志内容全部刷掉。。
- 满容量后不自动备份,继续写,导致日志文件异常之大。。
关于log4j的配置,RollingFileAppender几年来都是这么用的没什么好说的,
问题原因我还没找到,但估计多少和JDK升级到1.6有关
分割线============================================
logback的主页,链接一下:http://logback.qos.ch/
logback是log4j的创始人开发的新一代日志组件,性能更好,功能更强大!
logback实现了SLF4J,所以我们可以直接依赖SLF4J的接口~~
需要的jar:
slf4j-api-1.6.3.jar;
logback-core-0.9.30.jar
logback-classic-0.9.30.jar
可选的jar:
logback-access-0.9.30.jar
slf4j的版本要求不高,看教程是1.6.2,我用的是1.6.3
logback-access这个是Web控制台,JavaEE的可以考虑试试。
调用:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Hello {
/**
* @param args
*/
public static void main(String[] args) {
Logger log = LoggerFactory.getLogger(Hello.class);
log.info("hello world");
}
}
注意,依赖的是SLF4J
然后运行一下就能看到效果了。
这里logback有一个默认的日志配置,如果classpath中找不到logback.xml或logback-test.xml,就会启用这个默认的配置。
关于logback的配置,总体思路和log4j类似,内置的日志类型更为丰富,详见:http://logback.qos.ch/manual/index.html
这里给一个我使用下来觉得不错的配置,供大家参考:
<configuration scan="true" scanPeriod="30 seconds">
<appender name="ROLLING"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<prudent>true</prudent>
<rollingPolicy
class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>
log/myApp-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxHistory>30</maxHistory>
<timeBasedFileNamingAndTriggeringPolicy
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<pattern>%date %level [%thread] %logger.%class{0}#%method [%file:%line] %msg%n</pattern>
</encoder>
</appender>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date %level [%thread] %logger.%class{0}#%method [%file:%line] %msg%n</pattern>
</encoder>
</appender>
<root level="info">
<appender-ref ref="STDOUT" />
</root>
<logger name="myApp">
<appender-ref ref="ROLLING" />
</logger>
</configuration>
最后说一下改造后的效果:
恩,非常理想,为啥我不早点用这好东西
分享到:
相关推荐
log4j-slf4j+logback1.3.0 共六个jar包
log4j 和 logback配置资源 log4j和logback相关架包.zip
十个log4j转移到LogBack的理由,接替log4j
几乎是网上 能找到的 日志脱敏的所有实现 1、基于正则表达式的 日志脱敏实现 ,扩展logback 、log4j 2、springmvc 返回报文脱敏。 3、基于注解方式的脱敏。 大家选择使用。
Mybatis日志Log4j与Logback
2. log4j2 的配置详解,JDBC 配置,CloseableThreadContext 的使用(自定义输出日志文件 例如 logback MDC) 3.logback 的XML配置与使用,MDC的使用,SiftingAppender,DBAppender(c3p0,druid) 详细查看代码:README.md ...
无论从设计上还是实现上,Logback相对log4j而言有了相对多的改进。所以下面这篇文章主要给大家介绍了关于如何将应用的log4j换成logback的相关资料,文中介绍的很详细,需要的朋友可以参考下。
NULL 博文链接:https://tristan-s.iteye.com/blog/1966020
快速了解常用日志技术(JCL、Slf4j、JUL、Log4j、Logback、Log4j2)-附件资源
Log4j 组件 使用 Logback 由Log4j之父做的另一个开源项目,业界中称作logj后浪,一个可靠、同样且灵活的java日志框架。 Logback组件 Logback配置 Logback输出格式 使用 Log4j2 特征 使用 日志门面技术 JCL 使用 SLF4...
https://github.com/tomcat-slf4j-logback/tomcat-slf4j-logback上的jar与源码,网络不好,下载不易,特此分享。包括: logback-1.2.3.zip Tomcat7.0.82\tomcat-juli-7.0.82-slf4j-1.7.25-logback-1.2.3.zip Tomcat...
Slf4j+logback实现logback测试,Slf4j+logback实现logback测试
commons-logging-1.2.jar、log4j-1.2.17.jar、logback-classic-1.1.2.jar、logback-core-1.1.2.jar、slf4j-api-1.7.12.jar、slf4j-jcl-1.7.12.jar、slf4j-simple-1.7.12.jar
Apache Log4j 2 源代码( apache-log4j-2.17.1-src.zip) 是对 Log4j 的升级,它比其前身 Log4j 1.x 提供了重大改进,并提供了 Logback 中可用的许多改进,同时修复了 Logback 架构中的一些固有问题。修复了安全漏洞...
slf4j,logback.xml
Apache Log4j 2 源代码( apache-log4j-2.17.1-src.tar.gz) 是对 Log4j 的升级,它比其前身 Log4j 1.x 提供了重大改进,并提供了 Logback 中可用的许多改进,同时修复了 Logback 架构中的一些固有问题。修复了安全...
NULL 博文链接:https://wwwzhouhui.iteye.com/blog/391950
Apache Log4j 2 (apache-log4j-2.17.1-bin.zip)是对 Log4j 的升级,它比其前身 Log4j 1.x 提供了重大改进,并提供了 Logback 中可用的许多改进,同时修复了 Logback 架构中的一些固有问题。修复了安全漏洞 CVE-...
Apache Log4j 2 (apache-log4j-2.17.1-bin.tar.gz)是对 Log4j 的升级,它比其前身 Log4j 1.x 提供了重大改进,并提供了 Logback 中可用的许多改进,同时修复了 Logback 架构中的一些固有问题。修复了安全漏洞 CVE-...