如何在许多 AWS Cloudwatch 日志流中查找我的 Python lambda 函数的错误日志?

How do I find error logs for my Python lambda function across many AWS Cloudwatch log streams?

假设我有日志组 /aws/lambda/backend,它跟踪我的 Python lambda 函数的日志。 我想调试常见问题,例如异常和超时,并查找相关的日志条目。

但是函数的并发量很大,所以日志组里的日志流很多。 如何在不访问每个单独的日志流并执行搜索的情况下跨所有日志查找日志条目?

这可以通过使用 Logs Insights 来实现,它使用查询语言来分析日志组中的日志。

对于常见的 Python 函数错误,我发现 this query 有用:

fields @timestamp, @message, @logStream
| filter @message like /(?i)Exception|Error|Traceback|Timed out/
| sort @timestamp desc
| limit 20

这将 return 记录查询和链接以记录组到发生异常或超时的地方。