没办法,用别人的虚拟空间,要保存日志,总不能用Log4j的绝对路劲吧,所以想到的是子类重写RollingFileAppender,将里面的路径改为绝对路径即可。
本人懒,就没去做那么无聊的事情,庆幸的是Spring提供了Log4j相关的一些配置,拿来吧!
在WEB.XML中配置:
<!-- LOG4J APPENDER FILE PATH START -->
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>webApp.root</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
<!-- LOG4J APPENDER FILE PATH END -->
然后log4j.properties里面指定文件路径: log4j.appender.RF.File = ${webApp.root}/WEB-INF/logs/refresh.log,我是将日志保存在WEB-INF的logs文件夹下,大家可以自行修改!
分享到:
相关推荐
### Log4j中配置日志文件相对路径方法详解 #### 概述 在软件开发过程中,日志记录是一项重要的功能,它有助于开发者调试程序、监控应用程序的运行状态以及追踪问题。`Log4j`作为一款优秀的日志管理工具,被广泛应用...
- `log4jTest`可能是包含测试代码或示例的目录,用于演示如何使用Log4j按功能保存日志。在这些代码中,你会看到如何创建Logger实例,以及如何根据配置文件将日志输出到对应的文件。 总结,Log4j提供了一种灵活的...
在给定的压缩包文件中,包含的是Log4j的1.2.17版本,这是一个相对较为老旧但仍然被许多项目使用的版本。此版本包含了log4j-1.2.17.jar主库文件,以及一个依赖包commons-logging-1.2.jar,这两个组件是Log4j正常运行...
《深入理解log4j-api-2.17.1.jar与log4j-core-2.17.1.jar》 在Java开发中,日志管理是不可或缺的一部分,它帮助我们跟踪程序运行状态、定位错误和调试问题。Log4j作为一款广泛使用的日志框架,历经多次迭代,现在...
log4j.appender.A1=org.apache.log4j.FileAppender log4j.appender.A1.File=/path/to/log/file.log log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%d{...
log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=/path/to/app.log log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.ConversionPattern=%d{...
通过修改`log4j.properties`,无需修改代码,就可以灵活调整日志策略。 以下是一些`log4j.properties`配置文件中的关键元素: - `appender`: 定义日志输出的目标,如`ConsoleAppender`(控制台)、`FileAppender`...
log4j.appender.testfile=org.apache.log4j.FileAppender log4j.appender.testfile.File=c\:\\file.html log4j.appender.testfile.Append=false log4j.appender.testfile.layout=org.apache.log4j.HTMLLayout log4j...
log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=/var/log/app.log log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.ConversionPattern=%d{...
此外,Log4j还支持自定义日志级别,以及根据日志级别动态调整输出策略。例如,我们可以在配置文件中定义一个自定义的日志级别`DEBUG2`,并在代码中使用这个级别: ```properties log4j.additivity.DEBUG2=false log...
log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=/path/to/logfile.log log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.ConversionPattern=%...
四、Log4j-1.2.16的优化与维护 1. **日志级别管理**:在生产环境中,通常会将日志级别设置为WARN或ERROR,以减少不必要的日志输出,提高性能。 2. **日志分割**:为了便于管理和分析,可以配置Log4j按日期分割日志...
在配置文件(通常是log4j.properties或log4j.xml)中,我们可以设置日志级别(DEBUG、INFO、WARN、ERROR等)、输出目的地(如ConsoleAppender、FileAppender等)、以及自定义的布局格式(如PatternLayout)等。...
解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${WORKDIR}/”是个变量,会被System Property中的“WORKDIR...
压缩包中的"**lib**"目录可能包含Log4j的必要依赖库,比如`log4j.jar`,这是运行Log4j的日志记录功能所必需的。确保这些库文件被添加到Tomcat的`lib`目录,使得所有部署的应用都能访问Log4j。 综上所述,通过正确...
Log4j提供了多种预定义的Appender,如ConsoleAppender和FileAppender,同时也支持自定义Appender实现。Layout则决定了日志信息的格式,如PatternLayout可以按用户指定的模式格式化日志。 在Log4j 1.2.16中,你可以...
log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=/path/to/logfile.log log4j.appender.FILE.Append=true log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j....
5. **配置Log4j2**:通常,一个基本的Log4j2配置会指定日志级别(如DEBUG、INFO、WARN等),定义一个或多个Appender(如ConsoleAppender、FileAppender等),并可能包含Layout(如PatternLayout、JSONLayout等)和...
log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=file.log log4j.appender.FILE.Append=false log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE....
#### 四、log4j的核心组件 log4j的核心组件主要包括**Loggers(记录器)**、**Appenders(输出源)**和**Layouts(布局)**。 1. **Loggers (记录器)**:负责生成日志信息,并决定是否发送日志信息到Appenders。记录器...