2015-10-13 106 views
1

我想在weblogic中獲取標記爲Hogger的線程的名稱。 我試過 ThreadPoolRuntimeMBean.getHoggingThreadCount() 但是這隻給出了Hogging線程數。如何獲得Hogging線程名稱WLST

在自整定線程庫 是WebLogic顯示「線程名稱」,「卡」(TRUE/FALSE)和「霍格」(TRUE/FALSE),所以很明顯的WebLogic開發者已經寫了一些方法來獲得這些值。

我正在尋找該weblogic內置方法(在WLST)或任何其他方式來獲取hogging線程名稱

更多細節

PFA Weblogic的屏幕快照或檢查該鏈接的圖像(http://www.munzandmore.com/wp-content/uploads/2012/04/st9.jpg

回答

0

這是一個非常基本的WLST腳本來完成這個(一個默認非羣集AdminServer中安裝):

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

您可以使用打印目錄(線程)獲得所有可用的屬性和方法。

對於更復雜的管理服務器環境中,你可以結合上面的這個例子:http://wlstbyexamples.blogspot.co.za/2009/06/self-tuned-thread-pool-count.html#.ViCqTnVStBc

+0

感謝Rudolfv,你能不能也幫我的for循環在線程引用的所有可能的方法列表。例如:thread.getName()和thread.isHogger。我想知道完整的線程名稱,在這裏通過getName方法我得到「」[ACTIVE]執行線程:'0'隊列: 'weblogic.kernal.Default(自我調整)'「」,它不表示任何東西。我想知道確切的線程名稱。請分享所有可能的方法或任何關於此問題的參考。 –