`

log4j日志文件保存路径的设置

    博客分类:
  • java
阅读更多

 一直都是把log4j的日志文件位置设定成绝对路径,直到今天发现了一个更好的设置方法, 不论绝对路径还是相对webroot的路径都可以。。。

 

log4j的通常用法就是通过在其配置文件(xml或properties)中直接将输出文件写死,在很多情况下,这样做是非常简单而又有效的。但这样做的缺点是,如果想让这个web应用运行起来,必须要修改log4j的配置文件。比如struts2.x中log4j的配置,每个人都得按照自己的路径进行配置。这无疑增加了配置的复杂性。因此,在某些情况下,我们更希望日志文件默认就输出到web应用的某个目录里,比如如果想输出日志到webroot/logs/log.log中,这该如何实现呢?

    在配置文件中(我是在properties文件中使用的,xml我未测试,理论上一样)使用${user.dir}类似的方式,这里变量必须是System.getPropertities里的变量。而我们则就是要利用这一点。首先在一个Listener里或高优先级、自启动的Servlet里获得应用的发布目录,这是很容易得到的,比如String home = servletContext.getRealPath("/");然后调用System.setPropertity("web_home",home),“web_home”名字可以随意。则log4j.properties里的配置为:log4j.appender.TRACE.File=${web_home}/logs/log.log.则日志会输出到web应用发布目录里的logs目录里。

分享到:
评论

相关推荐

    log4j简单范例 日志文件是相对路径的

    这个“log4j简单范例 日志文件是相对路径的”示例将展示如何配置Log4j来记录日志,并将日志文件保存在程序运行时的相对路径下。 首先,Log4j的核心组件包括Logger(日志器)、Appender(输出目的地)和Layout(格式...

    log4j 写多个日志文件,按照日期每天都记

    这里`File`属性指定了日志文件的基本路径和文件名,`DatePattern`属性设置了时间格式,使得日志文件按照`logfile.log.yyyy-MM-dd`的格式命名。 3. **配置Layout**:每个Appender还需要一个Layout来决定日志输出的...

    使用log4j写日志文件

    在Java应用中使用Log4j进行日志记录的第一步,是创建并配置log4j的属性文件(log4j.properties)。这个文件定义了日志的级别、输出目的地以及日志的格式。以下是一个典型的log4j配置示例: ```properties # 设置根...

    Log4j 相对路径配置

    2. `log4j.appender.ServerDailyRollingFile.File=${webApp.root}/WEB-INF/logs/sysout.log` 这里使用了之前在`Web.xml`中定义的`webApp.root`属性,指定日志文件的保存位置为Web应用的`WEB-INF/logs`目录下,文件名...

    log4j保存路径 配置

    log4j.appender.File.File=/path/to/your/logfile.log # 替换为实际的保存路径 log4j.appender.File.Append=true log4j.appender.File.ImmediateFlush=true log4j.appender.File.DatePattern='.'yyyy-MM-dd # 每天...

    Springboot项目使用Slf4j将日志保存到本地目录的实现代码

    Springboot 项目使用 Slf4j 将日志保存到本地目录的实现代码 Slf4j 是一个 Java 日志记录门面,它提供了一个通用的日志记录API,允许开发者使用不同的日志记录框架,例如 Logback、Log4j 等。在 Springboot 项目中...

    log4j配置文件详解附实例

    log4j 提供了多种输出目的地,包括控制台、文件、每天产生一个日志文件、文件到达指定大小时产生一个新文件、将日志信息以流格式发送到任何地方等。 Layout 是 log4j 配置文件中的第三个主要组件,用于定义日志输出...

    Log4j 日志文件Linux/Mac/Windows通用存放位置设置方法

    log4j1/log4j2中category的配置以及log的输出位置(windows和linux通用的log输出位置) 一、场景和需求 假设我现在有3个独立的用project(暂时用maven关联起来,当然也可以不用maven),一个是提供公共服务的...

    log4j配置文件

    6. **日志文件路径配置**:在`log4j日志文件路径的配置.txt`中,可能详细描述了如何设置`FileAppender`的`File`属性,指定日志文件的保存位置和文件名。 在实际应用中,根据项目需求,开发者可能会配置多个Appender...

    log4j日志使用说明

    - **log4j.appender.R.File**: 指定滚动文件的保存路径。 - **log4j.appender.R.layout**: 滚动文件输出格式。 - **log4j.appender.R.layout.ConversionPattern**: 滚动文件中日志信息的具体格式化方式。 - **log4j....

    Tomcat 8.0.30 log4j配置

    - `log4j.appender.FILE.File`:设置日志文件的输出路径。 - `log4j.appender.FILE.layout`:设置日志布局模式,这里使用了PatternLayout。 - `log4j.appender.FILE.layout.ConversionPattern`:定义日志输出的...

    apache-log4j-2.15.0-bin.tar.gz

    然后,创建一个配置文件(如log4j2.xml或log4j2.json),定义日志记录的级别、Appenders和Layouts。例如,你可以设置一个Console Appender将日志输出到控制台,再添加一个File Appender将日志保存到文件。 **日志...

    非常精简明了的Log4j日志包使用说明.txt

    `File`属性指定了日志文件的保存路径;`Append`属性设置为`true`表示追加写入,而非覆盖原有内容;`Threshold`设置了日志的最低级别。 #### 3. 第三级:设置布局格式 布局决定了日志输出的具体格式。Log4j提供了...

    log4net 配置 根据日期生成 文件 根据 分类 (INFO、ERROR) 生成文件

    它基于Apache Logging Services的log4j项目,并进行了扩展和优化,使其更适应.NET环境。log4net提供了一种灵活的日志记录机制,可以将日志信息输出到不同的目标,例如控制台、文件、数据库等。 #### 二、配置详解 ...

    SSH框架中配置log4j的方法

    2. **灵活的日志文件存储路径**:默认情况下,日志文件会被保存在`/WEB-INF/logs/`目录下,无需指定绝对路径,这使得日志管理变得更加简单且易于维护。 3. **统一的配置文件管理**:`log4j.properties`文件可以与...

    日志管理Log4j学习笔记

    - `log4j.appender.R`:配置滚动文件Appender,设置文件路径、最大文件大小及备份索引。 - `log4j.appender.R.layout.ConversionPattern`:定义滚动文件输出的格式化模式。 #### 四、使用场景与最佳实践 - **...

    既简单又实用的log4j知识(.doc)

    这段代码定义了一个每天滚动的文件Appender,将日志保存在指定路径的文件中。 5. **设置Logger级别**:可以为不同的包或类设置不同的日志级别,例如: ```properties log4j.logger.com.neusoft=DEBUG log4j....

    android log4j记录日志到缓存或SD卡

    这里,`/data/data/your.package.name/cache/log.txt`是缓存目录下的日志文件路径,`%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n`是日志格式,包含了时间戳、线程、日志级别、类名和日志消息。...

    log4j jar包下载

    3. **初始化**:在应用程序启动时,Log4j会自动加载配置文件,并根据配置设置日志记录行为。 4. **使用API**:通过调用`Logger`类的方法,如`logger.info()`, `logger.error()`等,可以在代码中插入日志语句。 5. ...

    log4j 使用介绍

    使用 log4j 需要将 log4j-1.2.6.jar 添加到项目的类路径(CLASSPATH)中。可以从 Apache Jakarta 网站下载 log4j 的发行版,并解压缩到适当的目录。确保正确配置了 CLASSPATH,以便在运行时能够找到 log4j 库。 **3...

Global site tag (gtag.js) - Google Analytics