spring集成Log4j以及log4j配置简要说明
Spring集成:
web.xml中配置log4j
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>WEB-INF/log4j.xml</param-value>
</context-param>
<!-- 加载Spring框架中的log4j监听器Log4jConfigListener -->
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
pom.xml
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.13</version>
</dependency>
==================================================================================================================
log4j 基本概念

Logger : 日志输出器,提供输出日志功能。
Appender : 日志目的地,用来定义日志目的地对象。
几种常见的Appender,前两种比较常用:
ConsoleAppender: 控制台作为日志输出地
DailyRollingFileAppender:每天产生一个日志文件
FileAppender: 文件作为日志输出地
RollingFileAppender: 日志文件的大小受到限制,当内容超出最大的限制时,该文件将向上滚动
PatternLayout :日志布局,用于定义日志格式
log4j.xml实际配置
<!-- 控制台的日志记录 -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="encoding" value="UTF-8" />
<param name="target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %c{2}(%L) - %m%n" />
</layout>
</appender>
<!-- 默认 -->
<!-- 输出到日志文件 每天一个日志 -->
<appender name="DEFAULT-APPENDER" class="org.apache.log4j.DailyRollingFileAppender">
<!-- 设置File参数:日志输出文件名 -->
<param name="file" value="/neworiental/web/log/common-default.log" />
<!-- 设置是否在重新启动服务时,在原有日志的基础添加新日志 -->
<param name="append" value="true" />
<!-- 编码格式 -->
<param name="encoding" value="UTF-8" />
<!-- 设置输出文件项目和格式 -->
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %c{2} - %m%n" />
</layout>
</appender>
<!-- error日志 -->
<!-- 输出到日志文件 每天一个日志 -->
<appender name="ERROR-APPENDER" class="org.apache.log4j.DailyRollingFileAppender">
<param name="file" value="/neworiental/web/log/common-error.log" />
<param name="append" value="true" />
<param name="encoding" value="UTF-8" />
<!-- 日志级别 -->
<param name="threshold" value="error" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %c{2}(%L) - %m%n" />
</layout>
</appender>
<!-- [公共Logger] 控制台STDOUT - STDOUT -->
<logger name="STDOUT" additivity="false">
<level value="INFO" />
<appender-ref ref="console" />
<appender-ref ref="goodhope-info" />
</logger>
<!-- 应用路径[Logger] 默认 -->
<logger name="路径:要输出哪个文件下的日志" additivity="false">
<appender-ref ref="console" />
<appender-ref ref="DEFAULT-APPENDER" />
<appender-ref ref="ERROR-APPENDER" />
</logger>
<root>
<level value="info" />
<appender-ref ref="console" />
<appender-ref ref="DEFAULT-APPENDER" />
<appender-ref ref="ERROR-APPENDER" />
</root>
收藏文章数量从多到少与“把书读薄”是一个道理
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步