Log4j日志文件输出路径设置

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

这个类是 org.springframework.web.util.Log4jConfigListener

这个类通过监听器将应用程序的路径设到System的property里,从而可以将代表应用程序路径的property作为log4j的输出路径

log4j.appender.R.File=${webapp.root}/log/log.log

source code :

public static final String WEB_APP_ROOT_KEY_PARAM =  "webAppRootKey" ; //web.xml的context-param
public static final String DEFAULT_WEB_APP_ROOT_KEY =  "webapp.root" ; //web.xml默认的context-key
String root = servletContext.getRealPath( "/" ); //获取应用程序路径
......
String param = servletContext.getInitParameter(WEB_APP_ROOT_KEY_PARAM); //根据context-param获取context-key
String key = (param !=  null ? param : DEFAULT_WEB_APP_ROOT_KEY); //context-key即是那个变量代表应用程序路径
......
System.setProperty(key, root); //将context-key和应用程序路径保存至System的property里

要使用当前web路径,只需要在web.xml配置一个监听器即可

< listener >
      < listener-class >org.springframework.web.util.Log4jConfigListener</ listener-class >
</ listener >

(注意:此监听器要在Spring容器context配置之前,否则不起作用,因为加载ContextLoaderListener时,系统还没有加载Log4jConfigListener,所以不会去找log4j.property,所以监听器一定要在Spring容器启动前)

通过此监听器,log4j的配置文件即可使用webapp.root日志文件的输出目录

默认是web路径是webapp.root,也可以通过以下web.xml配置指定

< context-param >
    < param-name >webAppRootKey</ param-name >
    < param-value >xxx.xxx</ param-value >
</ context-param >
Spring框架中部署log4j.xml 在开发Java应用程序时,日志记录是非常重要的。Log4j是一个常用的日志记录工具,它可以帮助我们记录应用程序的运行日志并进行灵活的配置。在Spring框架中,我们可以很方便地部署log4j.xml配置文件来管理日志记录。本文将介绍在Spring框架中部署log4j.xml的详细步骤,并提供相应的代码示例。 阅读详情

相关推荐

log4j--动态打印日志文件到指定文件夹

【代码】log4j--动态打印日志文件到指定文件夹。

m0_58680865的博客 3229

自定义Java配置文件路径log4j XML位置

在启动Java应用程序时,我们经常需要自定义配置文件的路径log4j XML文件的位置。综上所述,我们可以通过设置系统属性或使用特定的log4j类来自定义Java配置文件和log4j XML文件的位置。请根据自己的需求选择合适的方式,并确保提供正确的路径值。在上述命令中,使用"-Dlog4j.configuration"参数来设置log4j配置文件路径。需要注意的是,无论使用哪种方式,确保指定的路径是正确的,且具有相应的读取权限。类来加载log4j配置文件,并指定XML配置文件的路径

BitLordX的博客 740

log4j输出多个自定义日志文件,动态配置路径

1.    log4j输出多个自定义日志文件  log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在现有的log4j基础上稍加配置即可轻松实现这一功能。  先看一个常见的log4j.properties文件,它是在控制台和myweb.log文件中记录日志: log4j.r

之乎者也的专栏 3万+

log4j 设置日志输出文件的路径

大家一般都在Windows上开发,部署到linux服务器上通常会出现一些路径报错,因为两个操作系统的文件系统不同,不能用绝对路径来定义log4j输出日志路径.对于相对路径来说,有以下解决方法. 1.日志输出debug级别以上的到stdout(控制台) 和R1(自己随便定义的) log4j.rootLogger=debug,stdout,R1 2.输出到 盘的 根目录下 (不推荐,wi

路人甲的博客 2万+

Log4j配置日志存放路径

Log4j日志存放路径配置

xieqj_0511的博客 7190

log4j配置文件中的日志文件输出路径设置

 在项目中一般会用到log4j的,对于它的输出路径,网上已经有很多的帖子在详细的描述,这里不再说明,这里主要是对日志文件输出路径设置即:log4j.appender.ROLLING_FILE.File的设置,通常的设置是:${webapp.root}/logs/log.log此设置在tomcat6.0下测试通过,但是在低一些的版本测试还是存在问题的,例如在weblogic8.1下或

862

log4j日志文件输出到项目根目录

在使用log4j进行日志文件输出时,并不能够默认输出到项目根目录,或者输出到相对路径,只能输出到绝对路径。 经修改配置文件得到有效解决: 1.配置监听器 通过监听器获取项目绝对路径,并且配置系统属性变量 String log4jDir=arg0.getServletContext().getRealPath("/"); System.setProperty(...

weixin_43317111的博客 5297

基于SpringBoot与若依框架快速构建企业级图书管理系统实战

在Java企业级应用开发中,SpringBoot以其“约定大于配置”的理念,极大地简化了Spring应用的初始搭建和开发流程,成为构建Web服务的首选框架。其核心原理在于通过自动配置和起步依赖,屏蔽了复杂的XML配置和依赖管理,让开发者能快速聚焦业务逻辑。这一特性在需要快速交付的后台管理系统开发中价值尤为凸显,例如图书管理、CRM、OA等系统,它们通常需要一套完整且稳定的用户认证、权限控制和基础数据管理模块。若依(RuoYi)框架正是基于SpringBoot构建的权限管理系统,它提供了开箱即用的RBAC权限

weixin_33831196的博客 320

log4j配置日志文件相对路径[续集]

   这篇文章是基于流传在网上较为完整的关于“log4j配置日志文件相对路径”问题的解决方法。该篇博文几经转载,流传至今。这是51cto博客里的一篇此文的转载[http://sharep.blog.51cto.com/539048/143734/  ],为了能够清楚本文所要解决的问题,建议阅读此文。   该文中最后提到关于log4j配置文件初始化时产生的一些异常和警告信息。在这个疑问下和我在实际...

weixin_33739646的博客 171

log4j日志输出,以及生成日志文件

log4j.properties文件配置如下: log4j.rootLogger=debug,appender,appender1 #如果在本地eclipse控制台输出 请解开下面的代码 #log4j.appender.appender=org.apache.log4j.ConsoleAppender #设置输出样式 #log4j.appender.appender.layout=

Super的专栏 1万+

log4j配置mysql控制台打印_log4j日志输出日志文件中和控制台中 +log4j配置详解...

1.引入log4j的jar包2.创建log4j.properties,并配置log4j#设置日志的级别 ,多个以,分开(没有给出的,则不会被输出)log4j.rootLogger=debug,A,R#log4j.appender.logfile.encoding=UTF-8#DailyRollingFileAppender每天产生一个日志文件log4j.appender.R=org.apache....

weixin_33356544的博客 998

log4j 如何设置输出文件的路径

log4j 如何设置输出文件的路径: http://zhidao.baidu.com/link?url=0jgYMuM4KSIOQmD4OSakfwf4Sfa_bRI7Q6EYiYpCCoOmeHuiFzSVwy8M5RN3lpI9TYdFG6Ya1lLheNq5j_U_YasF_GFSNt531h-S8b41uLK

吉祥小家 162

Log4j配置输出log文件的相对路径

动态配置log4j日志文件输出的相对路径

loongshawn的博客 3万+

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

log4j1/log4j2中category的配置以及log的输出位置(windows和linux通用的log输出位置)一、场景和需求假设我现在有3个独立的用project(暂时用maven关联起来,当然也可以不用maven),一个是提供公共服务的infrastructure,一个是提供存储的persister,一个是提供搜索的searcher,其中提供基础服务的所有的类,例如DateUtils,...

weixin_39624705的博客 818

[log4j] log4j输出多个自定义日志文件、动态配置多个日志文件(三)

日志的打印,在程序中是必不可少的,如果需要将不同的日志打印到不同的地方,则需要定义不同的Appender,然后定义每一个Appender的日志级别、打印形式和日志输出路径。 1 log4j输出多个自定义日志文件 如果在实际应用中需要输出独立的日志文件,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢? 先看一个常见的log4j.properties文件,它是在控制台和test.lo...

疯一样的女子 5178

log4j、logback等日志配置文件日志文件输出位置

配置文件中文件制定为相对路径为例 以log4j和logback为例 log4j在SSM框架,跑在Tomcat中 #RollingFile log4j.appender.RollingFile=org.apache.log4j.DailyRollingFileAppender #相对路径logs/appcore_cmdb.log log4j.appender.RollingFile.File=l...

weixin_41335352的博客 713

Log4j2 基本配置

Maven添加Log4j2支持                   org.apache.logging.log4j             log4j-jcl             2.5                               org.apache.logging.log4j             log4j-core             2.

风它不肯说,云悄悄飘过. 637

log4J自定义输出日志文件(网络)

log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在现有的log4j基础上稍加配置即可轻松实现这一功能。   先看一个常见的log4j.properties文件,它是在控制台和myweb.log文件中记录日志log4j.rootLogger=DEBUG, stdout...

SunshineZhang 265
上一篇: 嵌入式Linux的浅淡
下一篇: Log日志详解
重庆千锋
博客等级 码龄7年 470粉丝 2203原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值