Logger日志级别介绍及相关配置文件

xiaoxiao2021-02-28  25

一.Logger日志介绍

日志记录器(Logger)是日志处理的核心组件。log4j具有5种正常级别(Level)。日志记录器(Logger)的可用级别Level (不包括自定义级别 Level), 以下内容就是摘自log4j API (http://jakarta.apache.org/log4j/docs/api/index.html):

static Level WARN

WARN level表明会出现潜在错误的情形。

static Level ERROR

ERROR level指出虽然发生错误事件,但仍然不影响系统的继续运行。

static Level FATAL

FATAL level指出每个严重的错误事件将会导致应用程序的退出。

另外,还有两个可用的特别的日志记录级别: (以下描述来自log4j APIhttp://jakarta.apache.org/log4j/docs/api/index.html):

static Level ALL

ALL Level是最低等级的,用于打开所有日志记录。

static Level OFF

OFF Level是最高等级的,用于关闭所有日志记录。

日志记录器(Logger)的行为是分等级的。如下表所示:

分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。Log4j建议只使用四个级别,优先级从高到低分别是 ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来,也是说大于等于的级别的日志才输出。

 

日志记录的级别有继承性,子类会记录父类的所有的日志级别。

二.logger日志设置:

1、加包:log4j-1.2.16.jar  一般还会加入 commons-logging-1.1.1.jar

2、在CLASSPATH 下建立log4j.properties

三.配置文件

<?xml version="1.0" encoding="UTF-8"?>  

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">   <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">            <!-- 业务日志,生产环境使用 -->     <appender name="FILE_LOG" class="org.apache.log4j.DailyRollingFileAppender">         <param name="encoding" value="utf-8"/>         <param name="Threshold" value="ERROR"/>         <param name="File" value="/logs/web/appstore/error.log" />         <param name="DatePattern" value="'_'yyyy-MM-dd" />         <param name="Append" value="true" />         <layout class="org.apache.log4j.PatternLayout">             <param name="ConversionPattern" value="%d [%x] %t [%-5p] (%F,%L) - %m%n" />         </layout>     </appender>          <appender name="FILE_TIME_LOG" class="org.apache.log4j.DailyRollingFileAppender">         <param name="encoding" value="utf-8"/>         <param name="Threshold" value="DEBUG"/>         <param name="File" value="/logs/web/appstore/appstore.log" />         <param name="DatePattern" value="'_'yyyy-MM-dd" />         <param name="Append" value="true" />         <layout class="org.apache.log4j.PatternLayout">             <param name="ConversionPattern" value="%d [%x] %t [%-5p] (%F,%L) - %m%n" />         </layout>     </appender>     <!-- 控制台日志,开发阶段使用--> <!--     <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">         <param name="Target" value="System.out" />         <param name="Threshold" value="DEBUG"/>         <layout class="org.apache.log4j.PatternLayout">             <param name="ConversionPattern" value="%d [%x] %t [%-5p](%c %F,%L) - %m%n" />         </layout>     </appender> -->     <!-- 默认的异步文件日志输出,生产环境都采用此appender -->     <appender name="ASYNC_FILE_TIME_LOG" class="org.apache.log4j.AsyncAppender">         <param name="BufferSize" value="256"/>         <param name="LocationInfo" value="true"/>         <appender-ref ref="FILE_TIME_LOG"/>     </appender>              <!-- 默认的异步文件日志输出,生产环境都采用此appender -->     <appender name="ASYNC_FILE_LOG" class="org.apache.log4j.AsyncAppender">         <param name="BufferSize" value="256"/>         <param name="LocationInfo" value="true"/>         <appender-ref ref="FILE_LOG"/>     </appender>          <!-- console 异步日志,开发环境都使用此appender,方便调试 --> <!--     <appender name="ASYNC_CONSOLE" class="org.apache.log4j.AsyncAppender">         <param name="BufferSize" value="64"/>         <param name="LocationInfo" value="true"/>         <appender-ref ref="CONSOLE"/>     </appender> -->     <!-- 日志打印sql --> <!-- <category name="org.hibernate.SQL"> --> <!--         <param name="additivity" value="false"/> --> <!--         <priority value="DEBUG" /> --> <!--         <appender-ref ref="ASYNC_FILE_TIME_LOG" /> --> <!--     </category> -->     <category name="com.newland">         <param name="additivity" value="false"/>         <priority value="DEBUG" />         <!-- <appender-ref ref="ASYNC_CONSOLE" /> -->         <appender-ref ref="ASYNC_FILE_LOG" />         <!-- 引用日志模板 -->         <appender-ref ref="ASYNC_FILE_TIME_LOG" />     </category>     <category name="org.ohuyo.libra">         <param name="additivity" value="false"/>         <priority value="DEBUG" />         <!-- <appender-ref ref="ASYNC_CONSOLE" /> -->         <appender-ref ref="ASYNC_FILE_LOG" />         <!-- 引用日志模板 -->         <appender-ref ref="ASYNC_FILE_TIME_LOG" />     </category>     <category name="org.apache.struts2">         <param name="additivity" value="false"/>         <priority value="INFO" />        <!--  <appender-ref ref="ASYNC_CONSOLE" /> -->         <appender-ref ref="ASYNC_FILE_LOG" />         <!-- 引用日志模板 -->         <appender-ref ref="ASYNC_FILE_TIME_LOG" />     </category>     <root>         <priority value="INFO" />         <!-- <appender-ref ref="ASYNC_CONSOLE" /> -->         <appender-ref ref="ASYNC_FILE_LOG" />         <!-- 引用日志模板 -->          <appender-ref ref="ASYNC_FILE_TIME_LOG" />     </root> </log4j:configuration> 
转载请注明原文地址: https://www.6miu.com/read-2300184.html

最新回复(0)