【Selenium-WebDriver自学】Log4J的设置(十五)

==========================================================================================================

    写在前面:

    任何一个项目离不开日志,所以自动化测试项目也不例外。

    有效的日志可以帮助判断执行过程和记录。

==========================================================================================================

http://blog.csdn.net/u011794238/article/details/50720117

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
    <!--log4j.xml 配置文件 优先于 log4j.properties 配置文件 -->  
    <!-- * 1. 一个appender子元素定义一个日志输出目的地 * 2. 一个logger子元素定义一个日志写出器 -->  
    <!-- ========================== 自定义输出格式说明================================ -->  
    <!-- %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL -->  
    <!-- %r 输出自应用启动到输出该log信息耗费的毫秒数 -->  
    <!-- %c 输出所属的类目,通常就是所在类的全名 -->  
    <!-- %t 输出产生该日志事件的线程名 -->  
    <!-- %n 输出一个回车换行符,Windows平台为“/r/n”,Unix平台为“/n” -->  
    <!-- %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS} -->  
    <!-- 输出类似:2002年10月18日 22:10:28,921 -->  
    <!-- %l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main(TestLog4.java:10) -->  
    <!-- ========================================================================== -->  
  
    <!-- ========================== 输出方式说明================================ -->  
    <!-- Log4j提供的appender有以下几种: -->  
    <!-- org.apache.log4j.ConsoleAppender(控制台), -->  
    <!-- org.apache.log4j.FileAppender(文件), -->  
    <!-- org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), -->  
    <!-- org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), -->  
    <!-- org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方) -->  
    <!-- ========================================================================== -->  
    <!-- 输出到日志文件 每天一个日志 -->  
    <appender name="fileAppender" class="org.apache.log4j.DailyRollingFileAppender">  
        <!-- Threshold屏蔽级别之下的日志输出 -->  
        <param name="Threshold" value="INFO" />  
        <param name="encoding" value="UTF-8" />  
        <param name="File" value="log/videoyi_autotest.log" />  
        <param name="DatePattern" value="'_'yyyy-MM-dd'.log'" />  
        <layout class="org.apache.log4j.PatternLayout">  
            <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss:SSS}] [%c] [%p] [%L] [%m]%n" />  
        </layout>  
    </appender>     
    
    <!-- 输出到控制台 -->  
    <appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss:SSS}] [%c] [%p] [%L] [%m]%n" />
        </layout>
    </appender>
    
    <!-- 日志的总开关设置 包括日志级别和 appender -->  
    <!-- logger的作用: 1.[name属性]:指定你定义Logger对象时候的name -->  
    <!-- 2. additivity : children-logger是否使用 rootLogger的配置, additivity在log4j默认为true。 -->  
    <!-- 这解释了为什么有些时候,一个日志信息在屏幕上会有多次输出。 -->  
    <!-- 3.还可以指定level(输出级别)、appender-ref(指定哪个append) -->  
    <root>
        <level value="INFO"/>
        <appender-ref ref="fileAppender"/>
        <appender-ref ref="consoleAppender"/>
    </root>
</log4j:configuration>
原文地址:https://www.cnblogs.com/conquerorren/p/8257280.html