本文說明如何透過串流和即時追蹤,即時查看記錄項目。串流記錄可讓您即時查看記錄項目,並在記錄檔探索工具中使用。
您可以透過 gcloud CLI 指令 gcloud alpha logging tail
和 Cloud Logging API 方法 entries.tail
,即時查看記錄項目。
使用記錄檔探索工具 gcloud logging read
或 API 方法 entries.list
查看及分析記錄檔時,您會看到 Cloud Logging 儲存的記錄項目。串流或即時追蹤記錄項目時,您會看到應用程式將記錄項目寫入 Cloud Logging API。
在記錄檔探索工具中串流記錄
在記錄檔探索工具中,您可以使用「串流記錄」即時查看記錄資料。使用串流記錄時,您可以新增查詢,只串流符合查詢條件的記錄。如要串流記錄,請執行下列操作:
-
前往 Google Cloud 控制台的「Logs Explorer」頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Logging」的結果。
在「Query」(查詢) 欄位中輸入查詢,然後按一下「Stream logs」(串流記錄)。
當 Logging 寫入記錄檔資料時,「Query results」(查詢結果) 窗格才會顯示符合查詢的記錄檔。如未提供查詢,Logging 會顯示最近儲存的記錄項目。在您選取記錄面板上的捲軸之前,記錄會持續串流。停止串流後,系統會顯示「重新啟動串流」按鈕。
如需查詢相關資訊,請參閱「在記錄檔探索工具中建構查詢」。
在 Google Cloud CLI 中使用即時追蹤功能
透過即時追蹤功能,您可以使用 Google Cloud CLI 或 Cloud Logging API,在 Cloud Logging 寫入記錄項目時即時查看。
如果記錄檔 bucket 設有欄位層級的存取控制,就不支援即時追蹤。不過,您可以在記錄檔探索工具中串流處理這些 bucket 的記錄。
如要瞭解即時追蹤的 API 方法,請參閱 entries.tail 方法。
正在安裝「gcloud alpha logging tail
」
如要使用 gcloud alpha logging tail
,您必須安裝 Python 3 和 grpcio
Python 套件。
如需瞭解如何安裝 Python,請參閱 Python 頁面。如需安裝 Python 套件管理員 pip
(安裝 grpcio
套件時需要用到) 的操作說明,請參閱Python 套件安裝程式頁面。
如要安裝 gcloud alpha logging tail
,請完成下列步驟:
確認您已安裝 Google Cloud CLI。如需安裝 Google Cloud CLI 的操作說明,請參閱「安裝 Google Cloud CLI」。
確認您使用的 gcloud CLI 版本為 302.0.0 以上。
gcloud version
如需更新 gcloud CLI 的操作說明,請參閱
gcloud components update
。安裝 gcloud CLI Alpha 版元件:
gcloud components install alpha
MacOS、Linux 和 Cloud Shell 使用者:
安裝 gRPC 用戶端程式庫:
sudo pip3 install grpcio
將環境變數
CLOUDSDK_PYTHON_SITEPACKAGES
設為任意值:export CLOUDSDK_PYTHON_SITEPACKAGES=1
使用下列指令設定 Google Cloud 專案 ID 並進行驗證:
gcloud config set project PROJECT_ID gcloud auth login
如要取得專案 ID,請參閱「建立與管理專案」。
執行下列指令,確認已安裝
gcloud alpha logging tail
:gcloud alpha logging tail
這個指令會顯示下列訊息:
Initializing tail session.
您現在正在查看專案的記錄項目,因為 Logging 會寫入這些項目。 Google Cloud
如要進一步瞭解如何使用即時追蹤功能,請參閱 gcloud alpha logging tail
參考指南。
緩衝處理和排序
由於 Logging 可能會收到時間順序錯亂的記錄項目,因此即時追蹤功能提供緩衝視窗設定,讓您在查看記錄項目時,可根據寫入時間或升序排列方式進行取捨。您可以將緩衝區視窗設為 0
到 60
秒。
請注意緩衝時間範圍的下列特性:
預設緩衝視窗為兩秒。
記錄檔會在緩衝區時間範圍內,延遲將記錄項目寫入記錄檔值區。
如果記錄項目是在緩衝區視窗外寫入,則記錄服務會傳回收到的記錄項目。
設定緩衝區視窗時,您需要在「查看記錄的寫入情形」和「查看無序項目」之間取捨。
緩衝區 | 取捨 |
---|---|
0 秒 |
傳回最新的記錄檔項目,但這些項目更有可能順序錯亂。 |
60 秒 |
系統會延遲 60 秒才傳回項目,但大部分記錄會依遞增順序傳回。 |
限制與配額
下表列出即時追蹤的限制和配額:
限制與配額 | 值 |
---|---|
每分鐘傳回的項目數 | 60,000 如果超過 60,000 個項目符合篩選條件,則 Logging 會在回應中傳回項目計數。 |
每個 Google Cloud 專案的執行中即時追蹤工作階段數 | 10 |
用戶端限制
如果專案快速寫入大量項目,用戶端可能無法以寫入速度消耗這些項目。 Google Cloud 在這種情況下,記錄會限制傳送的項目總數,並優先傳送最近的項目。在尾部工作階段結束時,記錄會傳回因用戶端限制而未顯示的項目數量。
使用用戶端程式庫進行即時追蹤
透過即時追蹤功能,您可以在 Cloud Logging 寫入記錄檔項目時即時查看。如要瞭解即時追蹤的 API 方法,請參閱 entries.tail 方法。
如果記錄檔 bucket 設有欄位層級的存取控制,就不支援即時追蹤。不過,您可以在記錄檔探索工具中串流處理這些 bucket 的記錄。
這個範例會示範如何即時追蹤特定記錄器的記錄項目。
Go
如要瞭解如何安裝及使用 Logging 的用戶端程式庫,請參閱這篇文章。
如要向 Logging 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Java
如要瞭解如何安裝及使用 Logging 的用戶端程式庫,請參閱這篇文章。
如要向 Logging 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。
Node.js
如要瞭解如何安裝及使用 Logging 的用戶端程式庫,請參閱這篇文章。
如要向 Logging 進行驗證,請設定應用程式預設憑證。 詳情請參閱「為本機開發環境設定驗證」。