範例:計算詞彙的出現次數 - Amazon CloudWatch 日誌

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

範例:計算詞彙的出現次數

日誌事件經常包含您想要計數,或是有關操作成功或失敗操作的重要訊息。例如,若指定的操作失敗,錯誤可能會發生且系統會將該錯誤記錄到日誌檔。您可能想要監控這些項目,以了解錯誤的趨勢。

在下例中,建立指標篩選條件來監控「Error」詞彙。此原則已建立並新增至記錄群組 MyApp/message.log。 CloudWatch 記錄會將資料點發佈至 MyApp/message.log 命名空間 ErrorCount 中的 CloudWatch 自訂量度,對於每個包含 Error 的事件,其值為「1」。如果事件不包含單字「Error」,則會發佈值 0。在 CloudWatch主控台中繪製此資料圖形時,請務必使用總和統計資料。

建立量度篩選後,您可以在 CloudWatch 主控台中檢視指標。選取要檢視的指標時,請選取符合日誌群組名稱的指標命名空間。如需詳細資訊,請參閱檢視可用的指標

使用 CloudWatch 主控台建立量度篩選
  1. 請在以下位置開啟 CloudWatch 主控台。 https://console.aws.amazon.com/cloudwatch/

  2. 在導覽窗格中,選擇 Log groups (日誌群組)。

  3. 選擇日誌群組的名稱。

  4. 選擇 Actions (動作) > Create metric filter (建立指標篩選條件)

  5. 針對 Filter Pattern (篩選條件模式),輸入 Error

    注意

    Filter Pattern (篩選條件模式) 中的所有項目都會區分大小寫。

  6. (選用) 若要測試篩選條件模式,請在 Test Pattern (測試模式) 下方,輸入一個或多個日誌事件,用以測試模式。每個日誌事件都必須在一行內,因為 Log event messages (日誌事件訊息) 方塊中使用換行來分隔日誌事件。

  7. 選擇 Next (下一步),然後在 Assign metric (指派指標) 頁面上,針對 Filter Name (篩選條件名稱) 輸入 MyAppErrorCount

  8. 在「測量結果詳細資訊」下,針對測量結果命名 MyNameSpace

  9. 針對 Metric Name (指標名稱),輸入 ErrorCount

  10. 確認 Metric Value (指標值) 為 1。這會指定針對每個包含「Error」的日誌事件計數以 1 的方式遞增。

  11. 針對 Default Value (預設值),輸入 0,然後選擇 Next (下一步)

  12. 選擇 Create metric filter (建立指標篩選條件)

使用建立度量篩選 AWS CLI

在命令提示中,執行下列命令:

aws logs put-metric-filter \ --log-group-name MyApp/message.log \ --filter-name MyAppErrorCount \ --filter-pattern 'Error' \ --metric-transformations \ metricName=ErrorCount,metricNamespace=MyNamespace,metricValue=1,defaultValue=0

您可以透過張貼在訊息中包含「錯誤」單字的事件來測試這個新政策。

若要使用 AWS CLI

畫面出現命令提示時,執行下列 命令。請注意,模式會區分大小寫。

aws logs put-log-events \ --log-group-name MyApp/access.log --log-stream-name TestStream1 \ --log-events \ timestamp=1394793518000,message="This message contains an Error" \ timestamp=1394793528000,message="This message also contains an Error"