spring mvc中如何集成log4j呢?
下文笔者讲述spring mvc中集成log4j的方法分享,如下所示:
步骤一、添加maven依赖
Log4j所需的jar包:commons-logging.jar和log4j.jar //直接依赖包,最新版本去maven网站找 <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.0.2</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.0.2</version> </dependency> //或者依赖slf4j <properties> <slf4j.api.version>1.7.5</slf4j.api.version> </properties> <dependencies> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>${slf4j.api.version}</version> </dependency> </dependencies>
步骤二、log4j配置
log4j日志的配置可以用log4j.xml,log4j.properties这2种形式配置//log4j.properties配置 ### 设置### log4j.rootLogger = WARN,stdout,D,E ### 输出信息到控制台 ### log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = [%p][%d{yyyy-MM-dd HH:mm:ss} %l] ?%m%n #log4j.appender.stdout = org.apache.log4j.ConsoleAppender #log4j.appender.stdout.Target = System.out #log4j.appender.stdout.layout = org.apache.log4j.PatternLayout #log4j.appender.stdout.layout.ConversionPattern = [%p][%d{yyyy-MM-dd HH:mm:ss} %l] ?%m%n #log4j.appender.stdout.layout.ConversionPattern = [%p][%d{yyyy-MM-dd HH:mm:ss} %l] ?%m%n ### 输出DEBUG 级别以上的日志到=D://logs/error.log ### #log4j.appender.D = org.apache.log4j.DailyRollingFileAppender log4j.appender.D = org.apache.log4j.RollingFileAppender log4j.appender.D.File = log/Wifi_sy/Wifi_sy_warn.log log4j.appender.D.Append = true log4j.appender.D.Threshold = WARN? log4j.appender.D.MaxFileSize = 10240KB log4j.appender.D.MaxBackupIndex = 3? log4j.appender.D.layout = org.apache.log4j.PatternLayout log4j.appender.D.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%c:%L:[%p]] %m%n ### 输出ERROR 级别以上的日志到=D://logs/error.log ### log4j.appender.E = org.apache.log4j.RollingFileAppender log4j.appender.E.File = log/Wifi_sy/Wifi_sy_err.log log4j.appender.E.Append = true log4j.appender.E.Threshold = ERROR? log4j.appender.E.MaxFileSize = 10240KB log4j.appender.E.MaxBackupIndex = 3? log4j.appender.E.layout = org.apache.log4j.PatternLayout log4j.appender.E.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss} [%l:[%p]] %m%n
步骤三web.xml配置
<context-param> <param-name>log4jConfigLocation</param-name> <param-value>classpath:log4j.properties</param-value><!-- log4j配置文件路径 --> </context-param> <!--log4jRefreshInterval为100000表示 开一条watchdog线程每10秒扫描一下配置文件的变化; --> <context-param> <param-name>log4jRefreshInterval</param-name> <param-value>100000</param-value> </context-param> <listener> <!-- 容器初始化(销毁)时开启(关闭)Log4j --> <!-- 1. 动态的改变记录级别和策略,不需要重启Web应用; 2. 把log文件定在 /WEB-INF/logs/ 而不需要写绝对路径。 --> <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> </listener>
log4j使用示例
获得logger 对象 private static final Logger logger=Logger.getLogger(Test.class); 打印日志 logger.fatal("致命错误"); logger.error("严重警告"); logger.warn("警告"); logger.info("普通信息"); logger.debug("调试信息");
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。