模式 - Amazon CloudWatch 日志
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

模式

使用 pattern 自动将您的日志数据划分为不同模式。

模式是在日志字段中重复出现的共有的文本结构。您可以使用 pattern 来查看新出现的趋势、监控已知错误以及识别经常出现的或高成本的日志行。

由于 pattern 命令会自动识别常见模式,因此您可以将其用作搜索和分析日志的起点。您还可以将 pattern filter parse sort 命令结合使用,在更精细的查询中识别模式。

模式命令输入

pattern 命令需要以下输入之一:@message 字段、使用  parse 命令创建的提取字段或使用一个或多个字符串函数操作的字符串。

模式命令输出

pattern 命令将生成以下输出:

  • @pattern:在日志事件字段中重复出现的共有的文本结构。在模式内变化的字段(例如请求 ID 或时间戳)由 <*> 表示。例如,[INFO] Request time: <*> ms 是日志消息 [INFO] Request time: 327 ms 的潜在输出。

  • @ratio:选定时间段的日志事件与符合已确定模式的指定日志组的比率。例如,如果所选日志组和时间段中有一半的日志事件符合模式,则 @ratio 返回 0.50

  • @sampleCount:选定时间段的日志事件与符合已确定模式的指定日志组的数量。

  • @severityLabel:日志严重性或级别,表示日志中包含的信息类型。例如,ErrorWarningInfoDebug

示例

以下命令识别选定时间范围内指定日志组中具有相似结构的日志,并按模式和计数对其进行分组

pattern @message

pattern 命令可以与  filter 命令结合使用

filter @message like /ERROR/ | pattern @message

pattern 命令可以与  parse 和  sort 命令结合使用

filter @message like /ERROR/ | parse @message 'Failed to do: *' as cause | pattern cause | sort @sampleCount asc