匯總接收器可讓您彙整資料夾或機構內所有資源的記錄項目,並轉送至支援的目的地。您可以使用匯總接收器,將記錄資料儲存在中央位置,並控管子項資源是否儲存重複副本。
關於匯總接收器
匯總接收器是資料夾或機構層級的接收器,可轉送接收器定義所在資源和所有子項資源的記錄項目。與專案層級接收器類似,匯總接收器也有目的地和篩選器,可決定要轉送哪些記錄項目,但專案層級接收器只會轉送單一專案的記錄項目。
匯總接收器類型
您可以建立兩種匯總接收器:攔截和非攔截,視您是否要讓子項資源也一併傳送記錄項目而定。如果記錄項目的資源階層中存在匯總接收器,記錄路由器會先將記錄項目傳送至這些接收器,並根據接收器類型決定後續動作:
- 攔截匯總接收器
攔截匯總接收器會禁止將記錄項目轉送至子項資源中的接收器,但記錄項目來源資源中的
_Required接收器除外。攔截匯總接收器可用於防止記錄項目重複儲存在多個位置。舉例來說,假設您需要啟用資料存取稽核記錄以進行稽核。為了簡化分析作業,您想將這些記錄檔儲存在中央位置。不過,基於安全性和成本考量,您也希望避免這些記錄儲存在專案層級。在這個情境中,您可以建立攔截匯總接收器。
- 非攔截式匯總接收器
非攔截式匯總接收器不會影響記錄項目轉送至其他接收器的方式。也就是說,即使記錄項目符合非攔截式匯總接收器的篩選器,該記錄項目仍會轉送至記錄項目資源階層中的其他接收器。非攔截式匯總接收器可讓您持續查看記錄項目在產生時所在的資源。
舉例來說,您可以建立非攔截式匯總接收器,將機構所含資料夾產生的所有記錄項目,轉送至中央記錄值區。記錄項目會儲存在中央記錄檔 bucket 中。不過,由於接收器不會攔截,記錄路由器也會將記錄項目傳送至產生記錄項目的資源中的記錄檔接收器。
轉送範例
本節說明源自專案的記錄項目,如何透過資源階層中的接收器流動。
範例:沒有匯總接收器
如果記錄項目的資源階層中沒有匯總記錄檔接收器,記錄項目會傳送至記錄項目來源專案中的記錄檔接收器。如果記錄項目符合接收器的「包含」篩選器,但不符合任何「排除」篩選器,專案層級接收器就會將記錄項目轉送至接收器的目的地。
範例:存在非攔截式匯總接收器
假設記錄項目的資源階層中,存在非攔截式匯總接收器。Log Router 將記錄項目傳送至非攔截式匯總接收器後,會發生下列情況:
如果記錄項目符合「包含」篩選器,但不符合任何「排除」篩選器,非攔截式匯總接收器就會將記錄項目傳送至接收器的目的地。
記錄檔路由器會將記錄項目傳送至記錄項目來源專案中的記錄檔接收器。
如果記錄項目符合接收器的「包含」篩選器,但不符合任何「排除」篩選器,專案層級接收器就會將記錄項目轉送至接收器的目的地。
範例:存在攔截匯總接收器的情況
假設記錄項目的資源階層中存在攔截匯總接收器。記錄檔路由器將記錄項目傳送至攔截匯總接收器後,會發生下列其中一種情況:
記錄項目符合「包含」篩選器,但不符合任何「排除」篩選器:
- 記錄項目會轉送至攔截匯總接收器的目的地。
- 記錄項目會傳送至記錄項目來源專案中的
_Required接收器。
記錄項目不符合「包含」篩選器,或符合至少一個「排除」篩選器:
- 攔截的匯總接收器不會將記錄項目路由傳送至其他位置。
記錄檔路由器會將記錄項目傳送至記錄項目來源專案中的記錄檔接收器。
如果記錄項目符合接收器的「包含」篩選器,但不符合任何「排除」篩選器,專案層級接收器就會將記錄項目轉送至接收器的目的地。
匯總接收器支援的目的地
本節列出匯總接收器支援的目的地。
攔截用接收器
攔截用匯總接收器的目的地須為Google Cloud 專案。
目的地專案中的記錄檔接收器會將記錄項目重新轉送至目的地。支援專案以外的所有目的地。舉例來說,目的地專案中的記錄檔接收器可能會將記錄項目重新轉送至記錄檔 bucket。
非攔截用接收器
本節說明非攔截式匯總接收器支援的目的地。
接收器的目的地可以位於與接收器不同的資源中。舉例來說,您可以使用記錄檔接收器,將某個專案的記錄項目轉送至儲存在其他專案的記錄檔 bucket。
系統支援下列目的地:
- Google Cloud 專案
如要讓目的地專案中的記錄檔接收器重新轉送記錄項目,或已建立攔截匯總接收器,請選取這個目的地。目的地專案中的記錄接收器可將記錄項目重新轉送至任何支援的目的地,但專案除外。
目的地專案中系統建立的記錄檔接收器,會排除轉送至來源專案中
_Required記錄檔 bucket 的記錄項目。舉例來說,如果您將管理員活動記錄轉送至其他專案,則目的地專案中的_Required和_Default記錄檔接收器都會排除這些記錄項目。如要儲存這些記錄項目,請在目的地專案中更新_Default記錄檔接收器,或建立自訂記錄檔接收器。
- 記錄檔 bucket
如要將記錄資料儲存在 Cloud Logging 管理的資源中,請選取這個目的地。您可以使用 Logs Explorer 和 Observability Analytics 等服務,查看及分析記錄檔儲存桶中儲存的記錄檔資料。
如要彙整記錄檔資料與其他業務資料,您可以將記錄檔資料儲存在記錄檔值區中,並建立連結的 BigQuery 資料集。連結的 BigQuery 資料集為唯讀,但您可以像查詢其他 BigQuery 資料集一樣查詢。
- BigQuery 資料集
- 如要將記錄資料與其他業務資料合併,請選取這個目的地。您指定的資料集必須啟用寫入功能。請勿將接收器的目的地設為連結的 BigQuery 資料集。連結的 BigQuery 資料集為唯讀。
- Cloud Storage bucket
- 如要長期儲存記錄資料,請選取這個目的地。 Cloud Storage bucket 可以位於記錄項目來源專案,也可以位於其他專案。記錄項目會儲存為 JSON 檔案。
- Pub/Sub 主題
- 如要從Google Cloud 匯出記錄資料,然後使用 Splunk 或 Datadog 等第三方整合服務,請選取這個目的地。記錄項目會格式化為 JSON,然後轉送至 Pub/Sub 主題。
最佳做法
建議匯總接收器的目的地為Google Cloud 專案。使用這個目的地時,目的地Google Cloud 專案中的記錄檔接收器會重新轉送記錄項目。_Required 接收器只會轉送符合篩選條件,且源自定義接收器資源的記錄項目。因此,如要儲存與 _Required 記錄檔接收器篩選條件相符的額外記錄項目副本,就必須建立自訂記錄檔接收器,或修改 _Default 記錄檔接收器的篩選條件。
建立攔截接收器時,建議您採取下列做法:
請考量子資源是否需要獨立控管記錄項目轉送。如果子項資源需要獨立控管特定記錄項目,請確認攔截接收器不會轉送這些記錄項目。
在攔截接收器的說明中加入聯絡資訊。如果管理攔截接收器的人員與管理記錄項目遭攔截專案的人員不同,這項功能就可能派上用場。
如要測試接收器設定,請先建立非攔截式匯總接收器,確認系統會轉送正確的記錄項目。
攔截匯總接收器和記錄指標
記錄指標是從記錄項目內容取得的 Cloud Monitoring 指標。記錄項目的轉送方式,決定了該項目可計入哪些記錄指標。由於攔截匯總接收器會影響記錄項目的轉送方式,因此建立這類接收器可能會導致現有記錄指標的值發生變化。
詳情請參閱「轉送記錄項目對記錄指標的影響」。
匯總接收器和 VPC Service Controls
使用匯總接收器和 VPC Service Controls 時,適用下列限制和設定規定:
存取 perimeter 內的專案記錄:匯總接收器可以存取 service perimeter 內專案的記錄資料。如要限制匯總接收器存取 perimeter 內的資料,請使用 Identity and Access Management 管理 Cloud Logging 權限。
資料夾和機構層級的記錄資料:VPC Service Controls 服務 perimeter 不會保護資料夾或機構層級的記錄資料,包括匯總記錄資料。雖然您可以將資料夾新增至一般 service perimeter,但這麼做只會保護資料夾階層中的專案,不會保護資料夾層級的資源或記錄。您無法將組織新增為 service perimeter 中的受保護資源。
如要在資料夾或組織層級管理 Logging 權限,請使用 IAM。
受 perimeter 保護的目的地輸入規則:如果您使用資料夾或組織層級接收器,將記錄轉送至受 service perimeter 保護的資源,則必須在目的地 service perimeter 新增輸入規則。輸入規則必須允許從匯總接收器使用的服務帳戶 (寫入者身分) 存取資源。詳情請參閱下列頁面:
- 輸入和輸出規則
- 管理 service perimeter
- 設定匯總接收器的目的地權限
輸入和輸出規則中的身分類型限制:當匯總記錄檔接收器將記錄轉送至 VPC Service Controls perimeter 中的 Cloud Storage 資源時,輸入或輸出規則無法使用
ANY_SERVICE_ACCOUNT或ANY_USER_ACCOUNT做為身分類型。請改用ANY_IDENTITY做為身分類型。非匯總接收器不需要設定輸入規則。
後續步驟
如要瞭解如何建立匯總接收器,請參閱下列文章: