前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《手把手教你》系列基础篇(九十)-java+ selenium自动化测试-框架设计基础-Logback实现日志输出-中篇(详解教程)

《手把手教你》系列基础篇(九十)-java+ selenium自动化测试-框架设计基础-Logback实现日志输出-中篇(详解教程)

作者头像
北京-宏哥
发布2022-04-27 18:56:21
2380
发布2022-04-27 18:56:21
举报

1.简介

上一篇宏哥介绍是如何使用logback将日志输出到控制台中,但是如果需要发给相关人需要你拷贝出来,有时候由于控制台窗口的限制,有部分日志将会无法查看,因此我们还是需要将日志输出到文件中,因此今天主要介绍和分享如何使用logback将日志输出到文件中。

上一篇测试环境已经准备好了,今天我们直接进入主题开始实践。

2.项目实战

2.1日志输出到文件中

1.新建logback.xml或logback-test.xml(优先级高)文件中添加如下图所示内容:

2.logback.xml参考代码

代码语言:javascript
复制
<?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参考代码

代码语言:javascript
复制
<?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文件中是否配置了文件大小的,如果有,注释掉即可。

  好了,时间也不早了,今天就分享和讲解到这里,希望对您有所帮助,感谢您耐心地阅读!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-04-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.简介
  • 2.项目实战
    • 2.1日志输出到文件中
      • 2.2运行代码
        •  2.3输出日志到文件(滚动)
          • 2.4运行代码
          • 3.小结
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档