如何获取 Hogging 线程名称 WLST

How to get Hogging Thread name WLST

我想获取在 weblogic 中标记为 Hogger 的线程的名称。 我试过 ThreadPoolRuntimeMBean.getHoggingThreadCount() 但这只给出了占用线程的数量。

自调线程池线程数下 Weblogic 正在显示 "Thread Name" ,"Stuck" (True/ false) 和 "Hogger" (True/ false) , 所以显然 weblogic 开发者已经写了一些方法来得到这些值。

我正在寻找 weblogic 内置方法(在 WLST 中)或任何其他获取占用线程名称的方法

更多详细信息的 PFA Weblogic 屏幕截图 或查看此 link (http://www.munzandmore.com/wp-content/uploads/2012/04/st9.jpg)

上的图片

这是一个非常基本的 WLST 脚本来完成这个(对于默认的非集群 AdminServer 安装):

connect('weblogic', 'welcome1')
serverRuntime()
cd('ThreadPoolRuntime/ThreadPoolRuntime')
for thread in cmo.getExecuteThreads():
   print(thread.getName() + " - " + str(thread.isHogger()))

您可以使用 print dir(thread) 获取所有可用的属性和方法。

对于更复杂的托管服务器环境,您可以将以上内容与此示例结合使用:http://wlstbyexamples.blogspot.co.za/2009/06/self-tuned-thread-pool-count.html#.ViCqTnVStBc