Sun logo      上一個      目錄      下一個     

Sun Java System Application Server Enterprise Edition 8.1 管理指南 2005Q1

第 21 章
監視元件和服務

本章包含有關使用 Application Server 管理主控台監視元件的資訊。它包含以下小節:


關於監視

監視 Application Server

使用監視功能可以觀察在 Sun Java System Application Server Enterprise Edition 8.1 2005Q1 的伺服器實例中所部署的各種元件和服務的執行階段狀態。利用有關執行階段元件和程式狀態的資訊,可以確定效能瓶頸以便進行調校、和容量規劃、預測故障、在發生故障時分析根本原因,以及確保一切執行正常。

啟用監視功能會因增加系統耗用而使效能降低。

監視概述

若要監視 Application Server,請執行以下步驟:

  1. 使用管理主控台或 asadmin 工具啟用對特定服務和元件的監視功能。
  2. 如需有關此步驟的更多資訊,請參閱有關啟用和停用監視功能的管理主控台作業

  3. 使用管理主控台或 asadmin 工具檢視指定服務或元件的監視資料。
  4. 如需有關此步驟的更多資訊,請參閱有關檢視監視資料的管理主控台作業

關於可監視物件的樹狀結構

Application Server 使用樹狀結構來追蹤可監視物件。由於監視物件的樹是動態的,因此在實例中增加、更新或移除元件時該樹會相應地發生變更。樹中的根物件是伺服器實例名稱 (例如 server)。(在 Platform Editon 中,僅允許使用一個伺服器實例。)

以下指令顯示了樹的頂層:

asadmin> list --monitor server
server.applications
server.http-service
server.connector-service
server.jms-service
server.jvm
server.orb
server.resources
server.thread-pools

以下小節描述了這些子樹:

應用程式樹

以下示意圖顯示了企業應用程式的各種元件的頂層節點和子節點。具有可用的監視統計資訊的節點標有星號 (*)。如需更多資訊,請參閱 EJB 容器統計資訊Web 容器統計資訊

圖 21-1 應用程式節點樹狀結構

應用程式
   |--- 應用程式 1
   | |--- ejb 模組 1
   | | |--- ejb1 *
   |    | |--- 快取 (用於實體/sfsb) *
   |    | |--- 池 (用於 slsb/mdb/實體) *
   |    | |--- methods
   | |                       |---method1 *
   | |                       |---method2 *
   |    | |--- stateful-session-store (for sfsb)*
   |    | |--- timers (for s1sb/entity/mdb) *
   | |--- web-module-1
   |    | |--- virtual-server-1 *
   |    |      |---servlet1 *
   |    |                       |---servlet2 *
   |--- standalone-web-module-1
   |    | |----- virtual-server-2 *
   |    |      |---servlet3 *
   |    |      |---servlet4 *
   |    | |----- virtual-server-3 *
   |    |       |---servlet3 *(same servlet on different vs)
   |    |     |---servlet5 *
   |--- standalone-ejb-module-1
   |    | |--- ejb2 *
   |    | |--- cache (for entity/sfsb) *
   |    | |--- pool (for slsb/mdb/entity) *
   |    | |--- methods
   |    |   |--- method1 *
   |    |   |--- method2 *
   |--- application2

HTTP 服務樹

以下示意圖顯示了 HTTP 服務的節點。具有可用的監視資訊的節點標有星號 (*)。請參閱 HTTP 服務樹

圖 21-2 HTTP 服務示意圖 (PE 版)

http-service
|--- virtual-server-1
|--- http-listener-1 *
|--- http-listener-2 *
|--- virtual-server-2
|--- http-listener-1 *
|--- http-listener-2 *

圖 21-3 HTTP 服務示意圖 (EE 版)

http-service *
|---connection-queue *
|---dns *
|---file-cache *
|---keep-alive *
|---pwc-thread-pool *
|---virtual-server-1*
| |--- request *
|---virtual-server-2*
| |--- request *

資源樹

資源節點包含 JDBC 連線池和連接器連線池等池的可監視屬性。以下示意圖顯示了各種資源元件的頂層節點和子節點。具有可用的監視統計資訊的節點標有星號 (*)。請參閱 JDBC 連線池統計資訊JMS/連接器服務統計資訊

圖 21-4 資源示意圖

resources
|---connection-pool1(either connector-connection-pool or jdbc)*
|---connection-pool2(either connector-connection-pool or jdbc)*

連接器服務樹

連接器服務節點包含連接器連線池等池的可監視屬性。以下示意圖顯示了各種連接器服務元件的頂層節點和子節點。具有可用的監視統計資訊的節點標有星號 (*)。請參閱 JMS/連接器服務統計資訊

圖 21-5 連接器服務示意圖

connector-service
|--- resource-adapter-1
||-- connection-pools
|||-- pool-1 (All pool stats for this pool)
||-- work-management (All work mgmt stats for this RA)

JMS 服務樹

JMS 服務節點包含連接器連線池等池的可監視屬性。以下示意圖顯示了各種 JMS 服務元件的頂層節點和子節點。具有可用的監視統計資訊的節點標有星號 (*)。

圖 21-6 JMS 服務示意圖

jms-service
|-- connection-factories [AKA conn. pools in the RA world]
||-- connection-factory-1 (All CF stats for this CF)
|-- work-management (All work mgmt stats for the MQ-RA)

ORB 樹

ORB 節點包含連線管理程式的可監視屬性。以下示意圖顯示了 ORB 元件的頂層節點和子節點。具有可用的監視統計資訊的節點標有星號 (*)。請參閱 ORB 中連線管理程式的統計資訊

圖 21-7 ORB 示意圖

orb
|--- connection-managers
||--- connection-manager-1 *
||--- connection-manager-1 *

執行緒池樹

執行緒池節點包含連線管理程式的可監視屬性。以下示意圖顯示了 ORB 元件的頂層節點和子節點。具有可用的監視統計資訊的節點標有星號 (*)。請參閱執行緒池統計資訊

圖 21-8 執行緒池示意圖

thread-pools
||--- thread-pool-1 *
||--- thread-pool-2 *

關於受監視的元件和服務的統計資訊

本小節描述可用的監視統計資訊:

EJB 容器統計資訊

表 21-1 中介紹了 EJB 統計資訊。

表 21-1 EJB 統計資訊 

屬性名稱

資料類型

描述

createcount

計數統計資訊

呼叫 EJB 的 create 方法的次數。

removecount

計數統計資訊

呼叫 EJB 的 remove 方法的次數。

pooledcount

範圍統計資訊

處於匯集狀態的實體 Bean 的數目。

readycount

範圍統計資訊

處於就緒狀態的實體 Bean 的數目。

messagecount

計數統計資訊

訊息導引 Bean 收到的訊息數。

methodreadycount

範圍統計資訊

處於 MethodReady 狀態的有狀態或無狀態階段作業 Bean 的數目。

passivecount

範圍統計資訊

處於 Passive 狀態的有狀態階段作業 Bean 的數目。

表 21-2 中列示了可用於 EJB 方法呼叫的統計資訊。

表 21-2 EJB 方法統計資訊 

屬性名稱

資料類型

描述

methodstatistic

時間統計資訊

作業被呼叫的次數;呼叫期間所花費的總時間等資訊。

totalnumerrors

計數統計資訊

執行方法導致異常的次數。如果為 EJB 容器啟用了監視功能,則此統計資訊是為無狀態和有狀態階段作業 Bean 和實體 Bean 而收集的。

totalnumsuccess

計數統計資訊

方法成功執行的次數。如果為 EJB 容器啟用了監視功能,則此統計資訊是為無狀態和有狀態階段作業 Bean 和實體 Bean 收集的。

executiontime

計數統計資訊

上次成功/不成功嘗試執行方法作業所花費的時間 (ms)。如果在 EJB 容器中啟用了監視功能,則此統計資訊是為無狀態和有狀態階段作業 Bean 和實體 Bean 而收集的。

表 21-3 中列示了 EJB 階段作業儲存的統計資訊。

表 21-3 EJB 階段作業儲存統計資訊 

屬性名稱

資料類型

描述

currentSize

範圍統計資訊

目前位於儲存中的鈍化階段作業數或檢查點階段作業數。

activationCount

計數統計資訊

從儲存中啟動的階段作業數。

activationSuccessCount

計數統計資訊

從儲存中成功啟動的階段作業數

activationErrorCount

計數統計資訊

上次成功/不成功嘗試執行方法作業所花費的時間 (ms)。如果在 EJB 容器中啟用了監視功能,則此統計資訊是為無狀態和有狀態階段作業 Bean 和實體 Bean 而收集的。

passivationCount

計數統計資訊

使用此儲存鈍化 (取消啟動) 的階段作業數。

passivationSuccessCount

計數統計資訊

使用此儲存成功鈍化的階段作業數。

passivationErrorCount

計數統計資訊

無法使用此儲存鈍化的階段作業數。

expiredSessionCount

計數統計資訊

此儲存移除的過期階段作業數。

passivatedBeanSize

計數統計資訊

由此儲存鈍化的總位元組數,包括總數、最小值和最大值。

passivationTime

計數統計資訊

將 Bean 鈍化到儲存所花費的時間,包括總時間值、最小值和最大值。

checkpointCount (僅限於 EE)

計數統計資訊

使用此儲存進行階段作業檢查點操作的階段作業數。

checkpointSuccessCount (僅限於 EE)

計數統計資訊

成功進行檢查點操作的階段作業數。

checkpointErrorCount (僅限於 EE)

計數統計資訊

無法進行檢查點操作的階段作業數。

checkpointedBeanSize (僅限於 EE)

值統計資訊

由該儲存進行檢查點操作的 Bean 的總數。

checkpointTime (僅限於 EE)

時間統計資訊

透過檢查點操作將 Bean 放入儲存中所花費的時間。

表 21-4 中列示了可用於 EJB 池的統計資訊。

表 21-4 EJB 池統計資訊 

屬性名稱

資料類型

描述

numbeansinpool

已連結範圍統計資訊

相關聯池中的 EJB 數,提供有關池的變更方式的資訊。

numthreadswaiting

已連結範圍統計資訊

等待自由 Bean 的執行緒數,指出請求可能擁塞。

totalbeanscreated

計數統計資訊

從開始收集資料以來相關聯池中所建立的 Bean 的數目。

totalbeansdestroyed

計數統計資訊

自開始收集資料以來從相關聯池中銷毀的 Bean 的數目。

jmsmaxmessagesload

計數統計資訊

針對要服務的訊息導引 Bean 而一次載入 JMS 階段作業的最大訊息數。預設值為 1。僅套用於訊息導引 Bean 的池。

表 21-5 中列示了可用於 EJB 快取的統計資訊。

表 21-5 EJB 快取統計資訊 

屬性名稱

資料類型

描述

cachemisses

已連結範圍統計資訊

使用者請求未在快取中找到 Bean 的次數。

cachehits

已連結範圍統計資訊

使用者請求找到快取記憶體中某個項目的次數。

numbeansincache

已連結範圍統計資訊

快取記憶體中 Bean 的數目。這便是快取記憶體目前的大小。

numpassivations

計數統計資訊

鈍化的數目。僅套用於有狀態階段作業 Bean。

numpassivationerrors

計數統計資訊

鈍化期間發生的錯誤數。僅套用於有狀態階段作業 Bean。

numexpiredsessionsremoved

計數統計資訊

清除執行緒所移除的過期階段作業數目。僅套用於有狀態階段作業 Bean。

numpassivationsuccess

計數統計資訊

鈍化成功完成的次數。僅套用於有狀態階段作業 Bean。

表 21-6 中列示了可用於計時器的統計資訊。

表 21-6 計時器統計資訊 

統計資訊

資料類型

描述

numtimerscreated

計數統計資訊

系統中建立的計時器的數目。

numtimersdelivered

計數統計資訊

系統所傳送的計時器的數目。

numtimersremoved

計數統計資訊

從系統中移除的計時器的數目。

Web 容器統計資訊

圖 21-1 中所示的物件樹中包含了 Web 容器。系統為每個單獨的 Web 應用程式都顯示了 Web 容器統計資訊。表 21-7 中顯示了可用於 Servlet 的 Web 容器的統計資訊,表 21-8 中顯示了可用於 Web 模組的統計資訊。

表 21-7 Web 容器 (Servlet) 統計資訊 

統計資訊

單位

資料類型

注釋

errorcount

數目

計數統計資訊

回應碼大於或等於 400 的情況的累積次數。

maxtime

毫秒

計數統計資訊

Web 容器等待請求的最長時間。

processingtime

毫秒

計數統計資訊

處理每個請求所需時間的累積值。處理時間是總請求處理時間除以請求計數所得的平均值。

requestcount

數目

計數統計資訊

到目前為止所處理的請求總數。

表 21-8 中顯示了可用於 Web 模組的統計資訊。

表 21-8 Web 容器 (Web 模組) 統計資訊 

統計資訊

資料類型

注釋

jspcount

計數統計資訊

已載入 Web 模組的 JSP 頁面的數目。

jspreloadcount

計數統計資訊

已重新載入 Web 模組的 JSP 頁面的數目。

sessionstotal

計數統計資訊

已為 Web 模組建立的階段作業總數。

activesessionscurrent

計數統計資訊

Web 模組的目前處於使用中狀態的階段作業數。

activesessionshigh

計數統計資訊

Web 模組的同時處於使用中狀態的階段作業最大數。

rejectedsessionstotal

計數統計資訊

Web 模組的被拒絕的階段作業總數。是指由於允許處於使用中狀態的階段作業數已達到最大值而未被建立的階段作業數。

expiredsessionstotal

計數統計資訊

Web 模組的已過期階段作業的總數。

sessionsize (僅限於 EE)

平均範圍統計資訊

Web 模組的階段作業大小。值可以為大、小或平均值,或以位元組為單位 (用於串列化階段作業)。

containerlatency (僅限於 EE)

平均範圍統計資訊

整個延時請求中 Web 容器部分的延時。值可以是長、短或平均值。

sessionpersisttime (僅限於 EE)

平均範圍統計資料

將 HTTP 階段作業狀態保持到 Web 模組的後端儲存中所花費的時間 (以 ms 為單位,短、長或平均值)。

cachedsessionscurrent (僅限於 EE)

計數統計資訊

快取在記憶體中用於 Web 模組的目前階段作業數。

passivatedsessionscurrent (僅限於 EE)

計數統計資訊

Web 模組的目前已鈍化的階段作業數。

HTTP 服務統計資訊

表 21-9 中顯示了可用於 HTTP 服務的統計資訊。這些統計資訊僅適用於 Platform Edition。如需有關企業版上的 HTTP 服務的統計資訊,請參閱表 21-32

表 21-9 HTTP 服務統計資訊 (僅適用於 Platform Edition) 

統計資訊

單位

資料類型

注釋

bytesreceived

位元組

計數統計資訊

每個請求處理器接收到的位元組累積值。

bytessent

位元組

計數統計資訊

每個請求處理器所傳送的位元組累積值。

currentthreadcount

數目

計數統計資訊

目前位於偵聽程式執行緒池中的處理執行緒數。

currentthreadsbusy

數目

計數統計資訊

處理請求的偵聽程式執行緒池中目前正在使用的請求處理執行緒的數目。

errorcount

數目

計數統計資訊

錯誤計數的累積值,錯誤計數是指回應碼大於或等於 400 這類情況發生的次數。

maxsparethreads

數目

計數統計資訊

可以存在的未使用回應處理執行緒的最大數目。

minsparethreads

數目

計數統計資訊

可以存在的未使用回應處理執行緒的最小數目。

maxthreads

數目

計數統計資訊

偵聽程式所建立的請求處理執行緒的最大數目。

maxtime

毫秒

計數統計資訊

處理執行緒的最長時間。

processing-time

毫秒

計數統計資訊

處理每個請求所花費時間的累積值。處理時間是總請求處理時間除以請求計數所得的平均值。

request-count

數目

計數統計資訊

到目前為止所處理的請求總數。

JDBC 連線池統計資訊

用於在執行階段監視 JDBC 資源,以測量效能並擷取資源使用情況。由於建立 JDBC 連線的成本很高並且常常會導致應用程式出現效能瓶頸問題,因此對 JDBC 連線池如何釋放和建立新連線以及正在等待從特定池中擷取連線的執行緒數的監視是至關重要的。

表 21-10 中顯示了可用於 JDBC 連線池的統計資訊。

表 21-10 JDBC 連線池統計資訊 

統計資訊

單位

資料類型

描述

numconnfailedvalidation

數目

計數統計資訊

從開始時間到上次取樣時間為止在連線池中驗證失敗的連線總數。

numconnused

數目

範圍統計資訊

提供連線使用統計資訊。目前正使用的連線的總數,以及有關使用過的連線的最大數目 (高水印) 的資訊。

numconnfree

範圍統計資訊

計數統計資訊

上次取樣時池中的自由連線總數。

numconntimedout

計數統計資訊

已連結範圍統計資訊

開始時間與上次取樣時間之間池中的逾時連線總數。

averageconnwaittime

數目

計數統計資訊

指示嘗試與連接器連線池建立成功連線請求的平均等待時間。

waitqueuelength

數目

計數統計資訊

佇列中正在等待處理的連線請求數。

connectionrequestwaittime

 

範圍統計資訊

連線請求的最長和最短等待時間。目前值表示上次由池處理的請求的等待時間。

numconncreated

毫秒

計數統計資訊

自上次重設以來建立的實體連線數。

numconndestroyed

數目

計數統計資訊

自上次重設以來已銷毀的實體連線數。

numconnacquired

數目

計數統計資訊

從池中獲取的邏輯連線數。

numconnreleased

數目

計數統計資訊

釋放到池中的邏輯連線數。

JMS/連接器服務統計資訊

表 21-11 中顯示了可用於連接器連線池的統計資訊。表 21-12 中顯示了連接器工作管理的統計資訊。

表 21-11 連接器連線池統計資訊 

統計資訊

單位

資料類型

描述

numconnfailed
validation

數目

計數統計資訊

從開始時間到上次取樣時間為止在連線池中驗證失敗的連線總數。

numconnused

數目

範圍統計資訊

提供連線使用統計資訊。目前正使用的連線總數,以及有關使用過的連線的最大數目的資訊 (高水印)。

numconnfree

數目

範圍統計資訊

上次取樣時池中的自由連線總數。

numconntimedout

數目

計數統計資訊

開始時間與上次取樣時間之間池中的逾時連線總數。

averageconnwaittime

數目

計數統計資訊

連線由連線池處理之前的平均等待時間。

waitqueuelenght

數目

計數統計資訊

佇列中正在等待處理的連線請求數。

connectionrequest
waittime

 

範圍統計資訊

連線請求的最長和最短等待時間。目前值表示上次由池處理的請求的等待時間。

numconncreated

毫秒

計數統計資訊

自上次重設以來建立的實體連線數。

numconndestroyed

數目

計數統計資訊

自上次重設以來已銷毀的實體連線數。

numconnacquired

數目

計數統計資訊

從池中獲取的邏輯連線數。

numconnreleased

數目

計數統計資訊

釋放到池中的邏輯連線數。

表 21-12 中列示了可用於連接器工作管理的統計資訊。

表 21-12 連接器工作管理統計資訊 

統計資訊

資料類型

描述

activeworkcount

範圍統計資訊

由連接器執行的工作物件數。

waitqueuelength

範圍統計資訊

執行前在佇列中等待的工作物件數。

workrequestwaittime

範圍統計資訊

工作物件在被執行前所等待的最長和最短時間。

submittedworkcount

計數統計資訊

由連接器模組提交的工作物件數。

rejectedworkcount

計數統計資訊

Application Server 拒絕的工作物件數。

completedworkcount

計數統計資訊

完成的工作物件數。

ORB 中連線管理程式的統計資訊

表 21-13 中列示了可用於 ORB 中連線管理程式的統計資訊。

表 21-13 ORB 中連線管理程式的統計資訊 

統計資訊

單位

資料類型

描述

connectionsidle

數目

計數統計資訊

提供與 ORB 的閒置連線的總數。

connectionsinuse

數目

計數統計資訊

提供與 ORB 的正在使用的連線總數。

totalconnections

數目

綁定範圍統計資訊

與 ORB 的連線總數。

執行緒池統計資訊

表 21-14 中顯示了可用於執行緒池的統計資訊。

表 21-14 執行緒池統計資訊 

統計資訊

單位

資料類型

描述

averagetimeinqueue

毫秒

範圍統計資訊

在得到處理之前請求在佇列中等待的平均時間 (以毫秒為單位)。

averageworkcompletion-
time

毫秒

範圍統計資訊

完成指定所花費的平均時間 (以毫秒為單位)。

currentnumberofthreads

數目

綁定範圍統計資訊

目前的請求處理執行緒的數目。

numberofavailablethreads

數目

計數統計資訊

可用的執行緒數。

numberofbusythreads

數目

計數統計資訊

處於忙碌狀態的執行緒數。

totalworkitemsadded

數目

計數統計資訊

到目前為止增加到工作佇列中的工作項目總數。

作業事件服務統計資訊

作業事件服務允許用戶端凍結作業事件子系統,以便轉返作業事件,並確定在凍結期間進行處理的作業事件。表 21-15 中顯示了可用於作業事件服務的統計資訊。

表 21-15 作業事件服務統計資訊 

統計資訊

資料類型

描述

activecount

計數統計資訊

目前處於使用中狀態的作業事件數。

activeids

字串統計資訊

目前處於使用中狀態的作業事件的 ID。每個此類作業事件均可在凍結作業事件服務後轉返。

committedcount

計數統計資訊

已確定的作業事件數。

rolledbackcount

計數統計資訊

已轉返的作業事件數。

狀態

字串統計資訊

指示作業事件是否已凍結。

Java 虛擬機器 (JVM) 統計資訊

JVM 具有始終處於啟用狀態的可監視屬性。表 21-16 中顯示了可用於 JVM 的統計資訊。

表 21-16 JVM 統計資訊 

統計資訊

資料類型

描述

heapsize

綁定範圍統計資訊

具有 JVM 的記憶體堆疊大小的較高和較低連結的常駐記憶體足跡。

uptime

計數統計資訊

JVM 已執行的時間。

J2SE 5.0 中的 JVM 統計資訊

如果 Application Server 被配置為執行 J2SE 5.0 或更高版本,則可以從 JVM 中獲得附加監視資訊。將監視層級設定為「低」以啟用這些附加資訊的顯示。將監視層級設定為「高」還可以檢視與系統中每個活性執行緒相關的資訊。如需有關 J2SE 5.0 中可用的附加監視功能的更多資訊,請參閱以下 URL 中標題為「Monitoring and Management for the Java Platform」的文件:

http://java.sun.com/j2se/1.5.0/docs/guide/management/

在以下位置討論了 J2SE 5.0 監視工具:

http://java.sun.com/j2se/1.5.0/docs/tooldocs/#manage

表 21-17 中顯示了可用於在 J2SE 5.0 的 JVM 中進行類別載入的統計資訊。

表 21-17 J2SE 5.0 的 JVM 統計資訊 ─ 類別載入 

統計資訊

資料類型

描述

loadedclasscount

計數統計資訊

目前載入 JVM 的類別的數目。

totalloadedclasscount

計數統計資訊

自 JVM 開始執行以來已載入的類別的總數。

unloadedclasscount

計數統計資訊

自 JVM 開始執行以來已從 JVM 中卸載的類別的數目。

表 21-18 中顯示了可用於在 J2SE 5.0 的 JVM 中進行編譯的統計資訊。

表 21-18 J2SE 5.0 的 JVM 統計資訊 ─ 編譯

統計資訊

資料類型

描述

totalcompilationtime

計數統計資訊

編譯所花費的累積時間 (以毫秒為單位)。

表 21-19 中顯示了可用於在 J2SE 5.0 的 JVM 中進行資源回收的統計資訊。

表 21-19 J2SE 5.0 的 JVM 統計資訊 ─ 資源回收

統計資訊

資料類型

描述

collectioncount

計數統計資訊

已發生的回收的總數。

collectiontime

計數統計資訊

累積的收集時間 (以毫秒為單位)。

表 21-20 中顯示了可用於 J2SE 5.0 的 JVM 中的記憶體的統計資訊。

表 21-20 J2SE 5.0 的 JVM 統計資訊 ─ 記憶體 

統計資訊

資料類型

描述

objectpendingfinalizationcount

計數統計資訊

擱置結束操作的物件的大約數目。

initheapsize

計數統計資訊

最初由 JVM 請求的堆疊的大小。

usedheapsize

計數統計資訊

目前正在使用的堆疊的大小。

maxheapsize

計數統計資訊

可用於記憶體管理的最大記憶體容量 (以位元組為單位)。

committedheapsize

計數統計資訊

確定可由 JVM 使用的記憶體容量 (以位元組為單位)。

initnonheapsize

計數統計資訊

最初由 JVM 請求的非堆疊區域的大小。

usednonheapsize

計數統計資訊

目前正在使用的非堆疊區域的大小。

maxnonheapsize

計數統計資訊

可用於記憶體管理的最大記憶體容量 (以位元組為單位)。

committednonheapsize

計數統計資訊

確定可由 JVM 使用的記憶體容量 (以位元組為單位)。

表 21-21 中顯示了可用於 J2SE 5.0 的 JVM 中的作業系統的統計資訊。

表 21-21 J2SE 5.0 的 JVM 統計資訊 ─ 作業系統 

統計資訊

資料類型

描述

arch

字串統計資訊

作業系統架構。

availableprocessors

計數統計資訊

可用於 JVM 的處理器的數目。

name

字串統計資訊

作業系統名稱。

version

字串統計資訊

作業系統版本。

表 21-22 中顯示了可用於 J2SE 5.0 的 JVM 中執行階段的統計資訊。

表 21-22 J2SE 5.0 的 JVM 統計資訊 ─ 執行階段 

統計資訊

資料類型

描述

name

字串統計資訊

表示正在執行的 JVM 的名稱

vmname

字串統計資訊

JVM 實作名稱。

vmvendor

字串統計資訊

JVM 實作供應商。

vmversion

字串統計資訊

JVM 實作版本。

specname

字串統計資訊

JVM 規格名稱。

specvendor

字串統計資訊

JVM 規格供應商。

specversion

字串統計資訊

JVM 規格版本。

managementspecversion

字串統計資訊

由 JVM 實作的管理規格版本。

classpath

字串統計資訊

系統類別載入器搜尋類別檔案時所使用的類別路徑。

librarypath

字串統計資訊

Java 程式庫路徑。

bootclasspath

字串統計資訊

啟動程式類別載入器搜尋類別檔案時所使用的類別路徑。

inputarguments

字串統計資訊

傳送給 JVM 的輸入引數。不包括 main 方法的引數。

uptime

計數統計資訊

JVM 的正常執行時間 (以毫秒為單位)。

表 21-23 中顯示了可用於 J2SE 5.0 的 JVM 中的 ThreadInfo 的統計資訊。

表 21-23 J2SE 5.0 的 JVM 統計資訊 ─ 執行緒資訊 

統計資訊

資料類型

描述

threadid

計數統計資訊

執行緒 ID。

threadname

字串統計資訊

執行緒名稱。

threadstate

字串統計資訊

執行緒狀態。

blockedtime

計數統計資訊

執行緒進入 BLOCKED 狀態以來所經歷的時間 (以毫秒為單位)。如果已停用執行緒競爭狀態監視功能,則傳回 -1。

blockedcount

計數統計資訊

執行緒進入 BLOCKED 狀態的總次數。

waitedtime

計數統計資訊

執行緒處於 WAITING 狀態所經歷的時間 (以毫秒為單位)。如果已停用執行緒競爭狀態監視功能,則傳回 -1。

waitedcount

計數統計資訊

執行緒處於 WAITINGTIMED_WAITING 狀態的總次數。

lockname

字串統計資訊

監視鎖定的字串表示,該監視所定為執行緒被暫停而無法進入或執行緒等待透過 Object.wait 方法接收通知。

lockownerid

計數統計資訊

包含某個物件的監視鎖定的執行緒 ID,該執行緒在該物件上發生區段化。

lockownername

字串統計資訊

包含某個物件的監視所定的執行緒名稱,該執行緒在該物件上發生區段化。

stacktrace

字串統計資訊

與該執行緒相關聯的堆疊追蹤。

表 21-24 中顯示了可用於 J2SE 5.0 的 JVM 中的執行緒的統計資訊。

表 21-24 J2SE 5.0 的 JVM 統計資訊 ─ 執行緒 

統計資訊

資料類型

描述

threadcount

計數統計資訊

目前的活性常駐程式執行緒和非常駐程式執行緒數。

peakthreadcount

計數統計資訊

JVM 啟動或峰重設以來的峰活性執行緒計數。

totalstartedthreadcount

計數統計資訊

JVM 啟動以來建立和/或啟動的執行緒總數。

daemonthreadcount

計數統計資訊

目前的活性常駐程式執行緒數。

allthreadids

字串統計資訊

所有活性執行緒 ID 清單。

currentthreadcputime

計數統計資訊

如果已啟用 CPU 時間測量,則表示目前執行緒的 CPU 時間 (以納秒為單位)。如果已停用 CPU 時間測量,則傳回 -1。

monitordeadlockedthreads

字串統計資訊

處於監視死結狀態的執行緒 ID 清單。

生產 Web 容器 (PWC) 統計資訊

可用於 Application Server 的 Enterprise Edition (EE) 上的以下 PWC 元件和服務的統計資訊:

表 21-25 中列示了 PWC 虛擬伺服器的統計資訊。

表 21-25 PWC 虛擬伺服器統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

id

字串統計資訊

虛擬伺服器的 ID。

mode

字串統計資訊

虛擬伺服器所處的模式。選項包括 unknownactive

hosts

字串統計資訊

由該虛擬伺服器提供服務的主機的名稱。

interfaces

字串統計資訊

配置了虛擬伺服器的介面 (偵聽程式) 的類型。

表 21-26 中列示了可用於 PWC 請求的統計資訊。

表 21-26 PWC 請求統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

method

字串統計資訊

用於請求的方法。

uri

字串統計資訊

上一個被處理的 URI。

countrequests

計數統計資訊

已處理的請求數。

countbytestransmitted

計數統計資訊

傳輸的位元組數,如果此資訊不可用,則值為 0。

countbytesreceived

計數統計資訊

接收的位元組數,如果此資訊不可用,則值為 0。

ratebytesreceived

計數統計資訊

資料在某段伺服器定義的時間間隔內的傳輸速率,如果此資訊不可用,則值為 0。

maxbytestransmissionrate

計數統計資訊

資料在某段伺服器定義的時間間隔內的最大傳輸速率,如果此資訊不可用,則值為 0。

countopenconnections

計數統計資訊

目前開啟的連線數,如果此資訊不可用,則值為 0。

maxopenconnections

計數統計資訊

同時開啟的連線的最大數目,如果此資訊不可用,則值為 0。

count2xx

計數統計資訊

代碼為 2XX 的回應的總數。

count3xx

計數統計資訊

代碼為 3XX 的回應的總數。

count4xx

計數統計資訊

代碼為 4XX 的回應的總數。

count5xx

計數統計資訊

代碼為 5XX 的回應的總數。

countother

計數統計資訊

具有其他回應代碼的回應總數。

count200

計數統計資訊

代碼為 200 的回應的總數。

count302

計數統計資訊

代碼為 302 的回應的總數。

count304

計數統計資訊

代碼為 304 的回應的總數。

count400

計數統計資訊

代碼為 400 的回應的總數。

count401

計數統計資訊

代碼為 401 的回應的總數。

count403

計數統計資訊

代碼為 403 的回應的總數。

count404

計數統計資訊

代碼為 404 的回應的總數。

count503

計數統計資訊

代碼為 503 的回應的總數。

快取資訊小節提供了有關目前檔案快取的使用方式的資訊。表 21-27 中列示了 PWC 檔案快取的統計資訊。

表 21-27 PWC 檔案快取統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

flagenabled

計數統計資訊

指示是否啟用了檔案快取。禁用時有效值為 0,啟用時有效值為 1。

secondsmaxage

計數統計資訊

有效快取項目的最長存在時間 (以秒為單位)。

countentries

計數統計資訊

目前的快取項目數。單一快取項目表示單一 URI。

maxentries

計數統計資訊

同步式快取項目的最大數目。

countopenentries

計數統計資訊

與開啟的檔案關聯的項目數。

maxopenentries

計數統計資訊

與開啟的檔案關聯的同步式快取項目的最大數目。

sizeheapcache

計數統計資訊

用於快取內容的堆疊儲存區空間。

maxheapcachesize

計數統計資訊

用於快取檔案內容的最大堆疊儲存區空間。

sizemmapcache

計數統計資訊

記憶體對映的檔案內容所使用的位址空間大小。

maxmmapcachesize

計數統計資訊

檔案快取用於記憶體對映檔案內容的最大位址空間大小。

counthits

計數統計資訊

快取查找成功的次數。

countmisses

計數統計資訊

快取查找失敗的次數。

countinfohits

計數統計資訊

檔案資訊查找成功的次數。

countinfomisses

計數統計資訊

快取的檔案資訊遺失的數目。

countcontenthits

計數統計資訊

快取的檔案內容的命中次數。

countcontentmisses

計數統計資訊

檔案資訊查找失敗的次數。

本小節提供有關伺服器的 HTTP 層級持續作用的系統的資訊。表 21-28 中列示了可用於 PWC 持續作用的統計資訊。

表 21-28 PWC 持續作用統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

countconnections

計數統計資訊

處於持續作用模式的連線數。

maxconnections

計數統計資訊

允許同步處於持續作用模式的最大連線數。

counthits

計數統計資訊

處於持續作用模式的連線隨後進行了有效請求的總次數。

countflushes

計數統計資訊

伺服器關閉持續作用的連線的次數。

countrefusals

計數統計資訊

可能由於有太多的持續性連線而使伺服器無法將連線傳送到持續作用執行緒的次數。

counttimeouts

計數統計資訊

伺服器因用戶端連線逾時且沒有任何活動而終止持續作用連線的次數。

secondstimeout

計數統計資訊

關閉閒置持續作用連線之前經歷的時間 (以秒為單位)。

DNS 快取快取 IP 位址和 DNS 名稱。依預設,伺服器的 DNS 快取處於停用狀態。單一快取項目表示單一 IP 位址或 DNS 名稱查找。表 21-29 中列示了可用於 PWC DNS 的統計資訊。

表 21-29 PWC DNS 統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

flagcacheenabled

計數統計資訊

指示是否啟用了 DNS 快取。禁用時為 0,啟用時為 1。

countcacheentries

計數統計資訊

目前位於快取中的 DNS 項目數。

maxcacheentries

計數統計資訊

快取中可容納的 DNS 項目的最大數目。

countcachehits

計數統計資訊

DNS 快取查找成功的次數。

countcachemisses

計數統計資訊

DNS 快取查找失敗的次數。

flagasyncenabled

計數統計資訊

指示是否啟用了非同步 DNS 查找。禁用時為 0,啟用時為 1。

countasyncnamelookups

計數統計資訊

非同步 DNS 名稱查找的總數。

countasyncaddrlookups

計數統計資訊

非同步 DNS 位址查找的總數。

countasynclookupsinprogress

計數統計資訊

正在進行的非同步查找的數目。

表 21-30 中列示了 PWC 執行緒池的統計資訊。

表 21-30 PWC 執行緒池統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

id

字串統計資訊

執行緒池 ID。

countthreadsidle

計數統計資訊

目前處於閒置狀態的請求處理執行緒數。

countthreads

計數統計資訊

目前的請求處理執行緒的數目。

maxthreads

計數統計資訊

可同時存在的請求處理執行緒的最大數目。

countqueued

計數統計資訊

佇列等候由此執行緒池進行處理的請求數。

peakqueued

計數統計資訊

佇列中同步容納的最大請求數。

maxqueued

計數統計資訊

佇列一次可容納的最大請求數。

連線佇列是請求被處理前保存這些請求的佇列。連線佇列的統計資訊顯示佇列中的階段作業數以及連線被接受前的平均延遲。表 21-31 中列示了 PWC 連線佇列的統計資訊。

表 21-31 PWC 連線佇列統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

id

字串統計資訊

連線佇列的 ID。

counttotalconnections

計數統計資訊

已接受的連線總數。

countqueued

計數統計資訊

目前位於佇列中的連線數。

peakqueued

計數統計資訊

佇列中同步容納的最大連線數。

maxqueued

計數統計資訊

連線佇列的最大大小。

countoverflows

計數統計資訊

佇列太滿而無法容納連線的次數。

counttotalqueued

計數統計資訊

已佇列的連線總數。某個給定連線可能會被多次佇列,因此 counttotalqueued 可能大於或等於 counttotalconnections

tickstotalqueued

計數統計資訊

連線在佇列中所花費的週期總數。週期是由系統決定的時間單位。

countqueued1minuteaverage

計數統計資訊

前 1 分鐘內處於佇列狀態的平均連線數。

countqueued5minuteaverage

計數統計資訊

前 5 分鐘內處於佇列狀態的平均連線數。

countqueued15minuteaverage

計數統計資訊

前 15 分鐘內處於佇列狀態的平均連線數。

表 21-32 中列示了 PWC HTTP 服務的統計資訊。

表 21-32 PWC HTTP 服務統計資訊 (僅限於 EE) 

屬性名稱

資料類型

描述

id

字串統計資訊

HTTP 服務的實例名稱。

versionserver

字串統計資訊

HTTP 服務的版本編號。

timestarted

字串統計資訊

啟動 HTTP 服務的時間 (GMT)。

secondsrunning

計數統計資訊

HTTP 服務啟動以來所經歷的時間 (以秒為單位)。

maxthreads

計數統計資訊

每個實例中的最大工作者執行緒數。

maxvirtualservers

計數統計資訊

每個實例中可以配置的最大虛擬伺服器數目。

flagprofilingenabled

計數統計資訊

是否啟用了 HTTP 服務效能設定檔。有效值為 0 或 1。

flagvirtualserveroverflow

計數統計資訊

指示是否配置了多於 maxvirtualservers 的虛擬伺服器。如果設定為 1,則不會為所有的虛擬伺服器追蹤統計資料。

load1minuteaverage

計數統計資訊

前 1 分鐘內請求的平均負載。

load5minuteaverage

計數統計資訊

前 5 分鐘內請求的平均負載。

load15minuteaverage

計數統計資訊

前 15 分鐘內請求的平均負載。

ratebytestransmitted

計數統計資訊

在某段伺服器定義的時間間隔內資料的傳輸速率。如果此資訊不可用,則結果為 0。

ratebytesreceived

計數統計資訊

在某段伺服器定義的時間間隔內資料的接收速率。如果此資訊不可用,則結果為 0。


有關啟用和停用監視功能的管理主控台作業

使用管理主控台配置監視層級

  1. 存取 [監視服務] 頁面。若要完成此操作,請執行以下步驟:
    1. 在樹中,展開 [配置] 節點。
    2. 在樹中,展開要配置為用於監視功能的伺服器實例的節點,例如 server-config
    3. 在樹中,選取 [監視]。
  2. 在 [監視服務] 頁面中,從要變更其監視層級的元件或服務相對的組合方塊中選擇適當的值。
  3. 依預設,除始終可監視的 Java 虛擬機器 (JVM) 之外,其他所有元件和服務的監視功能都是關閉的。若要啟用監視功能,請在組合方塊中選取 [低] 或 [高]。若要關閉監視功能,請在組合方塊中選取 [關閉]。可以開啟或關閉以下元件和服務的監視功能:

    • JVM ─ 將此選項的監視層級設定為「低」以監視 Java 虛擬機器。
    • HTTP 服務 ─ 將此選項的監視層級設定為 LOW 以監視所有 HTTP 偵聽程式和虛擬伺服器。
    • 作業事件服務 ─ 將此選項的監視層級設定為 LOW 以監視任意作業事件子系統。
    • JMS/連接器服務 ─ 將此選項的監視層級設定為 LOW 以監視任意 Java 訊息服務 (JMS)。
    • ORB ─ 將此選項的監視層級設定為 LOW 以監視 Application Server 核心及其連線管理程式使用的系統 ORB。
    • Web 容器 ─ 將此選項的監視層級設定為 LOW 以監視所有部署的 Servlet。
    • EJB 容器 ─ 將此選項的監視層級設定為 LOW 以監視所有部署的 EJB、EJB 池和 EJB 快取。將此方法設定為 HIGH 還可以監視 EJB 商業方法。
    • JDBC 連線池 ─ 將此選項的監視層級設定為 LOW 以監視所有 JDBC 連線池。
    • 執行緒池 ─ 將此選項的監視層級設定為 LOW 以監視所有執行緒池。
  4. 按一下 [儲存]。

此版本中沒有 [附加監視服務特性],因此請忽略 [附加特性] 表。

等效的 asadmin 指令為:set,例如,若要開啟對 HTTP 服務的監視功能,請使用以下 asadmin 指令:

asadmin> set --user admin_user server.monitoring-service.module-monitoring-levels.http-service=LOW

使用 asadmin 工具配置監視功能

若要關閉監視功能,或設定監視元件或服務的層級,您可以按照使用管理主控台配置監視層級中的說明使用管理主控台,也可以按照本小節中的說明使用 asadmin 工具。

  1. 使用 get 指令可以查找目前已對哪些服務和元件啟用了監視功能:
  2. asadmin> get --user admin_user server.monitoring-service.module-monitoring-levels.*

    傳回:

    server.monitoring-service.module-monitoring-levels.
    connector-connection-pool = OFF
    server.monitoring-service.module-monitoring-levels.
    connector-service = OFF
    server.monitoring-service.module-monitoring-levels.ejb-container = OFF
    server.monitoring-service.module-monitoring-levels.http-service = OFF
    server.monitoring-service.module-monitoring-levels.jdbc-connection-pool = OFF
    server.monitoring-service.module-monitoring-levels.jms-service = OFF
    server.monitoring-service.module-monitoring-levels.jvm = OFF
    server.monitoring-service.module-monitoring-levels.orb = OFF
    server.monitoring-service.module-monitoring-levels.thread-pool = OFF
    server.monitoring-service.module-monitoring-levels.transaction-service = OFF
    server.monitoring-service.module-monitoring-levels.web-container = OFF
  3. 使用 set 指令可以啟用監視功能。
  4. 例如,若要啟用對 HTTP 服務的監視功能,請輸入以下指令:

    asadmin> set --user admin_user server.monitoring-service.module-monitoring-levels.http-service=LOW

    若要停用監視功能,請使用 set 指令並將監視層級指定為 OFF


有關檢視監視資料的管理主控台作業

在管理主控台中檢視監視資料

若要使用 Application Server 管理主控台檢視伺服器實例中部署的元件或服務的監視資料,請執行以下步驟。如需有關每個元件或服務的屬性的更多描述,請參閱關於受監視的元件和服務的統計資訊

  1. 存取 [監視] 頁面。若要完成此操作,請執行以下步驟:
    1. 在樹形元件中,展開 [獨立實例] 節點,例如 server (Admin Server)
    2. 從清單中選取一個獨立伺服器實例。
    3. 選取 [監視] 頁面。
    4. 在 [監視] 頁面上選取 [監視] 標籤。
  2. 在 [檢視] 清單中,選取已部署到伺服器實例並已為其啟用了監視功能的元件或服務。
  3. 所選取元件或服務的監視資料顯示在 [檢視] 欄位下。如需有關可監視特性的描述,請參閱關於受監視的元件和服務的統計資訊

    如果已啟用 JVM、伺服器、執行緒池、HTTP 服務和作業事件服務的監視功能,則可以在此頁面中檢視這些元件和服務的監視資料。關於可監視物件的樹狀結構中顯示了說明這些元件和服務的組織方式的圖解。

  4. 如果在此清單中沒有看到要監視的元件或服務,請選取 [配置監視] 連結來啟用和停用所選取元件和服務的監視功能。選取 [關閉] 以停用對元件或服務的監視功能。選取 [LOW] 或 [HIGH] 以啟用對元件或服務的監視功能。
  5. 如需有關啟用和停用監視功能的更多資訊,請參閱使用管理主控台配置監視層級使用 asadmin 工具配置監視功能

  6. 選取 [監視] 頁面的 [應用程式]標籤可以檢視已部署到伺服器實例並已為其啟用了監視功能的應用程式元件的監視資料。從 [應用程式] 清單中選取應用程式。從 [元件] 清單中選取特定元件。
  7. 如果未顯示應用程式或元件的監視資料,請選取 [配置監視] 連結來啟用或停用元件或服務的監視功能。若要監視應用程式,請開啟執行這些應用程式的容器:例如,對於 Web 應用程式的 Web 容器和/或對於 EJB 應用程式的 EJB 容器,請選取 [Low] 或 [High]。

    如果未顯示應用程式的監視資料,則該應用程式很可能不存在或未運行。僅當應用程式存在、其監視功能已啟用且正在運行時,應用程式監視資料才可用。執行了應用程式後,將在監視註冊中註冊該應用程式並顯示其監視資料。

    使用管理主控台監視遠端應用程式和實例。遠端實例必須正在執行並已設定配置才能執行此操作。

    所選取元件的監視資料顯示在所選取元件下面。如需有關可監視特性的描述,請參閱關於受監視的元件和服務的統計資訊。可以在關於可監視物件的樹狀結構中檢視到用於說明這些元件和服務如何針對應用程式進行組織的圖解。

  8. 選取 [資源] 頁面可以檢視已部署到伺服器實例中並已對其啟用監視功能的資源的監視資料。從 [檢視] 清單中選取資源。如果未顯示您要檢視其監視資料的資源,請選取 [配置監視] 連結來啟用或停用資源的監視功能。
  9. 如果未顯示資源的監視資料,則該資源很可能不存在或未運行。僅當資源存在、其監視功能已在 HIGH 層級啟用且其正在運行的情況下,該資源的監視資料才可用。例如,如果您已建立一個 JDBC 連接器服務,但使用該連接器服務的應用程式尚未從服務請求連接器,則說明該服務尚未建立。因而,不存在任何服務,也沒有任何可用的監視資料。JDBC 應用程式執行並且從服務請求連接器之後,將在監視註冊中註冊該服務並顯示其監視資料。

    所選取元件或服務的監視資料顯示在 [檢視] 欄位下。如需有關可監視特性的描述,請參閱關於受監視的元件和服務的統計資訊。可以在關於可監視物件的樹狀結構中檢視到用於說明這些元件和服務如何針對資源進行組織的圖解。

  10. 選取 [作業事件] 頁面以凍結作業事件子系統,進而轉返作業事件並確定凍結時正在進行的作業事件。若要啟用作業事件服務的監視功能,請選取 [配置監視] 連結並確定將 [作業事件服務] 設定為 LOW。若要凍結作業事件服務以便轉返作業事件,請選取 [凍結]。若要轉返作業事件,請選取作業事件旁邊的核取方塊,並按一下 [轉返]。

等效的 asadmin 指令為:get --monitor,例如,若要檢視 JVM 的監視資料,請使用以下 asadmin 指令:

asadmin> get --monitor server.jvm.*

使用 asadmin 工具檢視監視資料

使用 asadmin 工具檢視監視資料

若要使用 asadmin 工具檢視監視資料,請使用後跟可監視物件的含點名稱的 asadmin listasadmin get 指令。使用 asadmin 工具檢視監視資料的一般方法如下:

  1. 若要檢視可監視物件的名稱,請使用 asadmin list 指令。例如,若要檢視伺服器實例上已啟用監視功能的應用程式元件和子系統的清單,請在終端機視窗中鍵入以下指令:
  2. asadmin> list --monitor server

    上述指令將傳回已啟用監視功能的應用程式元件和子系統的清單,例如:

    server.resources
    server.connector-service
    server.orb
    server.jms-service
    server.jvm
    server.applications
    server.http-service
    server.thread-pools

    Sun Java System Application Server Enterprise Edition 8.1 2005Q1如需有關使用 list 指令的更多範例,請參閱 list 和 get 指令的範例。如需有關可與 list 指令一起使用的含點名稱的更多資訊,請參閱瞭解和指定含點名稱

  3. 若要顯示已啟用監視功能的應用程式元件或子系統的監視統計資訊,請使用 asadmin get 指令。若要獲得統計資訊,請在終端機視窗中鍵入 asadmin get 指令,並指定在先前步驟中由 list 指令顯示的名稱。以下範例嘗試獲取某個特定物件的子系統的所有屬性:
  4. asadmin> get --monitor server.jvm.*

此指令傳回以下屬性和資料:

server.jvm.dotted-name = server.jvm
server.jvm.heapsize-current = 21241856
server.jvm.heapsize-description = Provides statistical information about the JVM's memory heap size.
server.jvm.heapsize-highwatermark = 21241856
server.jvm.heapsize-lastsampletime = 1080232913938
server.jvm.heapsize-lowerbound = 0
server.jvm.heapsize-lowwatermark = 0
server.jvm.heapsize-name = JvmHeapSize
server.jvm.heapsize-starttime = 1080234457308
server.jvm.heapsize-unit = bytes
server.jvm.heapsize-upperbound = 518979584
server.jvm.uptime-count = 1080234457308
server.jvm.uptime-description = Provides the amount of time the JVM has been running.
server.jvm.uptime-lastsampletime = 1080234457308
server.jvm.uptime-name = JvmUpTime
server.jvm.uptime-starttime = 1080232913928
server.jvm.uptime-unit = milliseconds

Sun Java System Application Server Enterprise Edition 8.1 2005Q1如需有關使用 get 指令的更多範例,請參閱 list 和 get 指令的範例。如需有關可與 get 指令一起使用的含點名稱的更多資訊,請參閱瞭解和指定含點名稱

瞭解和指定含點名稱

asadmin listget 指令中,指定可監視物件的含點名稱。所有子物件都是使用點 (.) 字元作為分隔符來命名的,因而這些子物件的名稱也稱為含點名稱。如果子節點為單一型,則僅需要監視物件類型來命名物件;否則,需要形式為 type.name 的名稱來命名物件。

例如,http-service 就是其中一種有效的可監視物件類型,並且為單一型。若要命名表示實例 serverhttp-service 的單一型子節點,則含點名稱為:

server.http-service

另一個範例,application 為一種有效的可監視物件類型,但並非單一型。例如,若要命名表示應用程式 Petstore 的非單一型子節點,則含點名稱為:

server.applications.petstore

含點名稱也可以命名可監視物件中的特定屬性。例如,http-service 具有名為 bytesreceived-lastsampletime 的可監視屬性。以下名稱可以命名 bytesreceived 屬性:

server.http-service.server.http-listener-1.
  bytesreceived-lastsampletime

管理員不需要知道 asadmin listget 指令的有效含點名稱。使用 list 指令可以顯示可用的可監視物件,而使用帶有萬用字元參數的 get 指令可以檢查任意可監視物件的所有可用屬性。

使用具有含點名稱的 listget 指令的基本假設為:

如需更多資訊,請參閱 list 和 get 指令在所有層級上的預期輸出

list 和 get 指令的範例

本小節包含下列主題:

list --monitor 指令的範例

list 指令提供有關目前監視的指定伺服器實例名稱的應用程式元件與子系統的資訊。使用該指令,您可以檢視伺服器實例的可監視元件與子元件。如需有關 list 範例的更完整的清單,請參閱 list 和 get 指令在所有層級上的預期輸出

範例 1
asadmin> list --monitor server

上述指令將傳回已啟用監視功能的應用程式元件和子系統的清單,例如:

server.resources
server.orb
server.jvm
server.jms-service
server.connector-service
server.applications
server.http-service
server.thread-pools

還可以列示指定的伺服器實例中目前所監視的應用程式。這對於使用 get 指令從某個應用程式中獲取特定的監視統計資訊很有幫助。

範例 2
asadmin> list --monitor server.applications

傳回:

server.applications.adminapp
server.applications.admingui
server.applications.myApp

如需更為複雜的範例,請參閱 Petstore 範例

get --monitor 指令的範例

該指令擷取下列受監視資訊:

當特定元件或子系統所請求的屬性不存在時,便會傳回錯誤。同樣,當元件或子系統所請求的特定屬性不在作用中時,也會傳回錯誤。

請參閱 list 和 get 指令在所有層級上的預期輸出,以取得有關使用 get 指令的更多資訊。

範例 1

嘗試從某個子系統中獲取某個特定物件的所有屬性:

asadmin> get --monitor server.jvm.*

傳回:

server.jvm.dotted-name = server.jvm
server.jvm.heapsize-current = 21241856
server.jvm.heapsize-description = Provides statistical information about the JVM's memory heap size.
server.jvm.heapsize-highwatermark = 21241856
server.jvm.heapsize-lastsampletime = 1080232913938
server.jvm.heapsize-lowerbound = 0
server.jvm.heapsize-lowwatermark = 0
server.jvm.heapsize-name = JvmHeapSize
server.jvm.heapsize-starttime = 1080234457308
server.jvm.heapsize-unit = bytes
server.jvm.heapsize-upperbound = 518979584
server.jvm.uptime-count = 1080234457308
server.jvm.uptime-description = Provides the amount of time the JVM has been running.
server.jvm.uptime-lastsampletime = 1080234457308
server.jvm.uptime-name = JvmUpTime
server.jvm.uptime-starttime = 1080232913928
server.jvm.uptime-unit = milliseconds
範例 2

嘗試從 J2EE 應用程式中取得全部屬性:

asadmin> get --monitor server.applications.myJ2eeApp.*

傳回:

No matches resulted from the wildcard expression.
CLI137 Command get failed.

該 J2EE 應用程式層級上沒有提供可監視的屬性,因而顯示此回覆。

範例 3

嘗試從某個子系統中取得特定屬性:

asadmin> get --monitor server.jvm.uptime-lastsampletime

傳回:

server.jvm.uptime-lastsampletime = 1093215374813
範例 4

嘗試從某個子系統屬性中取得不明的屬性:

asadmin> get --monitor server.jvm.badname

傳回:

No such attribute found from reflecting the corresponding Stats interface:[badname]
CLI137 Command get failed.

Petstore 範例

以下範例說明如何將 asadmin 工具用於監視目的。

使用者要檢查在將範例 Petstore 應用程式部署到 Application Server 後在該應用程式中呼叫某個方法的次數。部署該應用程式的實例名稱為 server。配合使用 listget 指令來存取所需的方法統計資訊。

  1. 啟動 Application Server 和 asadmin 工具。
  2. 設定一些有用的環境變數,以避免使用每個指令時都輸入這些變數:
  3. asadmin>export AS_ADMIN_USER=admin AS_ADMIN_PASSWORD=admin123 asadmin>export AS_ADMIN_HOST=localhost AS_ADMIN_PORT=4848
  4. 列示實例 server 的可監視元件:
  5. asadmin>list --monitor server*

    傳回 (輸出類似於以下內容):

    server
    server.applications
    server.applications.CometEJB
    server.applications.ConverterApp
    server.applications.petstore
    server.http-service
    server.resources
    server.thread-pools

    可監視元件清單包括 thread-poolshttp-serviceresources 以及所有已部署 (並已啟用) 的 applications

  6. 列示 Petstore 應用程式中的可監視子元件 (可以使用 -m 代替 --monitor):
  7. asadmin>list -m server.applications.petstore

    傳回:

    server.applications.petstore.signon-ejb_jar
    server.applications.petstore.catalog-ejb_jar
    server.applications.petstore.uidgen-ejb_jar
    server.applications.petstore.customer-ejb_jar
    server.applications.petstore.petstore-ejb_jar
    server.applications.petstore.petstore\.war
    server.applications.petstore.AsyncSenderJAR_jar
    server.applications.petstore.cart-ejb_jar
  8. 列示 Petstore 應用程式的 EJB 模組 signon-ejb_jar 中的可監視子元件:
  9. asadmin>list -m server.applications.petstore.signon-ejb_jar

    傳回:

    server.applications.petstore.signon-ejb_jar.SignOnEJB
    server.applications.petstore.signon-ejb_jar.UserEJB
  10. 列示 Petstore 應用程式的 EJB 模組 signon-ejb_jar 的實體 Bean UserEJB 中的可監視子元件:
  11. asadmin>list -m server.applications.petstore.signon-ejb_jar.UserEJB

    傳回 (出於空間考量,移除了含點名稱):

    server.applications.petstore.signon-ejb_jar.UserEJB.bean-cache
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-pool
  12. 列示實體 Bean UserEJB (位於 Petstore 應用程式的 EJB 模組 signon-ejb_jar 中) 的方法 getUserName 中的可監視子元件:
  13. asadmin>list -m server.applications.petstore.signon-ejb_jar.
    UserEJB.bean-methods.getUserName

    傳回:

    Nothing to list at server.applications.petstore.signon-ejb_jar.
    UserEJB.bean-methods.getUserName. To get the valid names beginning with a string, use the wildcard "*" character.For example, to list all names that begin with "server" use "list server*".
  14. 該方法沒有可監視的子元件。獲取方法 getUserName 的所有可監視統計資訊。
  15. asadmin>get -m server.applications.petstore.signon-ejb_jar.
    UserEJB.bean-methods.getUserName.*

    傳回:

    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-count = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-description = Provides the time in milliseconds spent during the last successful/unsuccessful attempt
    to execute the operation.
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-lastsampletime = 1079981809259
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-name = ExecutionTime
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-starttime = 1079980593137
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-unit = count
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-count = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-description = Provides the number of times an operation was called, the total time that was spent during the invocation and so on.
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-lastsampletime = 1079980593137
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-maxtime = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-mintime = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-name = ExecutionTime
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-starttime = 1079980593137
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-totaltime = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.methodstatistic-unit =
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumerrors-count = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumerrors-description = Provides the total number of errors that occured during invocation or execution of an operation.
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumerrors-lastsampletime = 1079981809273
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumerrors-name = TotalNumErrors
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumerrors-starttime = 1079980593137
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumerrors-unit = count
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumsuccess-count = 0
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumsuccess-description = Provides the total number of successful invocations of the method.
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumsuccess-lastsampletime = 1079981809255
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumsuccess-name = TotalNumSuccess
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumsuccess-starttime = 1079980593137
    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.totalnumsuccess-unit = count
  16. 如果還需要獲取執行時間等特定統計資訊,請使用如下指令:
  17. asadmin>get -m server.applications.petstore.signon-ejb_jar.
    UserEJB.bean-methods.getUserName.executiontime-count

    傳回:

    server.applications.petstore.signon-ejb_jar.UserEJB.bean-methods.
    getUserName.executiontime-count = 1

list 和 get 指令在所有層級上的預期輸出

下表顯示了樹的各個層級的指令、含點名稱及相應的輸出。

表 21-33 頂層 

指令

含點名稱

輸出

list -m

server

server.applications
server.thread-pools
server.resources
server.http-service
server.transaction-service
server.orb.connection-managers
server.orb.connection-managers.orb\.Connections\.Inbound\.
AcceptedConnections
server.jvm

list -m

server.*

此節點下的子節點的階層結構。

get -m

server.*

僅顯示一條訊息,說明此節點上沒有屬性。

表 21-34 顯示了應用程式層級的指令、含點名稱及相應的輸出。

表 21-34 應用程式層級 

指令

含點名稱

輸出

list -m

server.applications

*applications

appl1
app2
web-module1_war
ejb-module2_jar
...

list -m

server.applications.*

*applications.*

此節點下的子節點的階層結構。

get -m

server.applications.*

*applications.*

僅顯示一條訊息,說明此節點上沒有屬性。

表 21-35 顯示了應用程式層級上的獨立模組和企業應用程式的指令、含點名稱及相應的輸出。

表 21-35 應用程式 ─ 企業應用程式和獨立模組 

指令

含點名稱

輸出

list -m

server.applications.app1

*app1

備註︰僅當已部署了企業應用程式時,此層級才可用。如果部署了獨立模組,則此層級不可用。

ejb-module1_jar
web-module2_war
ejb-module3_jar
web-module3_war
...

list -m

server.applications.app1.*

*app1.*

此節點下的子節點的階層結構。

get -m

server.applications.app1.*

*app1.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.applications.app1.ejb-module1_jar

*ejb-module1_jar

server.applications.ejb-module1_jar

bean1
bean2
bean3
...

list -m

server.applications.app1.ejb-module1_jar

*ejb-module1_jar

server.applications.ejb-module1_jar

此節點下的子節點的階層結構。

get -m

server.applications.app1.ejb-module1_jar.*

*ejb-module1_jar.*

server.applications.ejb-module1_jar.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.applications.app1.ejb-module1_jar.bean1

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

子節點清單:

bean-pool
bean-cache
bean-method

list -m

server.applications.app1.ejb-module1_jar.bean1

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

子節點的階層結構及該節點和所有後續子節點的所有屬性的清單。

get -m

server.applications.app1.ejb-module1_jar.bean1.*

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

以下屬性及其關聯值:

CreateCount_Count
CreateCount_Description
CreateCount_LastSampleTime
CreateCount_Name
CreateCount_StartTime
CreateCount_Unit
MethodReadyCount_Current
MethodReadyCount_Description
MethodReadyCount_HighWaterMark
MethodReadyCount_LastSampleTime
MethodReadyCount_LowWaterMark
MethodReadyCount_Name
MethodReadyCount_StartTime
MethodReadyCount_Unit
RemoveCount_Count
RemoveCount_Description
RemoveCount_LastSampleTime
RemoveCount_Name
RemoveCount_StartTime
Attribute RemoveCount_Unit

list -m

server.applications.app1.ejb-module1_jar.bean1.bean-pool

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.applications.app1.ejb-module1_jar.bean1.bean-pool.*

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

與 EJB 池屬性對應的屬性和值的清單 (如表 1-4 所示)。

list -m

server.applications.app1.ejb-module1_jar.bean1.bean-cache

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.applications.app1.ejb-module1_jar.bean1.bean-cache.*

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

與 EJB 快取屬性對應的屬性和值的清單 (如表 1-5 所示)。

list -m

server.applications.app1.ejb-module1_jar.bean1.bean-method.method1

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.applications.app1.ejb-module1_jar.bean1.bean-method.method1.*

備註︰在獨立模組中,將不顯示包含應用程式名稱 (本範例中為 app1) 的節點。

與 EJB 方法屬性對應的屬性和值的清單 (如表 1-2 所示)。

list -m

server.applications.app1.web-module1_war

顯示指定給模組的虛擬伺服器。

get -m

server.applications.app1.web-module1_war.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.applications.app1.web-module1_war.
virtual_server

顯示已註冊的 servlet 的清單。

get -m

server.applications.app1.web-module1_war.
virtual_server.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.applications.app1.web-module1_war.
virtual_server.servlet1

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.applications.app1.web-module1_war.
virtual_server.servlet1.*

與 Web 容器 (Servlet) 屬性對應的屬性和值的清單 (如表 1-7 所示)。

表 21-36 顯示了 HTTP 服務層級的指令、含點名稱及相應的輸出。

表 21-36 HTTP 服務層級 

指令

含點名稱

輸出

list -m

server.http-service

虛擬伺服器清單。

get -m

server.http-service.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.http-service.server

HTTP 偵聽程式清單。

get -m

server.http-service.server.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.http-service.server.
http-listener1

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.http-service.server.*

與 HTTP 服務屬性對應的屬性和值的清單 (如表 1-9 所示)。

表 21-37 顯示了執行緒池層級的指令、含點名稱及相應的輸出。

表 21-37 執行緒池層級 

指令

含點名稱

輸出

list -m

server.thread-pools

執行緒池名稱清單。

get -m

server.thread-pools.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.thread-pools.orb\.threadpool\
.thread-pool-1

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.thread-pools..orb\.threadpool\
.thread-pool-1.*

與執行緒池屬性對應的屬性和值的清單 (如表 1-14 所示)。

表 21-38 顯示了資源層級的指令、含點名稱及相應的輸出。

表 21-38 資源層級 

指令

含點名稱

輸出

list -m

server.resources

池名稱清單。

get -m

server.resources.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.resources.jdbc-connection-pool-pool.connection-pool1

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.resources.jdbc-connection-pool-pool.connection-pool1.*

與連線池屬性對應的屬性和值的清單 (如表 1-10 所示)。

表 21-39 顯示了作業事件服務層級的指令、含點名稱及相應的輸出。

表 21-39 作業事件服務層級 

指令

含點名稱

輸出

list -m

server.transaction-service

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.transaction-service.*

與作業事件服務屬性對應的屬性和值的清單 (如表 1-15 所示)。

表 21-40 顯示了 ORB 層級的指令、含點名稱及相應的輸出。

表 21-40 ORB 層級 

指令

含點名稱

輸出

list -m

server.orb

server-orb.connection-managers

get -m

server.orb.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.orb.connection-managers

ORB 連線管理程式的名稱。

get -m

server.orb.connection-managers.*

僅顯示一條訊息,說明此節點上沒有屬性。

list -m

server.orb.connection-managers.
orb\.Connections\.Inbound\
.AcceptedConnections

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.orb.connection-managers.
orb\.Connections\.Inbound\
.AcceptedConnections.*

與 ORB 連線管理程式屬性對應的屬性和值的清單 (如表 1-13 所示)。

表 21-34 顯示了 JVM 層級的指令、含點名稱及相應的輸出。

表 21-41 JVM 層級 

指令

含點名稱

輸出

list -m

server.jvm

沒有屬性,僅顯示一條訊息,說明「使用帶有 --monitor 選項的 get 指令可以檢視該節點的屬性和值。」

get -m

server.jvm.*

與 JVM 屬性對應的屬性和值的清單 (如表 1-16 所示)。


使用 JConsole

若要使 JConsole 能夠與 Application Server 一起使用,必須停用 JMX 連接器的安全性。依預設,目前版本的 Application Server (SE/EE 版本) 已啟用安全性。

若要停用 JMX 連接器的安全性,請使用以下技術之一:

  1. 使用管理主控台停用 JMX 連接器的安全性。若要從管理主控台執行此操作,請執行以下步驟:
    1. 展開 [配置] 節點。
    2. 展開 [管理服務] 節點。
    3. 選取 [system] 節點。
    4. 在 [SSL] 區段取消選取 [SSL3] 和 [TLS]。
    5. 選取 [儲存]。
  2. 使用 asadmin 停用 JMX 連接器的安全性。若要從終端機視窗或指令提示符號執行此操作,請執行以下步驟:
    1. 輸入以下指令:
    2. asadmin set server.admin-service.jmx-connector.system.security-enabled=false
    3. 重新啟動網域應用程式伺服器 (DAS)。

對於 PE 版本,依預設 JMX 連接器處於停用狀態,因此無需變更 PE 的任何配置。

  1. 啟動 JConsole,然後在 [進階] 標籤中輸入 JMX URL、使用者名稱和密碼進行登入。JMX URL 的形式為:



上一個      目錄      下一個     


Copyright 2004 - 2005 Sun Microsystems, Inc. 版權所有。