`

og4j配置日志文件相对路径写法方法

阅读更多
在使用log4j日志类配置日志文件时,都会配置日志文件的输出路径,现在分几种情况进行日志文件输出路径讲解:
log4j.properties文件配置如下:
log4j.rootLogger=DEBUG,A1,A2
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.Threshold=debug
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-5p %d{yyyy-MM-dd HH:mm:ss.SSS} %l %m%n
# Appender A2 writes to the file "test" in user's home.
log4j.appender.A2.Threshold=info
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.File=${relativePath}/logs/log.log
# Truncate 'test' if it aleady exists.
log4j.appender.A2.Append=true
log4j.appender.A2.MaxFileSize=5MB
log4j.appender.A2.MaxBackupIndex=5
# Appender A2 uses the PatternLayout.
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%-5p %d{yyyy-MM-dd HH:mm:ss.SSS} %l %m%n

log4j.appender.A2.File路径根据不同的环境如何正确配置呢。
第一种情形:非web工程
1、写绝对路径
log4j.appender.A2.File=c:\\xx.log

2、写相对路径
①在程序中直接运行的,使用${xx},替换,xx需要根据实际情况进行填写
 
log4j.appender.A2.File=${xxx}\log.log

②可运行jar包,日志需要跟jar包同级目录。这种情况需要根据运行的jar包动态修改路径,这里提供一种方式:

 	
                Properties props = new Properties();
 		InputStream istream = null;
String path =  URLDecoder.decode(XXX.class.getProtectionDomain()
			        .getCodeSource().getLocation().getPath(), "UTF-8");
             istream = XXX.class.getClassLoader().getResourceAsStream("log4j.properties");
             props.load(istream);
             props.setProperty("relativePath",path);
             PropertyConfigurator.configure(props);//装入log4j配置信息


第二种情形:Web工程
1、使用服务器环境变量
log4j的配置文件支持服务器的vm的环境变量,格式类似${catalina.home}
log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.File=${catalina.home}/xx.log
log4j.appender.A2.MaxFileSize=10KB
其中的${catalina.home}并非windows系统的环境变量,这个环境变量不需要在Windows系统的环境变量中设置。之所以可以这么配置,是因为在tomcat\bin\catalina.bat(startup,shutdown都是调用这个)里面自带有 -Dcatalina.home= "%CATALINA_HOME%" 。继承这个思想,所以你也可以自己设定一个参数-Dmylog.home="D:/abc/log"到对应的服务器java启动的vm参数中
2、结合spring配置
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>webapp.root.xxx</param-value>
</context-param>
log4j.properties中的
  log4j.appender.A2.File=${webapp.root.xxx}/logs/log.log
分享到:
评论

相关推荐

    log4j实用配置扩展

    主要讲述log4j的简介,以及log4j的配置和在实际应用的使用。如果您不知道如何配置log4j,那么这本书将对您有很大的帮助。

    log4j-1.2.17.jar

    通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等

    日志管理Log4j学习笔记

    此外,通过 Log4j 其他语言接口,您可以在 C 、 C++ 、 .Net 、 PL/SQL 程序中使用 L og4 语法和用法与在 Java 程序中一样,使得多语言分布式系统得到一个统一一致的日志 模块。而且,通过使用各种第三方扩展,您...

    log4j.properties(可用于在控制台中输出sql语句)

    这是一个可以在控制台中输出sql语句的log4j的properties文件

    log4j多文件配置

    og4j.category.org.springframework=ERROR log4j.category.org.apache=INFO

    .net简单使用Log4net的方法(多个日志配置文件)

    log4net是.net中常用的一个日志记录工具,下面这篇文章主要给大家介绍了关于.net简单使用Log4net的方法(多个日志配置文件),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的...

    android 讲程序中获取og日志

    android 讲程序中获取og日志~~~~~~~~~~~~

    OG02B10寄存器配置

    OG02B10寄存器配置

    log4j-core-2.17.1-API文档-中文版.zip

    赠送Maven依赖信息文件:log4j-core-2.17.1.pom; 包含翻译后的API文档:log4j-core-2.17.1-javadoc-API文档-中文(简体)版.zip; Maven坐标:org.apache.logging.log4j:log4j-core:2.17.1; 标签:apache、logging、...

    log4j-1.2.17.jar下载

    log4j-1.2.17.jar下载

    log4j漏洞修复升级jar包(log4j-api-2.17.0.jar)

    log4j漏洞修复升级jar包(log4j-api-2.17.0.jar)

    log4j配置 ACCP教师录屏

    手把手教你log4j配置+录屏+源代码+使用总结 全面的log4j资料。 因为原创,所有高分. 请支持下原创!

    MySQL – binlog日志简介及设置

      mysql-binlog是MySQL数据库的二进制日志,用于记录用户对数据库操作的SQL语句((除了数据查询语句)信息。可以使用mysqlbin命令查看二进制日志的内容。 binlog 的作用 用于数据库的主从复制及数据的增量恢复。 ...

    syslog-搭建日志服务器.docx

    安装过程 1、运行Kiwi Syslog ... 6、选择安装的路径 syslog-搭建日志服务器全文共11页,当前为第3页。7、若第四步中没有勾选安装Kiwi Syslog Web Access,则会提示安装成功,若勾选了,则会提示安装Kiwi Syslog Web

    OG2完美ROM

    OG2完美ROM

    toefl og 4th

    The TOEFL® Test Gives You an Advantage: Most Widely Accepted, Most Popular and Most Preferred Give yourself the advantage with the TOEFL® test, the leading English-language test for study, ...

    机器人大战OG 金手指.pdf

    机器人大战OG 金手指.pdf

    新GRE官方指南(OG).

    新GRE官方指南(OG)新GRE官方指南(OG)新GRE官方指南(OG)新GRE官方指南(OG)新GRE官方指南(OG)新GRE官方指南(OG)新GRE官方指南(OG)

    OG12RC解答

    GMAT考试OG12版中阅读理解的具体解答思路。

    WINCC转炉炼钢OG程序

    WINCC转炉炼钢OG程序WINCC转炉炼钢OG程序WINCC转炉炼钢OG程序

Global site tag (gtag.js) - Google Analytics