`
cloudstars
  • 浏览: 40260 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

解决WAS8.5下log4j日志不能正确输出的问题

 
阅读更多

现象:

log4j配置了日志输入文件为某个特定的文件,在TOMCAT下可以正常输现,而在WAS8.5下面,只是创建了这个文件,但内容一直为空,所有的日志都在SystemOut.log中。

 

产生原因:

WAS也是用的commons-logging日志框架,commons-logging中LogFactory 获得实现的顺序是

 
1. 从应用的 META-INF/services/org.apache.commons.logging.LogFactory 中获得 LogFactory实现
2. 从系统环境中获得 org.apache.commons.logging.LogFactory 获得 LogFactory 实现
3. 从 classpath 下的 commons-logging.properties 文件中获得 LogFactory 实现

 

而之所以在 tomcat 下表现良好的 log4j 日志输出放到 was 下不灵了,是因为 was 在第二步截住了,WAS有一个系统环境变量 org.qpache.commons.logging.LogFactory 的值为 com.ibm.was.commons.logging.TrLogFactory,这个类在 ws-commons-logging.jar 中。

 

解决方法1:

       我们在使用 commons-logging 时,要能应用到所期望的 LogFactory 实现就要在第一步获得 LogFactory 实现。 而 Logger log = Logger.getLogger(a.class) 用直接得到 Log4j 的 Logger 也就是跳开了用 LogFactory 来获得 Logger 的尴尬,缺点就是程序中所有Log log = LogFactory.getLog(a.class)都得修改了;

 

解决方法2:

       在/profiles/appserver/properties下新建文件commons-logging.properties,内容如下(共2行):

priority=1
org.apache.commons.logging.LogFactory=org.apache.commons.logging.impl.LogFactoryImpl

然后重启appserver即可。

 

分享到:
评论

相关推荐

    WAS上log4j日志不能输出(ibatis)sql语句解决办法[借鉴].pdf

    WAS 上 log4j 日志不能...解决 WAS 上 log4j 日志不能输出(ibatis)sql 语句的问题需要改变 WAS 的默认 LogFactory 实现类,使其使用 log4j 框架下的 LogFactory 实现类,并且需要正确配置 log4j.properties 文件。

    WAS8.5静默安装及升级补丁完整步骤.docx

    WAS 8.5 静默安装是指在不需要用户交互的情况下安装 WAS 8.5。这个过程可以自动完成安装和配置WAS 8.5,减少了人工操作的错误 possibilities。下面是 WAS 8.5 静默安装的详细步骤: 安装包准备 在开始静默安装之前...

    WAS V8.5 for Linux 安装以及性能调优概要

    WAS V8.5 for Linux 安装以及性能调优概要 WAS V8.5 for Linux 安装是指在 Linux 操作系统上安装 WebSphere Application Server V8.5 的过程。性能调优是指对 WAS 服务器的性能进行优化,以提高服务器的运行效率和...

    WAS8.5.5.0升级及配置JDK1.8.docx

    ### WAS 8.5.5.0 升级至 8.5.5.13 及配置 JDK1.8 手册 #### 一、背景介绍 在 IT 领域,系统的稳定性和兼容性至关重要。随着技术的发展,软件环境也需要不断升级以满足新的需求。IBM WebSphere Application Server...

    WAS8.5静默安装及升级补丁

    ### WAS8.5静默安装及升级补丁详解 #### 一、背景介绍 随着企业对WebSphere Application Server (WAS)的需求日益增加,高效、批量的安装与更新成为了一个重要议题。静默安装(Silent Installation)因其便捷性和...

    was8.5安装与配置

    【标题】"was8.5安装与配置"的详解 在IT行业中,WebSphere Application Server (WAS) 是IBM提供的一款强大的企业级应用服务器,用于部署和管理Java应用程序和服务。WAS 8.5版本是其中的一个重要版本,具有稳定性和...

    was8.5 部署cxf demo

    was8.5 部署cxf demo

    WAS8.5静默安装.

    WAS8.5 静默安装指南 WAS8.5 静默安装是指通过脚本或命令行方式安装 IBM WebSphere Application Server 8.5 的过程。静默安装可以避免人工干预,提高安装效率和可靠性。本文档将指导您如何静默安装 WAS8.5。 一、...

    WAS8.5安装配置

    ### WAS 8.5 在 Linux 上的安装与配置详解 #### 一、概述 IBM WebSphere Application Server (WAS) 是一款高性能的应用服务器,适用于构建和部署企业级 Java 应用程序。WAS 8.5 版本是 IBM 在 2013 年发布的重要...

    WAS8.5静默安装及升级补丁.docx

    1. **准备安装源**:在描述中提到,WAS 8.5.5的安装源位于`/opt/was8.5.5/wassource`目录下,这通常包含多个zip文件,如`WAS_ND_V8.5.5_1_OF_3.zip`、`WAS_ND_V8.5.5_2_OF_3.zip`和`WAS_ND_V8.5.5_3_OF_3.zip`,这些...

    was8.5.5.0安装

    本文将指导用户如何从头开始安装 WAS 8.5.5.0,包括安装 IBM Installation Manager、安装 WebSphere 8.5.5.0、创建管理概要和应用概要等步骤。 一、安装 IBM Installation Manager IBM Installation Manager 是 ...

    was8.5 web服务

    ### WebSphere Application Server 8.5 (WAS 8.5) 知识点解析 #### 一、WebSphere Application Server 8.5 概述 **WebSphere Application Server (WAS)** 是由IBM开发的一款企业级应用服务器,用于部署Java EE应用...

    was8.5安装部署文档(图解版)

    ### WebSphere Application Server 8.5 安装与部署知识点详解 #### 一、WebSphere Application Server (WAS) 8.5 概述 **WebSphere Application Server (WAS) 8.5** 是IBM推出的一款高性能的企业级Java应用服务器...

    log4j-core-2.15.0.jar log4j-2.15.0-rc2

    Apache log4j2零日漏洞,根据 log4j-2.15.0-rc2 版本编译生成log4j-api-2.15.0.jar 1.解压你的jar jar xvf XXX.jar 2. 删除旧版本jar cd ./BOOT-INF/lib rm -rf log4j-api-*.jar 3. 上传新版本log4j-api-2.15.0....

    WAS8.5基于linux安装

    was8.5基于linux环境下安装,通俗易懂,简单操作,适合新手入门。

    用三台Win7虚拟机搭建WAS8.5集群并用IHS做负载分发.pdf

    ### 一、WAS_ND8.5安装前的准备工作 #### 1.1 安装规划 在搭建WAS集群之前,首先需要明确安装规划。根据文档,该集群由一个管理节点(Deployment Manager,简称DM)和两个受管节点(Managed Node)组成。其中,DM...

    Was8.5的安装配置手册

    Was8.5的安装配置手册,其中集成了IBM的httpServer

    was8.5详细安装部署

    was详细安装部署

    was 8.5安装

    - WAS 8.5 静默安装卸载:详细介绍WAS 8.5的静默安装与卸载流程,包括问题背景、环境配置、当前状态、安装步骤等。 #### 三、WAS 8.5 静默安装卸载详解 ##### 3.1 WAS 8.5 静默安装卸载 - **问题背景**:介绍...

Global site tag (gtag.js) - Google Analytics