日誌遞迴預防 - Amazon CloudWatch Logs

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

日誌遞迴預防

如果未防止,訂閱篩選條件可能會導致 CloudWatch 日誌和目的地的擷取計費大幅增加,則可能會導致日誌重複發生無限次數。當訂閱篩選條件與因訂閱交付工作流程而接收日誌事件的日誌群組相關聯時,就會發生這種情況。擷取至日誌群組的日誌將傳送至目的地,導致日誌群組擷取更多日誌,然後再次轉送至目的地,建立遞迴循環。

例如,將目的地為 Firehose 的訂閱篩選條件視為 Firehose,它會將日誌事件傳遞給 Amazon S3。此外,也有 Lambda 函數可處理傳送至 Amazon S3 的新事件,並產生一些日誌本身。如果訂閱篩選條件套用至 Lambda 函數的日誌群組,則函數產生的日誌事件會在目的地轉送至 Firehose 和 Amazon S3,然後再次調用該函數,導致產生更多日誌並轉送至 Firehose 和 Amazon S3,導致再次調用該函數等。這將發生在無限迴圈中,導致日誌擷取、Firehose 和 Amazon S3 的計費意外增加。

如果 Lambda 函數連接至VPC已啟用 CloudWatch Logs 流程日誌的 ,則 VPC的日誌群組也可能導致日誌遞迴。

建議您不要將訂閱篩選條件套用至訂閱交付工作流程中包含的日誌群組。對於帳戶層級訂閱篩選條件,請使用 中的 selectionCriteria 參數PutAccountPolicyAPI,將這些日誌群組從政策中排除。

排除日誌群組時,請考慮下列產生日誌的服務,這些 AWS 服務可能是訂閱交付工作流程的一部分:

  • Amazon EC2搭配 Fargate

  • Lambda

  • AWS 步驟函數

  • 為 Logs 啟用的 Amazon VPC流程 CloudWatch 日誌

注意

Lambda 目的地的日誌群組所產生的日誌事件將不會轉送至帳戶層級訂閱篩選條件政策的 Lambda 函數。在此情況下,帳戶訂閱政策selectionCriteria不需要使用 排除目的地 Lambda 函數的日誌群組。