分享方式:


Azure 容器應用程式中 Java 應用程式的 Java 計量

Java 虛擬機器 (JVM) 計量對於監視 Java 應用程式的健康情況和效能而言非常重要。 收集的資料包括記憶體使用量、廢棄項目收集、JVM 執行緒計數的深入解析。 使用下列計量來協助確保您的應用程式的健康情況和穩定性。

收集的計量

類別 標題 描述 計量識別碼 單位
Java jvm.memory.total.used 堆積或非堆積所使用的記憶體總量 JvmMemoryTotalUsed bytes
Java jvm.memory.total.committed 保證可供堆積或非堆積使用的記憶體總量 JvmMemoryTotalCommitted bytes
Java jvm.memory.total.limit 堆積或非堆積的最大可取得記憶體總量 JvmMemoryTotalLimit bytes
Java jvm.memory.used 每個集區所使用的記憶體數量 JvmMemoryUsed bytes
Java jvm.memory.committed 保證可供每個集區使用的記憶體數量 JvmMemoryCommitted bytes
Java jvm.memory.limit 每個集區可取得的最大記憶體數量 JvmMemoryLimit bytes
Java jvm.buffer.memory.usage 緩衝區所使用的記憶體數量,例如直接記憶體 JvmBufferMemoryUsage bytes
Java jvm.buffer.memory.limit 緩衝區的總記憶體容量數量 JvmBufferMemoryLimit bytes
Java jvm.buffer.count 記憶體集區中的緩衝區數目 JvmBufferCount n/a
Java jvm.gc.count JVM 記憶體回收動作的計數 JvmGcCount n/a
Java jvm.gc.duration JVM 記憶體回收動作的持續時間 JvmGcDuration milliseconds
Java jvm.thread.count 執行平台執行緒的數目 JvmThreadCount n/a

組態

若要讓您的應用程式能夠收集 Java 計量,請以一些特定的設定來設定您的容器應用程式。

在 [建立] 視窗中,如果您針對 [部署來源] 選取 [容器映像] 選項,則您可以存取堆疊特定的功能。

在 [開發堆疊特定功能] 下,針對 [開發堆疊],選取 [Java]

Azure 入口網站的螢幕擷取畫面,您可以在其中為您的容器應用程式選取 Java 特定的功能。

選取 Java 開發堆疊之後,[為您的應用程式自訂 Java 功能] 視窗隨即出現。 在 [Java 功能] 標籤旁,選取 [JVM 核心計量]

有兩個與應用程式執行階段和 Java 計量相關的 CLI 選項:

選項 描述
--runtime 容器應用程式的執行階段。 支援的值為 genericjava
--enable-java-metrics 一個布林值選項,用於啟用或停用應用程式的 Java 計量。 僅適用於 Java 執行階段。

注意

--enable-java-metrics=<true|false> 參數會隱含地設定 --runtime=java--runtime=generic 參數會重設所有 java 執行階段資訊。

啟用 Java 計量

您可以透過 createupdate 命令來啟用 Java 計量。

az containerapp create \
  --name <CONTAINER_APP_NAME> \
  --resource-group <RESOURCE_GROUP> \
  --image <CONTAINER_IMAGE_LOCATION> \
  --enable-java-metrics=true

檢視 Java 計量

使用下列步驟來檢視容器應用程式的計量視覺效果。

  1. 前往 Azure 入口網站。

  2. 移至您的容器應用程式。

  3. 選取 [監視] 區段底下的 [計量]

    在那裡,您會看到一個圖表,其中繪製了您在應用程式中追蹤的計量。

    Java 計量視覺效果的螢幕擷取畫面。

您可以在 Azure 監視器上看到 Java 計量名稱,但除非啟用該功能,否則資料集會顯示為空白。 有關如何啟用它的資訊,請參閱設定一節。

下一步