Amazon CloudWatch Logs
用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

示例:对字词的出现次数进行计数

日志事件经常包含您需要计数的重要消息,可能是关于操作的成功或失败的消息。例如,如果给定操作失败,可能发生错误,且错误记录到日志文件中。您可能需要监控这些日志条目以了解错误发生趋势。

在以下示例中,创建了一个指标筛选器来监控“Error”这个词。策略已创建并添加到日志组 MyApp/message.log。对于每个包含“Error”的事件,CloudWatch Logs 都将数据点发布到 MyApp/message.log 命名空间中值为“1”的 CloudWatch 自定义指标 ErrorCount。如果没有任何事件包含“Error”这个词,则不发布数据点。当在 CloudWatch 控制台中绘制该数据的图表时,请务必使用总计统计数据。

使用 CloudWatch 控制台创建指标筛选器

  1. 通过以下网址打开 CloudWatch 控制台:https://console.amazonaws.cn/cloudwatch/

  2. 在导航窗格中,选择 Logs

  3. 在内容窗格中,选择一个日志组,然后选择 Create Metric Filter

  4. Define Logs Metric Filter 屏幕上,为 Filter Pattern 键入 Error

    注意

    Filter Pattern 中的所有条目都区分大小写。

  5. 要测试筛选器模式,请为 Select Log Data to Test 选择要对其测试指标筛选器的日志组,然后选择 Test Pattern

  6. Results 下,CloudWatch Logs 显示一条消息,表明筛选器模式在日志文件中出现的次数。

    要查看详细结果,请选择 Show test results

  7. 选择 Assign Metric,然后在 Create Metric Filter and Assign a Metric 屏幕上,为 Filter Name 键入 MyAppErrorCount

  8. Metric Details 下,为 Metric Namespace 键入 MyNameSpace

  9. Metric Name 键入 ErrorCount,然后选择 Create Filter

使用 AWS CLI 创建指标筛选器

在命令提示符处,运行以下命令:

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

您可以通过在消息中发布包含“Error”这个词的事件来测试此新策略。

使用 AWS CLI 发布事件

在命令提示符处,运行以下命令。注意,模式区分大小写。

Copy
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"