Azure Spring Apps 的計量
注意
基本、標準和企業方案將從 2025 年 3 月中旬開始淘汰,並停用 3 年。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 Azure Spring Apps 淘汰公告。
標準 耗用量和專用 方案將從 2024 年 9 月 30 日起淘汰,並在六個月後完成關閉。 建議您轉換至 Azure Container Apps。 如需詳細資訊,請參閱 將 Azure Spring Apps 標準取用和專用方案遷移至 Azure Container Apps。
本文適用於: ✔️ 基本/標準 ✔️ 企業
Azure 計量瀏覽器是 Microsoft Azure 入口網站的一個元件,可用來繪製圖表、以視覺方式串連趨勢,以及調查計量中的突增與突降。 使用計量瀏覽器來調查資源的健康情況和使用量。
在 Azure Spring Apps 執行個體中,您可以在下列頁面上檢視計量:
應用程式概觀頁面,顯示快速狀態圖表。 若要檢視此頁面,請從瀏覽窗格中選取 [應用程式],然後選取應用程式。
[常見計量] 頁面會顯示可用於 Azure Spring Apps 執行個體中所有應用程式的常見計量。 針對企業方案,它也會顯示 Tanzu Spring Cloud Gateway 的常見計量。 若要檢視此頁面,請從瀏覽窗格中選取 [計量]。 您可以在常見計量頁面中建置自己的圖表,並釘選到您的 [儀表板]。
應用程式概觀頁面
在瀏覽窗格中選取 [應用程式],然後從清單中選取應用程式。 [應用程式概觀] 頁面會呈現計量圖表,可讓您執行應用程式的快速狀態檢查。
Azure Spring Apps 會提供這五個圖表,並每分鐘更新一次計量:
- HTTP 伺服器錯誤:對您應用程式發出 HTTP 要求的錯誤計數
- 資料輸入:應用程式接收的位元組
- 資料輸出:應用程式傳送的位元組
- 要求:應用程式接收的要求
- 平均回應時間:應用程式的平均回應時間
針對圖表,您可以選取一小時到七天的時間範圍。
常見計量頁面
在瀏覽窗格中選取 [計量],以存取常見計量。 從 [計量] 下拉式清單中選取要使用的計量。
如需計量詳細資料,請參閱 使用者計量選項 一節。
接下來,選取每個計量的彙總類型:
匯總類型會指出如何依時間匯總圖表中的計量點。 每分鐘會有一個原始計量點,而一分鐘內的預先彙總類型由計量類型預先定義。
- 加總:將所有值加總作為目標輸出。
- 平均:使用週期內的平均值作為目標輸出。
- 最大值/最小值:使用週期內的最大值/最小值作為目標輸出。
時間範圍也可以從過去 30 分鐘調整為過去 30 天或自訂時間範圍。
預設檢視包含所有 Azure Spring Apps 服務的應用程式計量。 您可以在顯示中篩選一個應用程式或實例的計量。 選取 [加入篩選],將屬性設定為 [應用程式],然後在 [值] 文字方塊中選取您要監視的目標應用程式。
您可以使用兩種篩選條件 (屬性):
- 應用程式:依應用程式名稱篩選
- 執行個體:依應用程式執行個體篩選
- 部署:依部署名稱篩選
您也可以使用 [套用分割] 選項,這會為一個應用程式繪製多行:
提示
您可以在計量頁面中建置自己的圖表,並釘選到您的 [儀表板]。 從命名圖表開始。 接下來,選取右上角的 [釘選至儀表板]。 您現在可以在入口網站 [儀表板] 檢查應用程式。
使用者計量選項
注意
針對 Spring Boot 應用程式,若要查看 Spring Boot 執行器中的計量,請新增 spring-boot-starter-actuator
相依性。 如需詳細資訊,請參閱 使用 Spring Boot 傳動器管理及監視應用程式 的 新增傳動器相依性 一節。
下表顯示可用的計量和詳細資料。
錯誤
名稱 | Spring Boot 傳動器計量名稱 | 單位 | 描述 |
---|---|---|---|
tomcat.global.error |
tomcat.global.error |
計數 | 已處理要求中發生的錯誤數目。 |
效能
名稱 | Spring Boot 傳動器計量名稱 | 單位 | 描述 |
---|---|---|---|
system.cpu.usage |
system.cpu.usage |
Percent | 整個系統的最近 CPU 使用量 (過時,不建議使用)。 這個值是 [0.0,1.0] 間隔中的雙精度浮點數。 值為 0.0 表示所有 CPU 在觀察到的最近一段時間內都處於閒置狀態,而 1.0 值表示所有 CPU 都在最近一段時間內主動執行 100%。 |
process.cpu.usage |
應用程式 CPU 使用率百分比 | Percent | JAVA 虛擬機器處理程序的最近 CPU 使用量 (過時,不建議使用)。 這個值是 [0.0,1.0] 間隔中的雙精度浮點數。 值為 0.0 表示在觀察到的最近一段時間內,沒有 CPU 正在從 JVM 處理程序執行執行緒,而值為 1.0 表示在觀察到的最近一段時間內,所有 CPU 100% 的時間都正從 JVM 執行執行緒。 來自 JVM 的執行緒包括應用程式執行緒以及 JVM 內部執行緒。 |
應用程式 CPU 使用量 | Percent | 針對配置給此應用程式的 CPU,使用 JVM 處理程序的最新 CPU 使用量。 這個值是 [0.0,1.0] 間隔中的雙精度浮點數。 值為 0.0 表示在觀察到的最近一段時間內,沒有 CPU 正在從 JVM 處理程序執行執行緒,而值為 1.0 表示在觀察到的最近一段時間內,所有 CPU 100% 的時間都正從 JVM 執行執行緒。 來自 JVM 的執行緒包括應用程式執行緒以及 JVM 內部執行緒。 | |
應用程式 CPU 使用量 (已淘汰) | Percent | 已淘汰的應用程式 CPU 使用量計量。 請改用新的應用程式 CPU 使用量計量。 | |
應用程式記憶體使用量 | Percent | 針對配置給此應用程式的記憶體,JVM 處理程序的最近記憶體使用量。 這個值是 [0.0,1.0] 間隔中的雙精度浮點數。 值為 0.0 表示在最近一段時間內,來自 JVM 處理程序的執行緒未配置任何記憶體,而值為 1.0 表示最近一段時間內所有記憶體 100% 的時間內都是由來自 JVM 的執行序所配置的。 來自 JVM 的執行緒包括應用程式執行緒以及 JVM 內部執行緒。 | |
jvm.memory.committed |
jvm.memory.committed |
Bytes | 表示保證可供 JVM 使用的記憶體數量。 JVM 可能會釋放記憶體至系統,且認可的記憶體可能小於 Init。 已認可的量一律會大於或等於已使用的量。 |
jvm.memory.used |
jvm.memory.used |
Bytes | 表示目前用於位元組的記憶體數量。 |
jvm.memory.max |
jvm.memory.max |
Bytes | 表示可用於記憶體管理的最大記憶體數量。 已使用和認可的記憶體數量一律會小於或等於最大值 (如果已定義最大值)。 如果記憶體配置嘗試增加已認可的記憶體,使已使用的量 > 已認可的量,即使已使用的量 < = max 仍然為 true (例如,系統在虛擬記憶體不足時),記憶體配置可能會失敗。 |
jvm.gc.max.data.size |
jvm.gc.max.data.size |
Bytes | 自 JAVA 虛擬機器啟動以來,舊世代記憶體集區的尖峰記憶體使用量。 |
jvm.gc.live.data.size |
jvm.gc.live.data.size |
Bytes | 完整 GC 之後的舊世代記憶體集區大小。 |
jvm.gc.memory.promoted |
jvm.gc.memory.promoted |
Bytes | GC 前到 GC 之後,舊世代記憶體集區大小的正數增加。 |
jvm.gc.memory.allocated |
jvm.gc.memory.allocated |
Bytes | 在一個 GC 到下一個 GC 之後,遞增以增加新世代記憶體集區的大小。 |
jvm.gc.pause.total.count |
jvm.gc.pause (總-計數) |
計數 | 此 JMV 開始之後的 GC 計數總計,包括新和舊 GC。 |
jvm.gc.pause.total.time |
jvm.gc.pause (總計-時間) |
毫秒 | 此 JMV 開始之後所耗用的 GC 總時間,包括新和舊 GC。 |
效能 (.NET)
名稱 | Spring Boot 傳動器計量名稱 | 單位 | 描述 |
---|---|---|---|
CPU 使用量 | cpu-usage |
Percent | 流程 CPU 使用量的百分比,相對於所有系統 CPU 資源 [0-100]。 |
工作集 | working-set |
MB | 處理程序使用的工作集數量。 |
GC 堆積大小 | gc-heap-size |
MB | 記憶體回收程序所報告的堆積大小總計。 |
Gen 0 GC 計數 | gen-0-gc-count |
計數 | 每秒第 0 代記憶體回收的數目。 |
Gen 1 GC 計數 | gen-1-gc-count |
計數 | 每秒第 1 代記憶體回收的數目。 |
Gen 2 GC 計數 | gen-2-gc-count |
計數 | 每秒第 2 代記憶體回收的數目。 |
用於記憶體回收的時間 | timein-gc |
Percent | 自上次記憶體回收以來記憶體回收的時間百分比。 |
Gen 0 heap size | gen-0-size |
Bytes | 第 0 代堆積大小。 |
Gen 1 heap size | gen-1-size |
Bytes | 第 1 代堆積大小。 |
Gen 2 heap size | gen-2-size |
Bytes | 第 2 代堆積大小。 |
LOH 堆積大小 | loh-size |
Bytes | 大型物件堆積大小。 |
配置速率 | alloc-rate |
Bytes | 每秒配置的位元組數。 |
組件計數 | assembly-count |
計數 | 載入的元件數目。 |
例外狀況計數 | exception-count |
計數 | 每秒的例外狀況數目。 |
執行緒集區執行緒計數 | threadpool-thread-count |
計數 | 執行緒集區執行緒最大數目 |
監視鎖定競爭計數 | monitor-lock-contention-count |
計數 | 嘗試取得監視器鎖定時每秒發生的競爭次數。 |
執行緒集區佇列長度 | threadpool-queue-length |
計數 | 執行緒集區工作項目佇列長度。 |
執行緒集區已完成的項目計數 | threadpool-completed-items-count |
計數 | 執行緒集區已完成的工作項目計數。 |
作用中計時器計數 | active-timer-count |
計數 | 目前有效的計時器數。 有註冊的有效計時器會在未來某個時間發出滴答聲,且尚未受到取消。 |
如需詳細資訊,請參閱調查效能計數器 (dotnet-counters)。
Request
名稱 | Spring Boot 傳動器計量名稱 | 單位 | 描述 |
---|---|---|---|
tomcat.global.sent |
tomcat.global.sent |
Bytes | 已傳送的 Tomcat 網頁伺服器資料量。 |
tomcat.global.received |
tomcat.global.received |
Bytes | 收到的 Tomcat 網頁伺服器資料量。 |
tomcat.global.request.total.count |
tomcat.global.request (總-計數) |
計數 | Tomcat 網頁伺服器已處理的要求總計數。 |
tomcat.global.request.max |
tomcat.global.request.max |
毫秒 | Tomcat 網頁伺服器處理要求的時間上限。 |
要求 (.NET)
名稱 | Spring Boot 傳動器計量名稱 | 單位 | 描述 |
---|---|---|---|
每秒要求數 | requests-per-second |
計數 | 要求速率 |
總要求數 | total-requests |
計數 | 要求的總數。 |
目前要求 | current-requests |
計數 | 並行要求數。 |
失敗的要求 | failed-requests |
計數 | 失敗的要求數目。 |
如需詳細資訊,請參閱調查效能計數器 (dotnet-counters)。
會議
名稱 | Spring Boot 傳動器計量名稱 | 單位 | 描述 |
---|---|---|---|
tomcat.sessions.active.max |
tomcat.sessions.active.max |
計數 | 同時作用中的工作階段數目上限。 |
tomcat.sessions.alive.max |
tomcat.sessions.alive.max |
毫秒 | 過期工作階段作用中的最長時間 (以秒為單位)。 |
tomcat.sessions.created |
tomcat.sessions.created |
計數 | 已建立的工作階段數目。 |
tomcat.sessions.expired |
tomcat.sessions.expired |
計數 | 已過期的工作階段數目。 |
tomcat.sessions.rejected |
tomcat.sessions.rejected |
計數 | 因為達到作用中的工作階段數目上限而未建立的工作階段數目。 |
tomcat.sessions.active.current |
tomcat.sessions.active.current |
計數 | Tomcat 工作階段作用中計數。 |
輸入
Display name | Azure 計量名稱 | 單位 | 描述 |
---|---|---|---|
接收的位元組 | IngressBytesReceived |
Bytes | Azure Spring Apps 從用戶端接收的位元組計數。 |
Bytes Sent | IngressBytesSent |
Bytes | Azure Spring Apps 傳送給用戶端的位元組計數。 |
要求 | IngressRequests |
計數 | 來自用戶端的 Azure Spring Apps 要求計數。 |
失敗的要求 | IngressFailedRequests |
計數 | 來自用戶端的 Azure Spring Apps 失敗要求計數。 |
回應狀態 | IngressResponseStatus |
計數 | Azure Spring Apps 傳回的 HTTP 回應狀態。 回應狀態碼發佈可以進一步分類,以顯示回應 2xx、3xx、4xx 和 5xx 分類中的回應。 |
回應時間 | IngressResponseTime |
秒 | Azure Spring Apps 傳回的 HTTP 回應時間。 |
輸入輸送量 (位元組/秒) | IngressBytesReceivedRate |
BytesPerSecond | 來自用戶端的 Azure Spring Apps 每秒收到的位元組數。 |
輸出輸送量 (位元組/秒) | IngressBytesSentRate |
BytesPerSecond | Azure Spring Apps 每秒傳送到用戶端的位元組數。 |
閘道
下表僅適用於企業方案中的 Tanzu Spring Cloud Gateway。
Display name | Azure 計量名稱 | 單位 | 描述 |
---|---|---|---|
jvm.gc.live.data.size |
GatewayJvmGcLiveDataSizeBytes |
Bytes | 完整 GC 之後的舊世代記憶體集區大小。 |
jvm.gc.max.data.size |
GatewayJvmGcMaxDataSizeBytes |
Bytes | 舊世代記憶體集區大小上限。 |
jvm.gc.memory.promoted |
GatewayJvmGcMemoryPromotedBytesTotal |
Bytes | GC 前到 GC 之後,舊世代記憶體集區大小的正數增加。 |
jvm.gc.pause.max.time |
GatewayJvmGcPauseSecondsMax |
秒 | GC 暫停時間上限。 |
jvm.gc.pause.total.count |
GatewayJvmGcPauseSecondsCount |
計數 | GC 暫停計數。 |
jvm.gc.pause.total.time |
GatewayJvmGcPauseSecondsSum |
秒 | GC 暫停總時間。 |
jvm.memory.committed |
GatewayJvmMemoryCommittedBytes |
Bytes | 指派至 JVM 的記憶體 (以位元組為單位)。 |
jvm.memory.used |
GatewayJvmMemoryUsedBytes |
Bytes | 已使用的記憶體 (位元組)。 |
要求的時間上限 | GatewayHttpServerRequestsMilliSecondsMax |
毫秒 | 要求的時間上限。 |
process.cpu.usage |
GatewayProcessCpuUsage |
Percent | JVM 處理程序最近的 CPU 使用量。 |
要求計數 | GatewayHttpServerRequestsSecondsCount |
計數 | 要求總數。 |
system.cpu.usage |
GatewaySystemCpuUsage |
Percent | 整個系統最近的 CPU 使用量。 |
節流要求計數 | GatewayRatelimitThrottledCount |
計數 | 節流要求計數。 |