WebSphere & Log4j

IBM的东西,真是太麻烦了,一个日志都给你替换掉,太霸道了,Google了下,居然是个普遍想象,不过也有相关的解决方

 

案,基本好像都是在 WAS5,WAS6.1上的,我没环境,不过我这边的WAS7 没试成功过

 

描述两种网上的流行的配置

 

第一种:

 

在你的项目的\webapp\META-INF下建立一个名叫services的文件夹,然后建立一个名为org.apache.commons.logging.LogFactory的文件,里面添加一行文字:

org.apache.commons.logging.impl.Log4jFactory

 

即可解决 

 

第二种:

 

在类路径下增加commons-logging.properties配置文件,文件内容为: 
priority=1 
org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.LogFactoryImpl

org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger

 

.将类加载方式改成parent_last 

 

以上两种我在 WAS 7都没试成功过。

 

就在绝望之际,柳暗花明,在国外的小角落了发现了,下面一段描述

 

*A very strange solution :*
put in / /profiles//properties/
the file commons-logging.properties with :
priority=1
org.apache.commons.logging.LogFactory=org.apache.c ommons.logging.impl.LogFactoryImpl
org.apache.commons.logging.Log=org.apache.commons. logging.impl.Log4JLogger
I don't know which of those lines are really important...

 

http://fixunix.com/websphere/538047-log4j-commons-logging-was6-1-0-19-a.html 

 

尝试之果然有效

 

步骤如下(以windows为例):

 

1、将写好配置的commons-logging.properties 放到 

   D:\IBM\WebSphere\AppServer\profiles\AppSrv01\properties 目录

 

2、将 log4j-1.2.14.jar commons-logging-1.1.1.jar 放到

   D:\IBM\WebSphere\AppServer\lib 目录下

 

3、将你的log4j.Properties 也放到步骤2的目录下

 

不需要改类加载气先后顺序,也不要要动工程结构,重启下服务,日志就生效,,完全是按照log4j的配置文件打印日志的。

目前知道的缺点:所有的应用公用了一个日志配置文件,,需要改变websphere的本身的配置

 

为啥没就人家weblogic 方便呢,几乎啥都不用动,想怎么用就用怎么用。

 

5 楼 jucks2611 2014-09-17  
我通过第一个方法,日志输出了。环境是was7
4 楼 accphc 2011-11-18  
WAS7的这个问题我也找了很多方法,
博主的解决方案不太现实,在生产环境中一个server环境下会有多个应用,这样会影响到其他应用。
直接Logger log=Logger.getLogger(this.getClass());用log4j的什么都不用配,直接打印日志!
3 楼 krasonly 2011-10-14  
那是因为你那个commons-logging.properties中有两个空格
priority=1
org.apache.commons.logging.LogFactory=org. apache.c ommons.logging.impl.LogFactoryImpl
org.apache.commons.logging.Log=org.apache.commons. logging.impl.Log4JLogger
去掉就启动起来了
2 楼 sjmz30071360 2011-10-07  
我的在WAS7.0.0.11上,不用加commons-logging.properties配置文件,就可以正常生成日志文件。
但是不能正常的rename和delete生成的文件,即便是停掉application也不可以。
只有把server停掉或者restart之后才可以。
有没有什么好的解决方案呢?
1 楼 jiminsc 2011-09-27  
我是was7,在类路径下增加commons-logging.properties配置文件,可以正常生产日志文件

转载于:https://www.cnblogs.com/swugogo/p/4223616.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值