【案例59】WebSphere类加载跟踪开启方法

问题现象

WAS加载代码时,模块开发怀疑是WebSphere本身加载某个类的代码出现了问题。但不知道怎么排查。故寻求帮助。

问题分析

WebSphere本身是提供相关类加载跟踪的方法的。

解决方案

经过排查资料。如果实际诊断中,能够明确断定是某个类的加载出了问题,在WebSphere的控制台开启【详细类装入】功能:选择“服务器类型/具体server/进程定义/Java虚拟机”,选择“详细类装入”

重启WAS之后,在native_stderr.log中,可以看到类的加载信息,例如:

class load: org.apache.taglibs.standard.tlv.JstlBaseTLV 
from: file:/D:/IBM.profiles/XXX/installedApps/wdanNode02Cell/myfaces-example-simple-1_1_9_war.ear/myfaces-example-simple-1.1.9.war/WEB-INF/lib/jstl-1.2.jar

 如果还需要类加载的更详细信息,可以在诊断跟踪中设置

*=info: com.ibm.ws.classloader.*=all

登陆管理控制台,左边导航树选择“故障诊断/日志和跟踪”,然后在右面区域选择进程名(/诊断跟踪。

选择“更改日志详细信息级别

设置*=info: com.ibm.ws.classloader.*=all,保存。 

重启WAS。在$profile/logs/server1/trace.log中,就可以看到类加载的详细信息。例如:

> loadClass name=com.ibm.isclite.container.collaborator.PortletServletCollaborator

…

com.ibm.ws.classloader.CompoundClassLoader@3f603f6

   Local ClassPath: D:\XXX\XXX\XXX\XXX\isclite.ear\struts.jar;

   …

   Delegation Mode: PARENT_FIRST

[23-12-31 12:49:38:371 CST] 0000000a CompoundClass < loadClass Exit

 

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值