查看指標

本主題說明如何在 Cloud Operations 資訊主頁中查看 Apigee Hybrid 指標。

關於 Cloud Operations

如要進一步瞭解指標、資訊主頁和 Cloud Operations,請參閱:

啟用混合指標

如要將混合式指標傳送至 Cloud Operations,請先啟用指標收集功能。如需這項程序的說明,請參閱「設定指標收集作業」。

關於混合指標名稱和標籤

啟用後,混合式系統會自動填入 Cloud Operations 指標。混合式建立的指標網域名稱前置字串為:

apigee.googleapis.com/

舉例來說,/proxy/request_count 指標包含 API Proxy 收到的要求總數。因此,Cloud 作業套件中的指標名稱為:

apigee.googleapis.com/proxy/request_count

Cloud Operations 可讓您根據標籤篩選分組指標資料。部分標籤是預先定義,其他標籤則是由混合式設定明確新增。 下方的「可用指標」部分會列出所有可用的混合指標,以及您可使用篩選和分組的指標專用標籤。

查看指標

以下範例說明如何在 Cloud Operations 中查看指標:
  1. 在瀏覽器中開啟 Monitoring Metrics Explorer。或者,如果您已在 Cloud Operations 控制台中,請選取「指標探索器」
  2. 在「Find resource type and metric」(尋找資源類型和指標) 中,找出並選取要檢查的指標。從「可用指標」中選擇特定指標,或搜尋指標。

  3. 選取所需指標。
  4. 套用篩選器。如要查看每個指標的篩選器選項,請參閱「可用指標」。
  5. Cloud Operations 會顯示所選指標的圖表。
  6. 按一下 [儲存]

建立資訊主頁

資訊主頁是檢視並分析重要指標資料的方法之一,Cloud Operations 會為您使用的資源和服務提供預先定義的資訊主頁,您也可以建立自訂資訊主頁。

您可以使用圖表在自訂資訊主頁中顯示 Apigee 指標。您可以完全掌控要顯示的圖表及其設定。如要進一步瞭解如何建立圖表,請參閱建立圖表一文。

以下範例說明如何在 Cloud Operations 中建立資訊主頁,然後新增圖表來查看指標資料:

  1. 在瀏覽器中開啟 Monitoring 指標探索工具,然後選取「資訊主頁」
  2. 選取「+ 建立資訊主頁」
  3. 為資訊主頁命名。例如:混合式 Proxy 要求流量
  4. 按一下「確認」。
  5. 針對要加進資訊主頁的每張圖表,執行下列步驟:

    1. 在資訊主頁中,選取「新增圖表」
    2. 如要選取所需指標,請參閱上文的「查看指標」一節。
    3. 完成對話方塊,定義圖表。
    4. 按一下 [儲存]。Cloud Operations 會顯示所選指標的資料。

可用的指標

下表列出用於分析 Proxy 流量的指標。如要進一步瞭解各項 Apigee 指標,請參閱「Google Cloud 指標」。

Proxy、目標和伺服器流量指標

Open Telemetry 會收集及處理 Proxy、目標和伺服器流量的指標 (如「指標收集」一節所述)。

下表說明 Open Telemetry 收集器使用的指標。

指標名稱 使用
/proxy/request_count 自上次記錄樣本以來,對 Apigee Proxy 發出的要求數。
/proxy/response_count Apigee API Proxy 傳送的回應數量。
/proxy/latencies 延遲時間分布情形,計算方式是從 Apigee Proxy 收到要求的時間,到 Apigee Proxy 將回應傳送至用戶端的時間。
/proxyv2/request_count 收到的 API 代理要求總數。
/proxyv2/response_count 收到的 API 代理伺服器回應總數。
/proxyv2/latencies_percentile 要求的所有 API 政策回應的百分位數。
/target/request_count 自上次記錄樣本以來,傳送至 Apigee 目標的要求數量。
/target/response_count 自上次記錄樣本以來,從 Apigee 目標收到的回應數量。
/target/latencies 延遲時間分布情形,計算方式是從要求傳送至 Apigee 目標的時間,到 Apigee Proxy 接收回應的時間。時間不包括 Apigee API Proxy 的額外負荷。
/targetv2/request_count 傳送至 Proxy 目標的要求總數。
/targetv2/response_count 從 Proxy 目標收到的回應總數。
/server/fault_count

伺服器應用程式的錯誤總數。

例如,應用程式可以是 apigee-runtime apigee-synchronizerapigee-udca。使用 pod_name 標籤依應用程式篩選結果。

/server/nio 這是可依標籤 state 篩選的計量指標,可擷取各種標籤的詳細資料。這些值代表不同的系統和 I/O 作業。acceptedaccepted_totalclose_failedclose_successconn_pendingconnectedconnected_totalmax_conntimeouts 等標籤與插座和連線作業相關。其餘標籤則與其他系統作業相關。
/server/num_threads 伺服器中有效非 Daemon 執行緒的數量。
/server/request_count

伺服器應用程式收到的要求總數。

例如,應用程式可以是 apigee-runtime apigee-synchronizerapigee-udca。使用 pod_name 標籤依應用程式篩選結果。

/server/response_count

伺服器應用程式傳送的回應總數。

例如,應用程式可以是 apigee-runtime apigee-synchronizerapigee-udca。使用 pod_name 標籤依應用程式篩選結果。

/server/latencies

延遲時間是指伺服器應用程式造成的延遲時間 (以毫秒為單位)。

例如,應用程式可以是 apigee-runtime apigee-synchronizerapigee-udca。使用 pod_name 標籤依應用程式篩選結果。

/upstream/request_count

伺服器應用程式向上游應用程式傳送的要求數量。

舉例來說,對於 apigee-synchronizer,控制層是上游。 因此,upstream/request_count 是指 apigee-synchronizer 向控制層提出的要求。apigee-synchronizer

/upstream/response_count

伺服器應用程式從上游應用程式收到的回應數量。

舉例來說,對於 apigee-synchronizer,控制層是上游。 因此,upstream/response_count 是指 apigee-synchronizer 從控制層收到的要求。apigee-synchronizer

/upstream/latencies

上游伺服器應用程式產生的延遲時間 (以毫秒為單位)。

舉例來說,對於 apigee-synchronizer,控制層是上游。 因此,upstream/latenciesapigee-synchronizer 是指控制層的延遲時間指標。

UDCA 指標

Open Telemetry 會收集及處理 UDCA 服務的指標 (如「指標收集」一節所述),與其他混合式服務的處理方式相同。

下表說明 OpenTelemetry 收集器在 UDCA 指標資料中使用的指標。

指標名稱 使用
/udca/server/local_file_oldest_ts

資料集中最舊檔案的時間戳記,以 Unix Epoch 紀元時間開始算起的毫秒數為單位。

這項指標每 60 秒計算一次,無法即時反映狀態。如果 UDCA 是最新版本,且在計算這項指標時沒有待上傳的檔案,則這個值為 0。

如果這個值持續增加,表示舊檔案仍保留在磁碟上。

/udca/server/local_file_latest_ts

磁碟上最新檔案的時間戳記 (以 Unix Epoch 紀元時間開始算起的毫秒數表示)。

這項指標每 60 秒計算一次,無法即時反映狀態。如果 UDCA 是最新版本,且在計算這項指標時沒有待上傳的檔案,則這個值為 0。

/udca/server/local_file_count

資料收集 Pod 中磁碟上的檔案數量。

理想情況下,值會接近 0。如果值持續偏高,表示檔案未上傳,或 UDCA 無法以足夠快的速度上傳檔案。

這個值每 60 秒計算一次,不會即時反映 UDCA 的狀態。

/udca/server/total_latencies

資料檔案建立完成到成功上傳之間的時間間隔 (以秒為單位)。

儲存區間為 100 毫秒、250 毫秒、500 毫秒、1 秒、2 秒、4 秒、8 秒、16 秒、32 秒和 64 秒。

從檔案建立時間到成功上傳時間的總延遲直方圖。

/udca/server/upload_latencies

UDCA 上傳資料檔案所用的總時間 (以秒為單位)。

儲存區間為 100 毫秒、250 毫秒、500 毫秒、1 秒、2 秒、4 秒、8 秒、16 秒、32 秒和 64 秒。

指標會顯示上傳總延遲時間的直方圖,包括所有上游呼叫。

/udca/upstream/http_error_count

UDCA 遇到的 HTTP 錯誤總數。這項指標有助於判斷 UDCA 外部依附元件的哪個部分發生故障,以及故障原因。

這些錯誤可能發生在各種服務 (getDataLocationCloud storageToken generator) 和各種資料集 (例如 apitrace),並伴隨各種回應代碼。

/udca/upstream/http_latencies

服務的上游延遲時間 (以秒為單位)。

儲存區間為 100 毫秒、250 毫秒、500 毫秒、1 秒、2 秒、4 秒、8 秒、16 秒、32 秒和 64 秒。

上游服務的延遲直方圖。

/udca/upstream/uploaded_file_sizes

上傳至 Apigee 服務的檔案大小 (以位元組為單位)。

儲存空間大小分為 1 KB、10 KB、100 KB、1 MB、10 MB、100 MB 和 1 GB。

依資料集、機構和環境顯示檔案大小的直方圖。

/udca/upstream/uploaded_file_count UDCA 上傳至 Apigee 服務的檔案數量。

請注意:

  • event 資料集值應持續增加。
  • 如果機構/環境的流量保持不變,api 資料集值應持續增加。
  • 使用 Apigee 追蹤工具偵錯或檢查要求時,trace 資料集值應會增加。
/udca/disk/used_bytes

資料收集 Pod 磁碟上資料檔案所占用的空間,以位元組為單位。

這項價值隨時間增加:

  • ready_to_upload 表示代理程式落後。
  • failed 表示檔案堆積在磁碟上,且未上傳。系統每 60 秒會計算一次這個值。
/udca/server/pruned_file_count 由於存留時間 (TTL) 超過設定的門檻,因此遭到刪除的檔案數量。 資料集可包含 API、追蹤記錄等,狀態則可以是 UPLOADEDFAILEDDISCARDED
/udca/server/retry_cache_size

UDCA 正在重試上傳的檔案數量 (按資料集計算)。

每個檔案重試 3 次後,UDCA 會將檔案移至 /failed 子目錄,並從這個快取中移除。如果這個值隨著時間增加,表示快取未清除,這是因為檔案在 3 次重試後會移至 /failed 子目錄。

Cassandra 指標

OpenTelemetry 會收集及處理 Cassandra 的指標 (如「指標收集」一節所述),與其他混合式服務相同。

下表說明 Open Telemetry 收集器在 Cassandra 指標資料中使用的指標。

指標名稱 (不含網域) 使用
/cassandra/process_max_fds 開啟檔案描述元的數量上限。
/cassandra/process_open_fds 開啟檔案描述元。
/cassandra/jvm_memory_pool_bytes_max 集區的 JVM 記憶體用量上限。
/cassandra/jvm_memory_pool_bytes_init 集區的 JVM 初始記憶體用量。
/cassandra/jvm_memory_bytes_max JVM 堆積記憶體用量上限。
/cassandra/process_cpu_seconds_total 使用者和系統 CPU 作業時間,以秒為單位。
/cassandra/jvm_memory_bytes_used JVM 堆積記憶體用量。
/cassandra/compaction_pendingtasks Cassandra SSTable 的待處理壓縮作業。 詳情請參閱「壓縮」一節。
/cassandra/jvm_memory_bytes_init JVM 堆積初始記憶體用量。
/cassandra/jvm_memory_pool_bytes_used JVM 集區記憶體用量。
/cassandra/jvm_memory_pool_bytes_committed JVM 集區已分配的記憶體用量。
/cassandra/clientrequest_latency 第 75 個百分位數範圍內的讀取要求延遲時間 (以微秒為單位)。
/cassandra/jvm_memory_bytes_committed JVM 堆積已配置記憶體用量。

使用 Cassandra 指標

Apigee 建議監控下列指標,確保 Cassandra 資料庫正常運作:

  • Cassandra 要求率:使用這項指標監控 Cassandra 讀取和寫入要求率。
    指標: apigee.googleapis.com/cassandra/clientrequest_latency
    資源標籤: project_idlocationcluster_namenamespace_namepod_namecontainer_name
    指標標籤: scopeunit

    使用這些標籤篩選特定資源或進行分組。

    如要監控 Cassandra 讀取要求率,請套用下列篩選器。

    篩選器: metric.scope == 'Read'
    metric.unit == 'OneMinuteRate'

    如要監控 Cassandra 寫入要求率,請套用下列篩選器。

    篩選器: metric.scope == 'Write'
    metric.unit == 'OneMinuteRate'
  • Cassandra 要求延遲時間:使用這項指標監控 Cassandra 讀取和寫入要求延遲時間。這與要求率是相同的指標,只是套用的篩選條件不同。apigee.googleapis.com/cassandra/clientrequest_latency

    如要監控 Cassandra 讀取要求延遲時間,請套用下列篩選器。

    篩選器: metric.scope == 'Read'
    metric.unit == '99thPercentile''95thPercentile''75thPercentile'

    如要監控 Cassandra 寫入要求延遲時間,請套用下列篩選器。

    篩選器: metric.scope == 'Write'
    metric.unit == '99thPercentile''95thPercentile''75thPercentile'
  • Cassandra pod CPU 要求使用率
    指標: kubernetes.io/container/cpu/request_utilization (GKE on Google Cloud)

    詳情請參閱 Kubernetes 指標

    kubernetes.io/anthos/container/cpu/request_utilization (Google Distributed Cloud)
    資源標籤: project_idlocationcluster_namenamespace_namepod_namecontainer_name

    使用這些標籤篩選特定資源或進行分組。

  • Cassandra 資料磁碟區用量
    指標: kubernetes.io/pod/volume/utilization (GKE on Google Cloud)

    詳情請參閱 Kubernetes 指標

    kubernetes.io/anthos/pod/volume/utilization (Google Distributed Cloud)
    資源標籤: project_idlocationcluster_namenamespace_namepod_name
    指標標籤: volume_name

    使用這些標籤篩選特定資源或進行分組。

擴充 Cassandra 叢集的建議

下列指南可做為建議叢集,協助您決定是否要擴充 Cassandra 叢集。一般來說,如果讀取或寫入要求持續顯示第 99 個百分位數的延遲時間,或延遲時間持續上升,且您看到 CPU 要求使用率和讀取或寫入要求率相應地出現尖峰,則可視為 Cassandra 叢集處於壓力狀態。建議您考慮擴大叢集。詳情請參閱調度 Cassandra 資源

指標門檻觸發時間長度
kubernetes.io/pod/volume/utilization85%5 分鐘
kubernetes.io/container/cpu/request_utilization85%3 分鐘
Read request Latency 99thPercentile5 秒3 分鐘
Write request Latency 99thPercentile5 秒3 分鐘