1.简介
上一篇宏哥介绍是如何使用logback将日志输出到控制台中,但是如果需要发给相关人需要你拷贝出来,有时候由于控制台窗口的限制,有部分日志将会无法查看,因此我们还是需要将日志输出到文件中,因此今天主要介绍和分享如何使用logback将日志输出到文件中。
上一篇测试环境已经准备好了,今天我们直接进入主题开始实践。
2.项目实战
2.1日志输出到文件中
1.新建logback.xml或logback-test.xml(优先级高)文件中添加如下图所示内容:
2.logback.xml参考代码
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="fileAppender" class="ch.qos.logback.core.FileAppender"> <file>./hg_logs/bjhg.log</file> <encoder><!-- 必须指定,否则不会往文件输出内容 --> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n</pattern> </encoder> <append>true</append> <prudent>false</prudent> </appender> <!-- name值可以是包名或具体的类名:该包(包括子包)下的类或该类将采用此logger --> <logger name="testSuites.TestLogback" level="INFO"> <appender-ref ref="fileAppender" /> </logger> <!-- root的默认level是DEBUG --> <root level="DEBUG"> <appender-ref ref="fileAppender" /> </root> </configuration>
3.新建一个测试类:TestLogback,测试日志输出到文件中。宏哥这里还继续使用上一篇的测试类。
2.2运行代码
1.运行代码,右键Run AS->Java Appliance,控制台输出,如下图所示:
2.运行代码后打开日志文件,如下图所示:
2.3输出日志到文件(滚动)
实际生产中,每天都有大量的日志生成,单个文件(FileAppender)已经不能满足要求,RollingFileAppender继承了FileAppender,并提供了更多的功能:
(1)每天生成一个日志文件
(2)将前一天的日志重命名为包含日期的格式
(3)根据需要,删除过期历史日志
1.新建logback.xml或logback-test.xml(优先级高)文件中添加如下图所示内容:
2.logback.xml参考代码
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="rollingAppender" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>./hg_logs/bjhg.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>./hg_logs/bjhg-%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder><!-- 必须指定,否则不会往文件输出内容 --> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n</pattern> </encoder> <append>false</append> <prudent>false</prudent> </appender> <!-- name值可以是包名或具体的类名:该包(包括子包)下的类或该类将采用此logger --> <logger name="testSuites.TestLogback" level="INFO"> <appender-ref ref="rollingAppender" /> </logger> <!-- root的默认level是DEBUG --> <root level="DEBUG"> <appender-ref ref="rollingAppender" /> </root> </configuration>
3.新建一个测试类:TestLogback,测试日志输出到文件中。宏哥这里还继续使用上一篇的测试类。
2.4运行代码
1.运行代码,右键Run AS->Java Appliance,控制台输出,如下图所示:
2.运行代码后打开日志文件,如下图所示:
3.小结
1.没有输出日期的日志文件,这是因为第二天才会输出,如果你当天想看一下,那就将自己电脑的时间修改成明天,运行代码即可。
2.修改时间后还不行,看一下你的xml文件中是否配置了文件大小的,如果有,注释掉即可。
好了,时间也不早了,今天就分享和讲解到这里,希望对您有所帮助,感谢您耐心地阅读!
每天学习一点,今后必成大神-
往期推荐(由于跳转参数丢失了,所有建议选中要访问的右键,在新标签页中打开链接即可访问)或者微信搜索: 北京宏哥 公众号提前解锁更多干货。
Appium自动化系列,耗时80天打造的从搭建环境到实际应用精品教程测试
Python接口自动化测试教程,熬夜87天整理出这一份上万字的超全学习指南
Python+Selenium自动化系列,通宵700天从无到有搭建一个自动化测试框架
Java+Selenium自动化系列,仿照Python趁热打铁呕心沥血317天搭建价值好几K的自动化测试框架
Jmeter工具从基础->进阶->高级,费时2年多整理出这一份全网超详细的入门到精通教程
Fiddler工具从基础->进阶->高级,费时100多天吐血整理出这一份全网超详细的入门到精通教程
Pycharm工具基础使用教程