如何将 CloudWatch 日志流过滤为失败调用的日志流?

How can I filter CloudWatch logstreams to the logstreams of failed invocations?

我有一个成功率超过 99% 的 Lambda 函数(这很好)。

偶尔会有一个调用导致错误。我想查看那个调用的日志。

如何找到包含错误调用的 cloudwatch 日志流?

为此,您需要在整个日志组中应用过滤模式,这将查询所有日志流。

如果您要查找特定的错误短语,可以将其用双引号引起来,例如“ERROR”。

从控制台

  • 转到 CloudWatch 服务屏幕
  • 点击Log groups
  • 点击您的日志组
  • 点击“搜索全部”
  • 在“过滤事件”文本框中输入您的模式

来自 CLI

使用filter-log-events函数。下面是一个例子

aws logs filter-log-events --start-time 1593967410000 --end-time 15945722100000 --log-group-name /aws/lambda/function-name --filter-pattern ERROR --output text

有关如何使用更复杂的过滤器模式的示例,请查看 Filter and Pattern Syntax 页面。