使用稽核記錄排解 Pub/Sub 問題

Pub/Sub 會產生稽核記錄,擷取 Pub/Sub 資源的管理和存取活動。這些活動的範例包括建立主題、更新訂閱項目或刪除快照。您可以利用這些記錄檔排解問題,並確保訊息基礎架構的安全性。

以下是 Pub/Sub 稽核記錄的重要注意事項:

  • Pub/Sub 稽核記錄會使用服務名稱 pubsub.googleapis.com

  • Pub/Sub 具有不同類型的記錄。其中包括:

    • 管理員活動記錄會記錄建立、刪除或更新主題和訂閱項目等動作。

    • 資料存取記錄會記錄擷取主題或列出訂閱項目等動作。

    • 系統事件記錄會記錄移除閒置訂閱項目等事件。

  • Pub/Sub 不會記錄訊息作業,例如發布、訂閱或確認訊息。

如要進一步瞭解 Pub/Sub 的稽核記錄,請參閱稽核記錄

查看 Pub/Sub 稽核記錄

Logs Explorer 提供集中式位置,方便您存取 Google Cloud中的所有記錄檔資料。您可以使用 Logs Explorer 查看 Pub/Sub 記錄。

  1. 取得查看 Logs Explorer 的必要權限。

    詳情請參閱「事前準備」一節。

  2. 前往 Google Cloud 控制台的「Logs Explorer」頁面。

    前往 Logs Explorer

  3. 選取現有的 Google Cloud 專案、資料夾或組織。

  4. 如要顯示所有與 Pub/Sub 相關的稽核記錄,請在查詢編輯器欄位中輸入下列查詢:

     protoPayload.serviceName="pubsub.googleapis.com"
    
    圖片:顯示如何在查詢編輯器欄位中輸入查詢。
    圖 1 輸入查詢。
  5. 點選「執行查詢」

  6. 如要顯示特定資源和稽核記錄類型的稽核記錄,請在「Query builder」(查詢建立工具) 窗格中執行下列操作:

    1. 如要查看所有資源的稽核記錄,請選取要查看的 Google Cloud 資源。舉例來說,選取「Cloud Pub/Sub Topic」(Cloud Pub/Sub 主題),然後選取主題名稱。

    2. 在「所有記錄檔名稱」中,選取要查看的稽核記錄類型。

      例如:

      • 如要查看管理員活動稽核記錄,請選取 activity

      • 如要查看系統事件稽核記錄,請選取 system_event

系統會自動執行查詢。

如何使用稽核記錄排解 Pub/Sub 問題

  1. 找出要調查的特定問題。以下列出可能的問題:

    • 找出建立、刪除或修改主題、訂閱項目、快照或結構定義的使用者。

    • 追蹤主題或訂閱設定的變更。

    • 確認主題或訂閱項目是否存在,以及目前的狀態。

    不過,您無法使用稽核記錄排解與訊息發布和傳送相關的問題。您不會看到訊息傳送失敗、訊息重複或訊息順序問題的記錄。稽核記錄也無法協助您找出速度緩慢的訂閱者,或是訊息確認的問題。如要排解訊息層級的問題,您必須使用其他工具,例如監控指標、無效信件佇列和應用程式記錄。

  2. 根據問題建構查詢,篩選稽核記錄。 舉例來說,如要找出刪除訂閱項目的使用者,請依 protoPayload.methodName="google.pubsub.v1.Publisher.DeleteSubscription" 篩選。

    如要調查建立訂閱項目時可能發生的錯誤,請依protoPayload.methodName="google.pubsub.v1.Subscriber.CreateSubscription"篩選。

  3. 檢查記錄項目中的時間戳記、主體和資源名稱,瞭解事件順序並找出任何異常狀況。

如要進一步瞭解如何建構 Pub/Sub 的稽核記錄查詢,請參閱稽核記錄