为何WebLogic 12c 发生stuck 时无法显示具体的请求路径

最近在分析WebLogic时,发现日志文件中值记录到了stuck,但是没有记录对应的http请求地址信息。这一信息和WebLogic console中的 服务器设置->监控->线程中也可以看到类似信息。 下面给出一个WebLogic 12C的stuck日志样例:
[STUCK] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "38" seconds working on the request "Workmanager: default, Version: 0, Scheduled=true, Started=true, Started time: 38680 ms
", which is more than the configured time (StuckThreadMaxTime) of "10" seconds in "server-failure-trigger". Stack trace:
java.lang.Object.wait(Native Method)


再看一个WebLogic 11g 的:
2015-8-7 上午02时10分51秒 CST> <Error> <WebLogicServer> <BEA-000337> <[STUCK] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "606" seconds working on the request "weblogic.servlet.internal.ServletRequestImpl@326a2b9d[
POST /web/lcam/finance/services/Civilize/InitWorkReminderFactory?wsdl HTTP/1.0
X-Forwarded-For: 10.150.140.75
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: ""
Content-Length: 409
]", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
java.util.WeakHashMap.getEntry(WeakHashMap.java:383)
java.util.WeakHashMap.containsKey(WeakHashMap.java:369)
com.bea.core.repackaged.aspectj.lang.reflect.AjTypeSystem.getAjType(AjTypeSystem.java:37)
com.bea.core.repackaged.springframework.aop.aspectj.annotation.AbstractAspectJAdvisorFactory.isAspect(AbstractAspectJAdvisorFactory.j


我们可以看到,11g版本中可以看到完整的请求信息。关于如何解决这个问题,到底是不是WLS的bug,我们还需要进行跟进。

2015-10-21更新:此问题Oracle已经在WebLogic 12.1.1版本上提供了补丁,补丁号20818726:Request information is missing in <BEA-00337> stuck thread log on WLS 12c (文档 ID 2045464.1)。由于12.1.1与12.1.2以上版本的补丁工具不同,与oracle沟通后,此补丁目前不适用于12.1.2及12.1.3,官方会稍后给出另外的补丁包。

2015-11-10更新:Oracle工程师提供了最新的基于12.1.2版本的补丁,p20818726_121200_Generic.zip,经测试,目前已经可以正常显示stuck的线程对应的请求信息了。

Ps:本博客将持续更新笔者近年来工作中遇到的各类技术问题及解决方案,欢迎采用关注、收藏、私信、回复等方式进行互动交流。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值