(项目中必须同时在使用spring)
web.xml加入
<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/log/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>600000</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
1. Spring的做法是使用一个Servlet Listener,在Web Container启动时把ROOT的绝对路径写到系统变量里,webAppRootKey的值为webApp.root代表web 项目的根路径,这样log4j的配置文件里就可以用${webApp.root}来表示刚刚设进去的系统变量,可以设置输出log文件的路径为log4j.appender.logfile.File=${webApp.root}/WEB-INF/logs/info.log (当然web项目必须有/WEB-INF/logs这个目录);
2. log4jRefreshInterval为60000表示 开一条watchdog线程每60秒扫描一下配置文件的变化;
分享到:
相关推荐
### Log4j中配置日志文件相对路径方法详解 #### 概述 在软件开发过程中,日志记录是一项重要的功能,它有助于开发者调试程序、监控应用程序的运行状态以及追踪问题。`Log4j`作为一款优秀的日志管理工具,被广泛应用...
上述配置中,`log4j.appender.FILE.File`指定了日志文件的路径,`${user.home}/logs/myapp.log`表示日志将被写入用户主目录下的logs文件夹中的myapp.log文件。通过改变这个路径,我们就能动态地改变日志输出的位置。...
4. **创建 log4j.properties 文件**:在 `WEB-INF/classes` 目录下创建 `log4j.properties` 文件,并指定日志的级别、输出目的地等。 ```properties log4j.rootLogger=DEBUG, A1 log4j.appender.A1=org.apache....
log4j.appender.FILE.File=${catalina.home}/logs/myApp.log # 这里使用相对路径 log4j.appender.FILE.ImmediateFlush=true log4j.appender.FILE.Threshold=DEBUG log4j.appender.FILE.Append=true log4j.appender....
Log4j的核心优势在于其可配置性,可以根据不同的需求将日志输出到控制台、文件、数据库甚至网络上。 在"log4j添加日志到数据库和文件中"的场景中,我们首先需要理解Log4j的基本架构。它主要由三个组件构成:Logger...
相比之下,Log4j2就比较简单,我们只需要把log4j2.xml文件放到工程的resource目录下就行了。 Log调用 Log4j和Log4j2的调用都是很简单的。Log4j需要import org.apache.log4j.Logger;然后使用Logger.getLogger()方法...
在SSH(Struts、Spring、Hibernate)等Java Web框架中,配置Log4j以使用相对路径是非常常见的需求,这有助于在不同环境下保持日志文件的一致性。以下是关于Log4j相对路径配置的详细说明: 首先,在`Web.xml`文件中...
3. **整合Log4j到Web应用** - 将log4j的JAR文件(如log4j-1.2.x.jar)添加到项目的类路径中。 - 将log4j配置文件放入WEB-INF/classes目录下,确保在Web应用启动时能被加载。 4. **通过web.xml配置Log4j** - 在...
这个文件是Log4j日志配置的核心,用于定义日志的输出格式、日志文件的滚动规则等。 2. 配置DailyRollingFileAppender:通过定义一个DailyRollingFileAppender,可以使得日志文件按照日期进行滚动,每天生成一个新的...
这意味着在程序启动时,你需要通过`System.setProperty("WORKDIR", "实际路径")`来设置`WORKDIR`的值,这样Log4j就会将日志文件输出到指定的路径下。在JSP中,你可以通过`pageContext.getServletContext()....
最后,编辑 `WEB-INF/log4j.properties` 文件来定义日志的输出方式。下面是一个简单的配置示例: ```properties # 设置根日志器的日志级别为 WARN,并指定输出到名为 R 的 Appender log4j.rootCategory=warn, R # ...
Log4j通过配置文件(通常是log4j.properties或log4j.xml)来设定日志输出级别、格式、目的地等参数。如果日志没有按预期输出,我们需要检查以下几个方面: 1. **配置文件**:确认配置文件是否正确包含在项目中,...
Log4j作为Apache下的一个开源项目,是Java应用中最常用的日志框架之一,它提供了灵活的日志级别配置、丰富的输出格式以及多样的日志输出目的地选择,如控制台、文件等。 ### Log4j配置详解 #### 步骤一:配置log4j...
创建一个名为`log4j.properties`或`log4j.xml`的配置文件,放置在Web应用的`WEB-INF/classes`目录下。例如,`log4j.properties`配置如下: ```properties # 设置全局日志级别为INFO log4j.rootLogger=INFO, FILE #...
同时,确保`log4j.properties`文件位于Web应用程序的根目录或类路径下的某个位置。 3. **编写代码**: 使用Log4j进行日志记录非常简单。在Java代码中,我们导入`org.apache.log4j.Logger`,然后获取一个日志实例,...
例如,在配置文件中指定的日志文件路径`log4j.appender.logfile.File=set up in web.xml`,这里的“set up in web.xml”实际上是指在`web.xml`中指定的日志文件路径,而这个路径也是相对于项目的根目录。 #### 总结...
在使用SLF4J之前,首先需要在项目的类路径中包含SLF4J的API jar包以及一个具体的日志实现库,例如Logback或Log4j。在Maven项目中,可以在pom.xml文件中添加以下依赖: ```xml <!-- SLF4J API --> <groupId>...
本教程将详细解释如何配置Log4j,使其在不同操作系统环境下(Windows和Linux)都能统一将日志打印到`user.dir`目录下,避免因路径分隔符差异带来的问题。 首先,了解`user.dir`系统属性。在Java中,`user.dir`代表...
但是,如果我们想把 log4j.properties 文件放置在其它目录下,例如:WEB-INF 下和 web.xml 放在一起,这时候就需要我们手动指定 log4j 配置文件的路径,否则系统是找不到的。 在将 log4j.properties 文件放置在其它...
在Java环境中,为了使用Log4j,开发人员需要将这些JAR文件添加到项目的类路径中。 描述中的"这个压缩包包含log4j所依赖jar包"进一步确认了这一点。这表明,除了Log4j的主要库之外,这个压缩包可能还包含了Log4j依赖...