在大学垒代码时,遇到程序错误,输出不是预计的情况时,你是怎么解决的呢?我的解决办法就是到处System.out.pringln();,打出当时的变量值,一点一点找哪里出错了。结果有的时候就忘了到底在哪里添加了用于找错的输出语句,然后就去不掉多余的输出了,然后就各种抓狂了。以及等等很多情况吧,不知道你们遇到过吗?步入职场后,逐渐接触到了日志这个概念,虽然之前也听说过,但却不了解其真正用途。又一次在心里痛骂了大学的教育之后,我开始自学目前公司在用的日志工具——logback。
日志记录了程序的运行状态,输出了你指定需要输出的内容,能够方便快捷的定位出错的位置和原因。那么怎么使用logback呢,下面来简单介绍一下:首先需要导入第三方jar包,分别为logback-classic-1.0.6.jar,logback-core-1.0.6.jar,slf4j-api-1.6.4.jar
下载地址
slf4j:http://www.slf4j.org/download.html
logback:http://logback.qos.ch/download.html
Logback 分为三个模块:logback-core,logback-classic,logback-access(我们只用到前两个)
logback-core 是核心;
logback-classic 改善了 log4j,且自身实现了 SLF4J API,所以即使用 Logback 你仍然可以使用其他的日志实现,如原始的 Log4J,java.util.logging 等;
logback-access 让你方便的访问日志信息,如通过 http 的方式。
将以上3个jar包导入工程后,需要配置logback.xml文件,告诉logback应该怎么工作。所以在src上右键新建一个xml文件,命名为logback.xml。关于logback.xml应该如何配置,其中的标签含义等,请阅读下列文章,在此感谢分享了这些文章的原作者。
logback 常用配置详解(一)<configuration> and <logger>
配置完成后,我们即可在程序中应用logback进行日志输出,其方便快捷需要大家慢慢体验了。给一个使用logback的例子,该例子即使不配置logback.xml也可以运行,logback采用了默认配置直接输出到了控制台:
1 import org.slf4j.Logger; 2 import org.slf4j.LoggerFactory; 3 4 public class LogbackTest { 5 private static final Logger debugLogger = LoggerFactory.getLogger(LogbackTest.class); 6 public static void main(String[] args) { 7 debugLogger.debug("debug thing"); 8 debugLogger.warn("warn thing"); 9 } 10 }
再放一个logback.xml的配置实例
1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <configuration> 4 <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> 5 <encoder> 6 <pattern>%d{MMdd.HHmmss.SSS} [%-24t] %-5p L:%-3L %-22c{0} - %m%n</pattern> 7 </encoder> 8 9 <!-- 只输出level级别的日志 --> 10 <filter class = "ch.qos.logback.classic.filter.LevelFilter"> 11 <level>INFO</level> 12 <onMatch>ACCEPT</onMatch> 13 <onMismatch>DENY</onMismatch> 14 </filter> 15 </appender> 16 17 <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> 18 <File>log/server.log</File> 19 <encoder> 20 <pattern>%d{MMdd.HHmmss} [%-22t] %-5p L:%-3L %-22c{0} - %m%n</pattern> 21 </encoder> 22 23 <!-- 只输出level级别以上的日志 --> 24 <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 25 <level>INFO</level> 26 </filter> 27 28 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 29 <fileNamePattern>log/server.log.%d{yyyyMMddHH}</fileNamePattern> 30 </rollingPolicy> 31 </appender> 32 33 <logger name="org.logback.test.LogbackTest" level="DEBUGE" /> 34 35 <root level="DEBUGE"> 36 <appender-ref ref="FILE"/> 37 <appender-ref ref="stdout"/> 38 </root> 39 </configuration>
输出如下:
0402.153319.903 [main ] INFO L:30 LogbackTest - info thing
通过日志的输出,我们能够很快的定位是哪个类的哪行出现了问题。
相关推荐
适用于java中的Logback日志框架
扩展logback将日志输出到Kafka实例源码,详情请参见博文:http://blog.csdn.net/l1028386804/article/details/79135948
这个代码实现了一个简单的应用程序,并使用了Logback日志框架来记录程序的运行日志。首先,我们通过调用LoggerFactory.getLogger()方法创建了一个Logger对象,用于记录应用程序的日志信息。然后,在主函数中,我们...
springboot+logback输出日志文件1
每次日志输出到文件都会进行一次磁盘IO,在多应用的时候这种效果会导致一定的线程运行延迟,所以可以采用异步的方式处理。 采用异步写日志的方式,通过不让主线程去写日志文件而减少磁盘IO,避免并发下造成线程阻塞...
Logback日志工具
这是logback日志输出需要的jar包,以及最基础的logback.xml配置
在日常工程开发中,日志是非常重要的一部分,通过日志可以迅速定位线上问题,日志框架也有很多选择,日志框架Logback和Log4j是同一个作者,Logback相比于Log4j,性能提高了10倍以上的性能,占用的内存也变小了,并且...
扩展logback将日志输出到Kafka实例扩展源码,详情参见博文:http://blog.csdn.net/l1028386804/article/details/79136841
logback日志的jar包和配置介绍:logback-classic-1.1.2.jar、logback-core-1.1.2.jar、slf4j-api-1.7.7.jar、logback.xml、rsframework.properties
Grails3配置logback日志.pdf
logback日志写logstash配置appender参考
Logback日志应用.mp4
logback日志配置文件的详细注解,介绍指定哪个java包或者java类输出日志,输出什么level的日志,日志的文件命名,路径等
LogBack日志的使用,有配置文件,详细的说明文档,所需要的jar包
几乎是网上 能找到的 日志脱敏的所有实现 1、基于正则表达式的 日志脱敏实现 ,扩展logback 、log4j 2、springmvc 返回报文脱敏。 3、基于注解方式的脱敏。 大家选择使用。
使用slf4j配置kafkaAppender写入日志到kafka列队 支持日志解析+过滤等扩展接口
logback做日志(代码演示和文档),logback做日志(代码演示和文档)
logback是在log4j的基础上衍生出来的日志管理技术,现在外面用的也非常广,这里给大家分享一个我们经常用的配置,我们公司项目中已经在使用了,亲测可行,需要的下载看看,希望对你有帮助
关闭HttpClient日志的logback文件