前言

前面一直在说,如何读取到log4j 的配置文件 log4j.properties。

接下来的探讨的是: log4j 里配置产生的log 文件的路径如何设置。

tomcat 还好。拿复杂点的 weblogic 来说,因为不解压war 档,这个路径该如何设置。

在上一篇

在Tomcat 与weblogic 中的 日志(log4j) 配置系列二(weblogic 应用程序使用log4j)

中也提到了,如果没有配置路径, logfile.log默认也会放到  base_domain目录下。

当然你配置一个绝对路径,但是,这绝对是不被推荐的。

可以通过 ${param} /logfile.log 设置相对路径。

java 获取系统变量(环境变量和设置变量)

这一篇中, 有提到 log4j  的配置可以配置系统变量 。

基于此, 配置 log4j 的相对路径的方法就有2种了。

方法一: 通过 servlet 初始化init() 方法中设置log_dir的系统变量

这个系统的变量名可以随便取, 只需要保证在 init 方法中和log4j 中使用的变量名一致就可以了。

System.setProperty("log_dir", "C:\\Oracle\\Middleware\\user_projects\\domains\\base_domain\\logs");

当然, 这里配置的log_dir 不能使用绝对路径。

可以通过 getServletContext().getRealPath("/"); 等这样一些方法定位到一些相对路径。

当然这种配置方式,也可以直接设置配置文件中的 log4j.appender.logfile.File

            String logFile = spath+"/" + ps.getProperty("log4j.appender.logfile.File");ps.setProperty("log4j.appender.logfile.File",logFile);PropertyConfigurator.configure(ps);

方法二: 通过服务器环境变量

应对方法一的不便, 还需要通过API获取一些路径。

是否可以直接使用web 服务器里面的已经初始好的系统变量呢? 当然是可以。

在windows 环境下, 在weblogic 的 .cmd 文件中有
set JAVA_PROPERTIES=-Dplatform.home=%WL_HOME% -Dwls.home=%WLS_HOME% -Dweblogic.home=%WLS_HOME%

-D 这样的设置的变量, 是会被写入到系统变量的。

所以以上例子直接使用 ${platform.home}   ; ${wls.home} 都可以。

在tomcat 中, 有类似${catalina.home} 等 。。。

在Tomcat 与weblogic 中的 日志(log4j) 配置系列三(log文件的存放路径)相关推荐

  1. 在Tomcat 与weblogic 中的 日志(log4j) 配置系列二(weblogic 应用程序使用log4j)

    前言 在Tomcat 与weblogic 中的 日志(log4j) 配置系列一 在系列一 中, 有一个问题一直没有解决,就是部署到weblogic 中应用程序如何通过log4j写日志到文件中? 这里仅 ...

  2. 在Tomcat 与weblogic 中的 日志(log4j) 配置系列一

    前言 使用 spring 开发了一个web的项目. 使用log4j来记录日志. 开发完成后,打成.war 档,部署在Tomcat6 的服务器中, 是正常的: 但是部署到weblogic10.3.X.X ...

  3. 兼容Tomcat和Weblogic的Spring 数据源JNDI配置

    http://linhao315.iteye.com/blog/1293787 众所周知,Tomcat和Weblogic中查找JNDI的名称是不一样的,以Spring配置为例,在Weblogic中,需 ...

  4. slf4j中如何进行log4j配置呢?

    转自: slf4j中如何进行log4j配置呢? 下文讲述slf4j中配置log4j的方法分享,如下所示: 步骤一:pom.xml添加log4j依赖 <dependency><grou ...

  5. log4j日志文件默认存放路径

    log4j.properties文件中指定日志输出的路径 log4j.appender.A2.File=logs/pm.log 使用weblogic部署项目应用时,这个相对路径是相对于weblogic ...

  6. 日志log4j配置详情,日志log具体到你想不到

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局). 1.Loggers Loggers组件在此系统中被分为五个级别:DE ...

  7. 超简单的Springboot中的日志管理配置

    本案例中可以了解,怎么配置日志的输出路径,输出格式(比如说zip格式),按日期进行划分(今天的日志输出为一个文件,明天的日志输出到另一个文件),在按日期划分的同时又按文件大小划分(比如说每天的日志记录 ...

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

    转载请注明来源-作者@loongshawn:http://blog.csdn.net/loongshawn/article/details/52967694 1 配置log4j log4j.prope ...

  9. Linux中Postfix邮件发送配置(三)

    部署DNS服务器 postfix根据域名和地址做一个MX记录,A记录,PTR记录(一般在互联网上邮件服务器都要反解,没有PTR记录会认为是垃圾邮件) $ service iptables stop $ ...

最新文章

  1. 关系计划笔谈(9-3):关系预置和关系计划
  2. BZOJ4196[Noi2015]软件包管理器——树链剖分+线段树
  3. String.format System.out.printf的用法-简单
  4. JSON,数组根据字段分组
  5. jmeter脚本结合ant执行测试用例并生成测试报告
  6. 遍历二维数组_Java编程基础阶段笔记 day06 二维数组
  7. mvc模式缺点 php,mvc模式有哪些优缺点
  8. 功败垂成的王安石是大宋最后的体面
  9. 【python】直方图均衡化和自适应均衡化图像
  10. java有哪些字体_java字体有哪些
  11. CREO:CREO软件之零件【模型】曲面之填充曲面、拉伸曲面、旋转曲面的简介及其使用方法(图文教程)之详细攻略
  12. 软件测试工具有哪些?--最全最新的软件测试工具下载地址都在这里!错过绝对后悔!
  13. “Win10 无法使用内置管理员账户打开(应用程序)“怎么办
  14. Padding Oracle攻击(POODLE)技术分析
  15. [生存志] 第138节 说苑列女事追前朝
  16. Android 4.0 源代码结构
  17. u深度linux下载,u深度u盘启动盘制作工具下载
  18. python解除windows锁屏_用python获取win10锁屏图片
  19. python 正方教务管理系统抢课脚本(仅供学习)
  20. 不要跌入孤独寂寞的陷阱

热门文章

  1. WinCE的网络驱动实现原理
  2. 限制文本输入框只能输入0-9数字
  3. mysql unauthenticated user原因分析以及解决方法
  4. Jmeter+Ant+Jenkins集成抛出异常java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage
  5. PHP no input file specified 三种解决方法
  6. 【实践】GPU在外卖场景推荐系统精排模型预估中的应用实践
  7. 【报告分享】2020年中国数据驱动型企业成长路径研究报告.pdf(附下载链接)...
  8. Encoder与Decoder
  9. 卷积神经网络CNN结构
  10. 神经网络中常用激活函数总结