标签:
最下面有log4j的详解及配置步骤
步骤一、导入相应的jar包(具体参看下一篇博文)
步骤二、修改WEB.XML文件,内容如下:
<?xml version="1.0"
encoding="UTF-8"?>
<web-app
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0“>
<!– 欢迎页面-->
<welcome-file-list>
<welcome-file>test.jsp</welcome-file>
</welcome-file-list>
<!-- WebApp Root
-->
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>SSH</param-value>
</context-param>
<!-- Spring Encoding Filter -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<!-- Spring Encoding Filter Mapping
-->
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Struts2 Filter -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<!-- Struts2 Filter Mapping -->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Log4j 日志系统本地信息的配置 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
<!-- Spring Log4j Listener -->
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
<!-- Spring 配置文件的本地路径 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- 此位置相对于:部署后的项目的类路径
。多个文件逗号分隔-->
<param-value>classpath:applicationContext.xml</param-value>
<!-- 此位置相对于:部署后的项目的类路径
。多个文件逗号分隔
<param-value>/WEB-INF/applicationContext.xml</param-value>-->
</context-param>
<!– Spring配置信息加载监听器 Context Listener
-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!-- Spring Web Request Listener
-->
<listener>
<listener-class>
org.springframework.web.context.request.RequestContextListener
</listener-class>
</listener>
<!-- Spring 防止内存溢出Introspector Cleanup Listener
-->
<listener>
<listener-class>
org.springframework.web.util.IntrospectorCleanupListener
</listener-class>
</listener>
</web-app>
第三步:添加LOG4J的配置文件(Log4j配置文件名:log4j.properties,内容:)Log4j的官网下载log4组件,官网地址http://logging.apache.org/log4j/
# Set The
RootLogger,设置日志系统消息输出的优先级(从高到低:ERROR、WARN、INFO、DEBUG)
log4j.rootLogger=debug,console,html,txt
# Direct Log Messages To Console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd
HH:mm:ss} %p %c:%L - %m%n
#html也可以使用相对路径:${SSH}/logs/app.log (其中SSH是上面配置的web
root)
log4j.appender.html=org.apache.log4j.RollingFileAppender
log4j.appender.html.File=c:/log.html
log4j.appender.html.MaxFileSize=900KB
log4j.appender.html.MaxBackupIndex=1
log4j.appender.html.layout=org.apache.log4j.HTMLLayout
log4j.appender.html.layout.ConversionPattern=%d{yyyy-MM-dd
HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n
#\u6587\u672c\u6587\u4ef6\u8f93\u51fa\u6e90
log4j.appender.txt=org.apache.log4j.RollingFileAppender
log4j.appender.txt.File=c:/log.txt
log4j.appender.txt.MaxFileSize=500KB
log4j.appender.txt.MaxBackupIndex=1
log4j.appender.txt.layout=org.apache.log4j.PatternLayout
log4j.appender.txt.layout.ConversionPattern=%d{yyyy-MM-dd
HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n
#
org.hibernate类在不小于debug模式下回输出日志
log4j.logger.org.hibernate=debug
# org.hibernate.SQL类在不小于debug模式下回输出日志
log4j.logger.org.hibernate.SQL=debug
# Log Schema Export Update
log4j.logger.org.hibernate.tool.hbm2ddl=debug
大体步骤已经完成
##########################################################################################################################################
接下来介绍log4j的一些基础知识:
一.Log4j的优点
Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送地;我们也可以控制每一条日志的输出格式;通过定义每一条
日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
二、使用log4j的步骤
1、导入log4.jar包到类路径下(web项目导入到WebRoot\WEB-INF\lib下)
2、定义配置文件log4j.properties
Log4j支持两种配置文件格式,一种是XML格式的文件,一种是Java特性文件log4j.properties(键=值)。下面将介绍使用log4j.properties文件作为配置文件的方法:
Log4j由三个重要的组件构成:日志信息的优先级(即配置根日志记录器),日志信息的输出目的地类型,日志信息的输出格式。日志信息的优先级从高到低有FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL,分别用来指定这条日志信息的重要程度;日志信息的输出目的地类型指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容。
1)配置根日志记录器(log4j.rootLogger)
根记录器中包含了两部分内容:日志信息的优先级和输出目类型的地别名。
格式如下:
log4j.rootLogger = [ level
] , appenderName1, appenderName2
说明:Log4j建议只使用四个级别,DEBUG<INFO<WARN<ERROR<FATAL,如果一条日志消息的级别大于等于配置文件的级别,就会有日志记录,在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关;其中appenderName1,appenderName2是输出目的地别名,可以自定义的。
2)配置输出目的地类型(总的来说有:控制台和文件)
格式:
log4j.appender.appenderName1 =
appender类型
log4j常用的集中appender类型:
org.apache.log4j.ConsoleAppender(控制台)
org.apache.log4j.FileAppender(文件)
org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
org.apache.log4j.net.SMTPAppender(邮件发送日志)
org.apache.log4j.jdbc.JDBCAppender
输出到数据库
说明:如果输出到文件,则要指定文件位置及文件名:
log4j.appender.appenderName1.file = 文件位置/文件名
如果使用DailyRollingFileAppender类型,可以进行时间配置:
如:log4j.appender.FILE.DatePattern=‘.‘yyyy-MM-dd
DailyRollingFileAppender
标签:
原文地址:http://www.cnblogs.com/kabi/p/5182075.html