本文概述
- 在WebSphere中进行线程转储
- 分析WebSphere线程转储
在WebSphere中进行线程转储 建议在5-8秒内进行多个线程转储。你可以使用以下任何一种方法来生成它。
1.使用wsadmin.sh
- 登录到WAS服务器
- 转到个人资料和bin文件夹
- 执行wsadmin.sh文件
[[email
protected] bin]# ./wsadmin.shWASX7209I: Connected to process "dmgr" on node localhostCellManager01 using SOAP connector;
The type of process is: DeploymentManagerWASX7029I: For help, enter: "$Help help"wsadmin>
- 在变量中设置JVM名称
set jvm [$AdminControl completeObjectName type=JVM, process=server1, *]
注意:例如, server1。将其更改为你的实际JVM名称。
wsadmin>
set jvm [$AdminControl completeObjectName type=JVM, process=server1, *]WebSphere:name=JVM, process=server1, platform=proxy, node=localhostNode01, j2eeType=JVM, J2EEServer=server1, version=8.5.5.0, type=JVM, mbeanIdentifier=JVM, cell=localhostCell01, spec=1.0wsadmin>
$AdminControl invoke $jvm dumpThreads
这将生成线程转储, 并将在配置文件路径下可用。
2.使用kill
- 使用ps命令查找JVM进程ID
- 执行kill -3 $ PID
# kill -3 $PID
你将在配置文件路径中找到转储。
3.使用WebSphere管理控制台
- 登录到DMGR控制台
- 导航到左侧的故障排除
- 选择JVM, 然后单击” Java core” 。
文章图片
一旦有了线程转储, 就可以使用以下工具对其进行分析。
分析WebSphere线程转储 分析转储始终具有挑战性, 使用免费工具将为你提供帮助。
1. IBM线程转储分析器(TDA)
使用IBM TDA, 你可以识别Java线程中的挂起, 死锁和瓶颈。
你可以从此处下载IBM TDA。这只是jar文件, 下载后, 你可以执行以下操作以启动GUI。
java -jar jca457.jar
文章图片
- 单击文件> > 打开线程转储
- 浏览文件夹并选择要分析的转储
- CPU使用率
- 内存段
- 用户进程资源限制
- 命令行参数
- 环境变量
- 共享类缓存
- 本机内存
- 线程状态
- 方法
文章图片
因此, 通过分析你正在寻找的乐趣与IBM TDA。
2.武士
另一个流行的分析仪是武士, 你可以从这里下载并执行以下操作。
java –jar samurai.jar
因此, 现在你应该能够生成和分析线程转储, 以进行应用程序故障排除。你可以尝试使用另一种联机线程转储分析器。
【如何生成和分析WebSphere线程转储()】你可能还对学习Java内存管理感兴趣。
推荐阅读
- 在WebSphere中生成堆转储,Java核心和系统转储
- 在IBM WebSphere Application Server中禁用安全性
- 解密隐藏文件
- WebSphere 8.5.x动态集群
- 如何安装IBM WebSphere并应用修订包()
- WebSphere 9在IBM Cloud – Bluemix上可用
- 找不到amqsput命令– Linux上的IBM MQ
- 将消息从一个队列复制到另一个队列-IBM MQ
- 如何在IBM WebSphere ND中创建集群()