You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过CloudWatch查询Lambda成功执行的最小与最大耗时

通过CloudWatch查询Lambda成功执行的最小/最大执行时间

需求

查询CloudWatch日志,获取Lambda仅成功执行实例的最小和最大执行时间,需排除失败的执行记录。

首次尝试的查询

最初使用以下查询获取执行时间的极值,但结果包含了失败的Lambda执行记录:

fields @message
| filter @type = "REPORT"
| stats min(@duration) as MinimumTime,
        max(@duration) as MaximumTime

筛选成功执行RequestId的思路

Lambda执行失败时会同时生成[ERROR]和REPORT日志,而成功执行仅生成REPORT日志。基于这个特性,可以筛选出仅对应成功执行的RequestId:

fields @message
| filter @message like "REPORT" or @message like "[ERROR]"
| filter ispresent(@requestId)
| stats count(*) as requestIdLogCount by @requestId
| filter requestIdLogCount == 1

优化需求

能否通过子查询等方式整合上述逻辑,直接利用筛选出的成功RequestId过滤日志,生成仅包含成功执行的统计报告?类似以下硬编码RequestId的示例效果:

fields @message
| filter @type = "REPORT"
| filter @requestId in ["a458412a-95e7-5023-842e-1dbe8f58a876", "082db28d-8f43-5f83-9a72-ee1985861515"]
| stats min(@duration) as MinimumTime,
        max(@duration) as MaximumTime

内容的提问来源于stack exchange,提问作者Sazzadur Rahman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 05:17:28