用戶端指標說明
使用 Bigtable 的 Java 用戶端程式庫或 Bigtable HBase 的 Java 用戶端時,即可取得用戶端指標。這個頁面詳細說明瞭各項用戶端指標。
如要瞭解如何設定及配置用戶端指標,請參閱「設定用戶端指標」。如需總覽,請參閱「用戶端指標總覽」。
指標會發布至所屬 Bigtable 叢集的區域。如果 Bigtable 無法解析指標的叢集 (例如作業失敗時),指標會發布至全球區域,且 cluster
標記的值為 unspecified
。
搭配使用用戶端和伺服器端指標,進行效能偵錯。如需 Bigtable 伺服器端和用戶端指標的完整清單,請參閱「指標」。
作業延遲
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/operation_latencies |
定義 | 針對某項 Bigtable 作業,所有相關聯遠端程序呼叫 (RPC) 嘗試的端對端總延遲時間。這項指標會測量作業從用戶端到 Bigtable 再回到用戶端的往返時間,包括所有重試情況。 以 ReadRows 要求來說,作業延遲時間包含應用程式處理各則訊息並傳回的時間。 |
支援的 Bigtable 作業 |
|
類型 | 分布 |
可用維度 |
|
嘗試延遲時間
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/attempt_latencies |
定義 | 用戶端遠端程序呼叫 (RPC) 嘗試的延遲時間。 一般來說,這個值與 operation_latencies 相同。不過,如果用戶端收到暫時性錯誤,operation_latencies 則是所有 attempt_latencies 和指數延遲時間的總和。 |
支援的 Bigtable 作業 |
|
類型 | 分布 |
可用維度 |
|
重試次數
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/retry_count |
定義 | 這個計數器會記錄作業完成所需的嘗試次數。一般來說,這個值為空白。 |
支援的 Bigtable 作業 |
|
類型 | INT64 |
可用維度 |
|
應用程式封鎖延遲時間
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/application_blocking_latencies |
定義 | 從用戶端收到要求的回應,到應用程式讀取回應的時間。這項指標與 ReadRows 要求最相關。這項指標的開始和停止時間取決於您傳送讀取要求的方式;詳情請參閱應用程式封鎖延遲時間計時器範例。
|
支援的 Bigtable 作業 |
|
類型 | 分布 |
可用維度 |
|
應用程式封鎖延遲計時器範例
ReadRows
要求通常會以三種方式之一傳送:疊代、非同步或做為未來的呼叫。下列範例說明每種 ReadRows
作業的應用程式封鎖延遲時間,以及開始和停止時間。
反覆
long totaLatency=0;
ServerStream<Row> stream = bigtableDataClient.readRows(query);
for (Row row : stream) {
timer.start();
// Do something with row
timer.stop();
totalLatency += timer.elapsed();
}
非同步
client.readRowsAsync(query, new ResponseObserver<Row>() {
@Override
public void onStart(StreamController streamController) {
}
@Override
public void onResponse(Row row) {
timer.start();
// Do something with the row
timer.stop();
totalLatency += timer.elapsed();
}
@Override
public void onError(Throwable throwable) {
// Do something with the error
}
@Override
public void onComplete() {
}
});
後續通話
這類 ReadRows
要求應不會造成應用程式封鎖延遲 (沒有計時器)。
List<Row> rows = bigtableDataClient.readRowsCallable().all().call(query);
首次回應延遲
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/first_response_latencies |
定義 | 從用戶端傳送要求到收到回應的第一列資料,這段時間的延遲。 |
支援的 Bigtable 作業 | ReadRows |
類型 | 分布 |
可用維度 |
|
伺服器延遲
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/server_latencies |
定義 | 從 Google 前端接收 RPC 到傳送回應的第一個位元組之間,所經過的延遲時間。 |
支援的 Bigtable 作業 |
|
類型 | 發行 |
可用維度 |
|
連線錯誤數
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/connectivity_error_count |
定義 | 無法連上 Google 網路的請求數。在正常情況下,這個數字為 0。如果不是 0,可能表示應用程式與 Google 網路之間的連線有問題。 |
支援的 Bigtable 作業 |
|
類型 | 發行 |
可用維度 |
|
用戶端封鎖延遲
屬性 | 說明 |
---|---|
完整指標 | bigtable.googleapis.com/client/client_blocking_latencies |
定義 | 如果大量作業中有太多待處理要求,用戶端會封鎖傳送至伺服器的要求,進而導致延遲。如果是 2.21.0 以上版本,這項指標也會納入 gRPC 通道中佇列要求的延遲時間。 |
支援的 Bigtable 作業 |
|
類型 | 發行 |
可用維度 |
|
後續步驟
- 查看所有指標。Google Cloud
- 安裝及設定用戶端指標。