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

如何通过CloudWatch查询失败后重试成功的Lambda函数日志?

如何查询Step Functions中Lambda失败后重试成功的日志

前提:确认日志配置

  • 确保Lambda函数已开启CloudWatch日志记录,同时Step Functions状态机也开启日志(在状态机配置中指定CloudWatch日志组,日志级别设为ALL)
  • 确认Lambda和Step Functions的日志组存在,且无权限访问问题

方法1:通过Step Functions日志关联Lambda重试记录

Step Functions日志会完整记录每次Lambda调用的状态(失败/成功)及重试轨迹,可先定位重试成功的执行记录,再关联Lambda日志:

  1. 打开CloudWatch控制台,找到你的Step Functions日志组
  2. 用以下查询语句筛选先失败后成功的Lambda调用(替换占位符为你的状态机名称、Lambda任务名称):
    fields @timestamp, @message
    | filter @message like /"LambdaFunctionSucceeded"/ and @message like /"previousAttempts": \[.*"status": "FAILED".*\]/
    | filter @message like /"stateName": "你的Lambda任务名称"/
    | sort @timestamp desc
    
  3. 从查询结果中提取executionArn和lambdaRequestId(日志消息的input或output字段内)
  4. 打开对应Lambda的日志组,用提取到的lambdaRequestId查询该次成功调用的详细日志:
    fields @timestamp, @message
    | filter @requestId = "提取到的lambdaRequestId"
    | sort @timestamp asc
    

方法2:直接在Lambda日志组筛选重试成功记录

Lambda每次调用(含重试)都有独立requestId,可通过同一请求ID下的状态变化筛选:

  1. 打开Lambda对应的CloudWatch日志组
  2. 使用以下查询语句(替换错误关键词为你的Lambda实际错误标识,比如Function error或具体异常信息):
    # 标记所有失败/成功调用
    fields @timestamp, @requestId, 
      case when @message like /Function error/ then "FAILED" else "SUCCEEDED" end as @status
    | filter @status in ["FAILED", "SUCCEEDED"]
    # 按请求ID分组,筛选同时存在失败和成功的记录
    | stats collect_set(@status) as statuses by @requestId
    | filter statuses contains "FAILED" and statuses contains "SUCCEEDED"
    # 关联原始日志详情
    | join sourceTable on @requestId
    | sort @timestamp asc
    

方法3:通过Step Functions执行历史快速定位

  1. 打开Step Functions控制台,进入目标状态机的某条执行记录
  2. 在执行历史中找到带重试的Lambda任务,展开所有步骤,可看到多次调用条目(失败条目+最终成功条目)
  3. 点击成功条目,在详情中复制Lambda Request ID,直接到CloudWatch Lambda日志组中查询该ID对应的日志

常见排查点

  • 若看不到成功日志,检查Lambda日志保留时间,确认日志未被自动删除
  • 验证Step Functions状态机定义中,Lambda任务是否正确配置了Retry规则
  • 检查IAM权限:确保CloudWatch能读取Step Functions和Lambda的日志,你的账号拥有日志查看权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 08:45:38