首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更改WebLogic10/11的日志格式?

如何更改WebLogic10/11的日志格式?
EN

Stack Overflow用户
提问于 2010-01-22 04:38:30
回答 5查看 9.3K关注 0票数 2

我想更改Weblogic服务器日志的日志格式。现在,它正在使用默认格式生成日志--我希望能够指定自己的格式。

例如,它生成如下所示的日志:

代码语言:javascript
复制
####<Jan 21, 2010 3:24:24 PM EST> <Info> <Socket> <FS2LOANER-00981> <DPSCoreServer1> <[STANDBY] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264105464314> <BEA-000436> <Allocating 2 reader threads.> 
####<Jan 21, 2010 3:24:24 PM EST> <Info> <Socket> <FS2LOANER-00981> <DPSCoreServer1> <[STANDBY] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1264105464314> <BEA-000446> <Native IO Enabled.> 

我尝试修改日志格式,让Weblogic使用LOG4J作为它的日志记录系统,并让它使用我的log4j.properties文件,该文件定义了我想要的日志格式。但是,无论我怎么尝试,weblogic都不会获取我的log4j.property文件设置,并继续以其所需的格式进行记录。

这实际上是一个与下一篇文章非常相似的问题,但这个问题从来没有得到真正的回答(批准的答案是关于如何打开log4j调试,这并没有帮助我弄清楚为什么weblogic没有拿起我的log4j.properties文件)。Using log4j logging in weblogic 9/10

EN

回答 5

Stack Overflow用户

发布于 2010-12-02 21:42:04

创建一个域启动类,如下所示:

代码语言:javascript
复制
import org.apache.log4j.PatternLayout;

import weblogic.logging.LoggerNotAvailableException;
import weblogic.logging.log4j.Log4jLoggingHelper;

public class LoggingConfigurator {
    public static void main(String[] args) {
        try {
            System.out.println("Configuring Log4j pattern");
            Log4jLoggingHelper.getLog4jServerLogger().getAppender("WLLog4jRotatingFileAppender")
                    .setLayout(new PatternLayout("%d{ISO8601} %-5p [%c] - %m%n"));
        } catch (LoggerNotAvailableException e) {
            e.printStackTrace();
        }
    }
}

安农

票数 2
EN

Stack Overflow用户

发布于 2010-01-26 22:41:17

据我所知,您不能(也不,您不想)更改WebLogic服务器自己的Log Message Format (如果出现问题,支持人员将非常乐意提供所需的信息)。

但是您可以将WebLogic配置为使用Log4j (请参见How to Use Log4j with WebLogic Logging Services),并且在启用Log4j时,您可以获得对服务器正在使用的org.apache.log4j.Logger的引用,并附加您自己的附加器。

启用Log4j后,您将从weblogic.logging.log4j.Log4jLoggingHelper类获得对服务器正在使用的org.apache.log4j.Logger的引用。

使用Windows引用,您可以附加自己的自定义附加器来接收服务器日志事件;例如,您可以附加一个将服务器日志事件发送到系统日志或Log4j事件查看器的附加器。此外,您可以使用Logger引用向WebLogic日志记录服务发出日志请求;这要求您部署的应用程序可以使用Log4j库。

但这并不是WebLogic自己的日志的替代。

票数 1
EN

Stack Overflow用户

发布于 2011-03-01 09:04:22

我不想替换WebLogic的记录器,但我确实非常希望配置日志格式。Amnon发布的方法工作得很好(所以我不知道为什么你说不能更改格式);我只是想要一些额外的细节。

我看到该方法唯一的缺点是,如果您将StdOut/StdErr重定向到日志记录子系统,它在日志中显示为%c转换字符的空值;如果我不更改布局模式,则会看到和。

这就是我想要看到的原始模式布局字符串,这样我就可以进行更改并保存在日志文件中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2112696

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档