從指令行產生 Liberty 伺服器傾出

從指令行,您可以利用 server dumpserver javadump 指令,來擷取 Liberty 伺服器的狀態資訊。

關於這項作業

對於 Liberty 伺服器的問題診斷,server dump 指令很有用,因為結果檔包含伺服器配置、日誌資訊,以及 workarea 目錄中已部署之應用程式的詳細資料。這個指令適用於執行中或已停止的伺服器。

如果是執行中的伺服器,也會包含下列資訊:
  • 伺服器中每一個 OSGi 軟體組的狀態
  • 伺服器中每一個 OSGi 軟體組的佈線資訊
  • 「服務元件執行時期 (SCR)」環境所管理的元件清單
  • SCR 中每一個元件的詳細資訊
  • 每一個 OSGi 軟體組的配置管理資料
  • 已登錄之 OSGi 服務的相關資訊
  • 執行時期環境設定,例如 Java™ 虛擬機器 (JVM)、資料堆大小、作業系統、執行緒資訊及網路狀態
在診斷 JVM 層次的問題時,例如虛擬機器中的執行緒懸置、死鎖、處理程序過多、記憶體耗用過度、記憶體洩漏及問題報告等,server javadump 指令很有用。這個指令只能用在執行中的伺服器上。每個傾出類型都會建立一個檔案,但並不是所有虛擬機器都支援所有傾出類型。請參閱 伺服器指令選項。傾出檔案的預設目錄為 ${server.output.dir}。如果要設定不同的預設目錄,您必須使用 IBM® JVM,並設定下列環境變數:
  • IBM_HEAPDUMPDIR
  • IBM_COREDIR
  • IBM_JAVACOREDIR

程序

  1. 開啟指令行,然後切換至 wlp/bin 目錄。
  2. 使用下列其中一個指令行工具來擷取狀態資訊。如果您沒有指定伺服器名稱,則會使用 defaultServer
    • 如果要建立伺服器狀態的 Snapshot,請使用 server dump 指令。
      • 適用於分散式平台適用於 IBM i 平台
        server dump server_name --archive=package_file_name.dump.zip --include=heap
        其中 package_file_name.dump.zip 是您選擇的檔名。這個檔名可以包含完整路徑名稱。如果省略完整路徑,會在 ${server.output.dir} 預設目錄中建立一個名為 package_file_name.dump.zip 的壓縮檔。

      --include 參數是選用的。 您可以要求其他記憶體傾出類型。 例如,--include=heap 選項會要求資料堆傾出;--include=thread,heap,system 選項會要求執行緒傾出、資料堆傾出和系統傾出。

    • 如果要建立 JVM 狀態的 Snapshot,請使用 server javadump 指令。
      • 適用於分散式平台適用於 IBM i 平台
        server javadump server_name --include=heap

      --include 參數是選用的。 您可以要求其他記憶體傾出類型。 例如,--include=heap 選項會要求資料堆傾出;--include=heap,system 選項會要求資料堆傾出和系統傾出。 輸出檔會建立在 ${server.output.dir} 預設目錄中。如果要設定不同的預設目錄,您必須使用 IBM JVM,並設定 IBM_HEAPDUMPDIRIBM_COREDIRIBM_JAVACOREDIR 環境變數:

    註: 產生的檔案是利用 UTF-8 進行項目名稱編碼來建立的,因此用來開啟檔案的工具必須能夠使用 UTF-8 進行項目名稱編碼。Java SDK 中的 jar 指令使用這個格式。

結果

如果指定的伺服器不存在,指令不會成功。如果指定的伺服器存在,會建立一個包含伺服器狀態資訊的結果檔。

指示主題類型的圖示 作業主題



「時間戳記」圖示 前次更新: 2016 年 11 月 30 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twlp_setup_dump_server
檔名:twlp_setup_dump_server.html