本文說明如何設定一個 Google Cloud 專案,監控或顯示多個 Google Cloud 專案的遙測資料。如果您只想監控或查看儲存在單一Google Cloud 專案中的資料,則不需要進行任何設定,因為視覺化和分析工具已設定為使用專案挑選器所選專案中儲存的資料。 Google Cloud 不過,如果您想查看或分析多個專案的遙測資料,就必須執行一些設定活動,才能取得這些資料的匯總檢視畫面。
關於觀測範圍
Google Cloud Observability 分析和視覺化工具會根據特定資料類型的範圍,判斷要顯示或分析哪些資料。範圍會定義要搜尋特定類型資料的資源。除了指標資料外,系統會根據您在搜尋專案和記錄檢視畫面中的身分與存取權管理 (IAM) 角色,決定要顯示哪些資料。
您可以設定下列範圍:
- 觀測範圍
這個範圍會控管探索和資訊主頁頁面搜尋要顯示資料的方式。每個 Google Cloud 專案都包含單一可觀測性範圍,其中列出預設記錄範圍、指標範圍和預設追蹤範圍。
建議您在下列情境中,設定可觀測範圍的元件:
- 您可以使用 App Hub 註冊應用程式。這些應用程式可能是您自行註冊,也可能是使用 Application Design Center 部署的應用程式。
- 您想統一查看儲存在不同 Google Cloud 專案中的遙測資料。
如果未設定專案的可觀測性範圍元件,記錄探索工具頁面會顯示專案的記錄資料。「Metrics Explorer」和「Trace Explorer」頁面只能顯示儲存在專案中的資料。此外,快訊政策只能監控儲存在專案中的資料。
- 記錄範圍
設定專案的預設記錄範圍,這樣開啟 Logs Explorer 頁面時,系統就會顯示您通常想查看的資料。記錄範圍可以列出專案、資料夾、機構和記錄檢視。舉例來說,您可以將預設記錄範圍設為列出記錄檢視畫面,查詢時會傳回 App Hub 應用程式的記錄資料。
您可以建立多個記錄範圍。使用 Logs Explorer 頁面時,您可以選取其他記錄範圍,頁面會搜尋所選範圍中列出的資源,然後重新整理顯示畫面。
建議您在下列情況中設定預設記錄範圍:
- 將記錄資料轉送至集中式記錄值區。
- 將記錄資料轉送至其他專案,或轉送至其他專案儲存的記錄檔值區。
- 您使用記錄檢視畫面。
詳情請參閱「建立及管理記錄範圍」。
- 指標範圍
設定指標範圍,列出所有儲存指標資料的專案,以便圖表和快訊政策顯示或監控指標資料的匯總檢視畫面。
每個 Google Cloud 專案都包含單一指標範圍,且這個範圍預設只會列出專案。
如果符合下列任一情況,建議您設定指標範圍:
詳情請參閱「指標範圍總覽」。
- 追蹤記錄範圍
設定預設追蹤記錄範圍,列出所有儲存追蹤記錄資料的專案,這樣開啟「追蹤記錄探索工具」頁面時,就能查看追蹤記錄資料的匯總檢視畫面。
您可以建立多個追蹤範圍。使用「Trace 探索工具」頁面時,您可以選取其他追蹤記錄範圍,讓頁面搜尋所選範圍中列出的專案,然後重新整理顯示畫面。
如要統一查看不同專案中儲存的追蹤資料,建議您設定追蹤範圍。
詳情請參閱「建立及管理追蹤範圍」。
事前準備
如要取得建立及查看範圍所需的權限,請要求管理員授予下列 IAM 角色:
-
如要建立及查看記錄範圍,並取得預設記錄範圍,請執行下列操作:
記錄設定寫入者 (
roles/logging.configWriter
) 專案 -
如要修改指標範圍,請在專案和要新增至指標範圍的每個專案中,監控管理員 (
roles/monitoring.admin
) -
如要建立及查看追蹤範圍,並取得預設追蹤範圍,請在專案中指派 Cloud Trace 使用者 (
roles/cloudtrace.user
) 角色。 -
如要取得及設定預設範圍:
專案的可觀測性編輯者 (
roles/observability.editor
)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這些預先定義的角色具備建立及查看範圍所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要建立及查看範圍,必須具備下列權限:
-
如何設定記錄範圍:
logging.logScopes.{create, delete, get, list, update}
-
如要設定指標範圍,請按照下列步驟操作:
monitoring.metricsscopes.{link, get, list}
-
如何設定追蹤範圍:
cloudtrace.traceScopes.{create, delete, get, list, update}
-
如要取得及設定預設範圍,請執行下列操作:
observability.scopes.{get, update}
設定可觀測範圍
本節不適用於資料夾或機構。
如果未設定專案的可觀測性範圍元件,記錄探索工具頁面會顯示專案的記錄資料。「Metrics Explorer」和「Trace Explorer」頁面只能顯示儲存在專案中的資料。此外,快訊政策只能監控儲存在專案中的資料。
對於記錄和追蹤資料,您在所查看專案、任何搜尋專案和記錄檢視畫面中的 Identity and Access Management (IAM) 角色,會決定顯示哪些資料。您在所查看專案中的 IAM 角色,會決定您是否可以查看指標資料。
控制台
如要設定可觀測性範圍,請設定其元件,也就是預設記錄範圍、指標範圍和預設追蹤範圍:
-
Enable the Observability API.
啟用 API 前,請確認已選取正確的專案。如要進行 App Hub 設定,請選取 App Hub 主專案或啟用應用程式的資料夾管理專案。
-
前往 Google Cloud 控制台的 settings「Settings」(設定) 頁面:
如果您是使用搜尋列尋找這個頁面,請選取子標題為「Monitoring」的結果。
在 Google Cloud 控制台的工具列中,選取您的 Google Cloud 專案。如為「App Hub」設定,請選取 App Hub 主機專案或已啟用應用程式的資料夾管理專案。
設定預設記錄範圍:
選取「記錄範圍」分頁標籤。
系統會列出現有的記錄範圍。標有「預設」圖示
的項目是預設記錄範圍。如要建立記錄範圍,請按一下「建立記錄範圍」,然後完成對話方塊。詳情請參閱「建立及管理記錄範圍」。
找出要設為預設值的項目,按一下「更多」圖示 more_vert,然後選取「設為預設值」。
設定指標範圍:
- 選取「指標範圍」分頁標籤。
- 在「Google Cloud Projects」窗格中,按一下「Add Projects」,然後完成對話方塊。詳情請參閱「設定指標範圍」。
設定預設追蹤記錄範圍:
選取「追蹤範圍」分頁標籤,然後執行下列操作:
系統會列出現有的追蹤範圍。標有「預設」圖示
的項目是預設追蹤範圍。如要建立追蹤範圍,請按一下「建立記錄範圍」,然後完成對話方塊。詳情請參閱「建立及管理追蹤範圍」。
找出要設為預設值的項目,按一下「更多」圖示 more_vert,然後選取「設為預設值」。
gcloud
如要查看及設定預設觀測範圍,請按照下列步驟操作:
如要查看預設範圍的設定,請執行
gcloud observability scopes describe
指令。使用下方的任何指令資料之前,請先替換以下項目:
- OBSERVABILITY_SCOPE_ID:
Scope
物件的名稱。這個值必須設為_Default
。 - LOCATION:位置欄位必須設為
global
。 - PROJECT_ID:專案的 ID。
執行
gcloud observability scopes describe
指令:Linux、macOS 或 Cloud Shell
gcloud observability scopes describe OBSERVABILITY_SCOPE_ID \ --location=LOCATION\ --project=PROJECT_ID
Windows (PowerShell)
gcloud observability scopes describe OBSERVABILITY_SCOPE_ID ` --location=LOCATION` --project=PROJECT_ID
Windows (cmd.exe)
gcloud observability scopes describe OBSERVABILITY_SCOPE_ID ^ --location=LOCATION^ --project=PROJECT_ID
指令的回應如下所示:
logScope: logging.googleapis.com/projects/my-project/locations/global/logScopes/_Default name: projects/my-project/locations/global/scopes/_Default
- OBSERVABILITY_SCOPE_ID:
如要更新預設範圍,請執行
gcloud observability scopes update
指令。使用下方的任何指令資料之前,請先替換以下項目:
- OBSERVABILITY_SCOPE_ID:
Scope
物件的名稱。這個值必須設為_Default
。 - LOG_SCOPE_FQN_ID:記錄範圍的完整 ID。這個欄位的格式如下:
logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/logScopes/LOG_SCOPE_ID
在上述運算式中,LOG_SCOPE_ID 是記錄範圍的 ID。例如:
my-scope
。 - LOCATION:位置欄位必須設為
global
。 - PROJECT_ID:專案的 ID。
執行
gcloud observability scopes update
指令:Linux、macOS 或 Cloud Shell
gcloud observability scopes update OBSERVABILITY_SCOPE_ID \ --log-scope=LOG_SCOPE_FQN_ID\ --location=LOCATION\ --project=PROJECT_ID
Windows (PowerShell)
gcloud observability scopes update OBSERVABILITY_SCOPE_ID ` --log-scope=LOG_SCOPE_FQN_ID` --location=LOCATION` --project=PROJECT_ID
Windows (cmd.exe)
gcloud observability scopes update OBSERVABILITY_SCOPE_ID ^ --log-scope=LOG_SCOPE_FQN_ID^ --location=LOCATION^ --project=PROJECT_ID
舉例來說,如果 LOG_SCOPE_ID 的值為
my-scope
,則回應會類似於下列內容:Updated scope [_Default]. logScope: logging.googleapis.com/projects/my-project/locations/global/logScopes/my-scope name: projects/my-project/locations/global/scopes/_Default
- OBSERVABILITY_SCOPE_ID:
REST
不支援設定預設追蹤記錄範圍。
如要使用 Observability API 取得或設定預設記錄範圍,請按照下列步驟操作:
確認已啟用 Observability API:
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
設定 Google Cloud CLI 的預設專案:
gcloud config set project PROJECT_ID
執行上一個指令前,請先取代下列項目:
- PROJECT_ID:專案的 ID。如要進行 App Hub 設定,請選取 App Hub 主專案或啟用應用程式的資料夾管理專案。
-
Enable the Observability API:
gcloud services enable observability.googleapis.com
-
執行下列其中一個步驟:
如要取得專案的預設記錄範圍,請向
projects.locations.scopes.get
端點傳送要求。您必須指定路徑參數。回應為Scope
物件,其中列出預設記錄範圍。如要更新專案的預設記錄範圍,請將要求傳送至
projects.locations.scopes.patch
端點。您必須指定路徑參數、查詢參數,並提供Scope
物件。查詢參數會指出變更的欄位。回應為Scope
物件。兩個端點的路徑參數格式如下:
projects/PROJECT_ID/locations/LOCATION/scopes/OBSERVABILITY_SCOPE_ID
上一個運算式中的欄位具有下列意義:
- PROJECT_ID:專案的 ID。如要進行 App Hub 設定,請選取 App Hub 主專案或啟用應用程式的資料夾管理專案。
- LOCATION:位置欄位必須設為
global
。 - OBSERVABILITY_SCOPE_ID:
Scope
物件的名稱。這個欄位必須設為_Default
。名稱為_Default
的Scope
物件會儲存預設記錄範圍的相關資訊,並自動建立。
如要將指令傳送至 API 端點,可以使用 APIs Explorer,從參考頁面發出指令。舉例來說,如要取得目前的預設範圍,可以執行下列操作:
- 按一下 [
projects.locations.scopes.get
]。 在「Try this method」(試試這個方法) 小工具的「name」(名稱) 欄位中,輸入下列內容:
projects/PROJECT_ID/locations/global/scopes/_Default
複製上一個欄位之前,請先將 PROJECT_ID 換成專案名稱。
選取「執行」。
在授權對話方塊中,完成必要步驟。
回應類似以下內容:
{ "name": "projects/my-project/locations/global/scopes/_Default", "logScope": "logging.googleapis.com/projects/my-project/locations/global/logScopes/_Default" }