使用筛选条件模式匹配非结构化日志事件中的字词 - Amazon CloudWatch 日志

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

使用筛选条件模式匹配非结构化日志事件中的字词

如果您的日志是纯文本,没有 JSON 等特定格式,请使用非结构化筛选模式。这些模式适用于应用程序日志、系统日志、Web 服务器日志以及任何需要查找特定单词或短语的基于文本的日志格式。

非结构化模式非常适合:

  • 简单监控:跟踪错误关键字、状态消息或用户操作

  • 旧系统:使用不输出结构化 JSON 日志的旧应用程序

  • 快速设置:无需解析复杂的日志格式即可立即开始监控

例如,用于ERROR查找任何包含该单词的日志条目,或者"INTERNAL SERVER ERROR"用于匹配该短语。

展开以下部分并浏览选项卡,查看示例,这些示例展示了为常见监控场景创建非结构化筛选模式的不同方法。

以下示例包含代码段,这些代码段显示了如何使用筛选条件模式匹配非结构化日志事件中的字词。

注意

筛选条件模式区分大小写。将包含非字母数字字符的精确短语和字词用双引号括起来 ("")。

Monitor application errors

查找所有包含错误的日志条目,以跟踪应用程序运行状况并对问题进行故障排除。

过滤模式:

ERROR

用例:

  • Live Tail:实时监控错误的发生

  • 指标筛选器:创建 CloudWatch 指标以统计错误发生次数

  • 订阅筛选器:将错误日志转发给警报系统

此模式匹配日志条目,例如:

  • [ERROR 400] BAD REQUEST

  • [ERROR 401] UNAUTHORIZED REQUEST

  • [ERROR 419] MISSING ARGUMENTS

Track related application issues

查找包含多个相关术语的日志条目以识别特定类型的问题。

过滤模式:

ERROR ARGUMENTS

用例:

  • 解决中的参数验证问题 APIs

  • 监控应用程序中的配置问题

  • 跟踪输入验证失败

此模式匹配日志条目,例如:

  • [ERROR 419] MISSING ARGUMENTS

  • [ERROR 420] INVALID ARGUMENTS

Monitor any type of issue

创建灵活的监控,在不要求所有术语都存在的情况下捕捉不同类型的问题。

过滤模式:

?ERROR ?ARGUMENTS

用例:

  • 跨不同应用程序组件进行广泛的错误监控

  • 当您不确定要查找哪些具体错误时进行初步故障排除

  • 创建全面的错误仪表板

此模式匹配日志条目,例如:

  • [ERROR 400] BAD REQUEST

  • [ERROR 419] MISSING ARGUMENTS

  • [INFO] INVALID ARGUMENTS PROVIDED

Find specific error messages

搜索确切的错误消息以识别特定的系统问题。

过滤模式:

"INTERNAL SERVER ERROR"

用例:

  • 监控关键系统故障(HTTP 500 错误)

  • 跟踪特定的数据库连接问题

  • 提醒需要立即注意的确切错误情况

此模式匹配日志条目,例如:

  • [ERROR 500] INTERNAL SERVER ERROR

Filter out noise from monitoring

通过排除常见的、不太关键的问题,将重点放在重要的错误上。

过滤模式:

ERROR -ARGUMENTS

用例:

  • 监控严重错误,同时忽略用户输入验证问题

  • 将警报集中在系统问题上,而不是用户错误上

  • 通过筛选出预期的错误类型来减少警报疲劳

此模式匹配日志条目,例如:

  • [ERROR 400] BAD REQUEST

  • [ERROR 401] UNAUTHORIZED REQUEST

Capture all log activity

监控所有日志事件以进行全面日志记录或在设置新的监控时进行监控。

过滤模式:

" "

用例:

  • 将所有日志转发到外部日志分析系统

  • 创建全面的日志档案

  • 在应用特定模式之前测试订阅过滤器