最近在 学习 logback相关内容,貌似这东西是log4j的升级,根据官方说法具体信息参见http://logback.qos.ch/documentation.html,其写文件速度是8或9个微秒,写数据库的时间也在几个毫秒。说是对多线程的日志写入的性能有了大幅度的提升。当前logback有以下几
最近在学习logback相关内容,貌似这东西是log4j的升级,根据官方说法具体信息参见http://logback.qos.ch/documentation.html,其写文件速度是8或9个微秒,写数据库的时间也在几个毫秒。说是对多线程的日志写入的性能有了大幅度的提升。当前logback有以下几个核心类库:
类库名称
是否必要
logback-access-1.0.13.jar 非必要
logback-classic-1.0.13.jar 必要
logback-core-1.0.13.jar 必要
slf4j-api-1.7.5.jar 必要
从其引入的类库可知它是依赖于slf4j的,而logback-access并非是logback的必备包,只有当你需要特殊的日志记录方式,比如socket、数据库方式等等。。
通过对其研究,我写了个测试程序由于logback是非侵入式的,因此这里列出其配置文件:
mqclearlog.log mqclearlog-%d{yyyy-mm-dd}.%i.log 100mb %msg%n
经测试其输出结果为:
引用
16:22:41,200 |-info in ch.qos.logback.classic.loggercontext[default] - could not find resource [logback.groovy]
16:22:41,200 |-info in ch.qos.logback.classic.loggercontext[default] - could not find resource [logback-test.xml]
16:22:41,200 |-info in ch.qos.logback.classic.loggercontext[default] - could not find resource [logback.xml]
16:22:41,201 |-info in ch.qos.logback.classic.loggercontext[default] - setting up default configuration.
16:22:41.247 [main] info chapters.configuration.myapp2 - entering application.
16:22:41.249 [main] debug chapters.configuration.foo - did it again!
16:22:41.249 [main] info chapters.configuration.myapp2 - exiting application.
之后通过阅读官方文档可知去掉”statusprinter.print(lc);“此句则不会打印logback的状态,于是我把其去掉了,可之后的输出结果还是和以前的一样,可官方文档上说只要配置文件正确就不会打印可还是有。后经确认为配置问题即
此句为将logback的状态信息打印到console上(一般为屏幕)将此去掉一切就都ok了。烦恼了好久的问题。