【问题标题】:AWS API to get the lambda invocation history用于获取 lambda 调用历史记录的 AWS API
【发布时间】:2020-12-11 08:37:12
【问题描述】:

我可以在 AWS 控制台 UI 中看到最近对 lambda 的调用,但我想知道是否有任何 API 可以获取特定的 lambda(按 arn 或名称)调用历史记录。我能想到的唯一方法是通过 cloudwatch 日志进行识别。对此有何建议?

【问题讨论】:

标签: amazon-web-services amazon-cloudwatch amazon-cloudwatchlogs


【解决方案1】:

AWS CloudTrail 记录对服务的 API 调用。

Amazon CloudWatch Logs 保留每次 Lambda 调用的日志,包括错误消息。

但是,您可能会认为 Amazon CloudWatch 指标 是最有用的。对于每个函数,它都会记录调用、错误、持续时间、限制等。您可以在管理控制台中查看这些指标,或通过 API 调用从 CloudWatch 检索它们。它们与 AWS Lambda 控制台中函数“监控”选项卡中显示的指标相同。

【讨论】:

  • 您好约翰,感谢您的回复!如果我错了,请纠正我,但它显示了这些项目的指标而不是执行 ID,对吗?我正在尝试获取 lambdas 的执行 ID。
  • Amazon CloudWatch Metrics 归结为 Function Name,因此您可以查看一段时间内调用的总和。但是,如果您正在查找函数运行的确切时间,则 CloudWatch Logs 将显示每次执行(包括执行 ID)。 CloudTrail 还应该包含每个执行的条目,但可能不包含执行 ID,并且会有很多您需要忽略的非 Lambda 条目,因此使用 CloudWatch Logs 会更好。
【解决方案2】:

我认为故障排除工具是一个很好的起点。有一些第 3 方工具可以让您查看调用历史记录,只要深入了解每个调用(事件是什么、拨出电话等)。

Disclosour:我在 Lumigo 工作,我们正在这样做,但也让您在更广泛的“事务”视图中考虑每个调用(来自此 lambda 的触发服务)。这是适合您的问题的示例屏幕截图:

【讨论】:

  • 您可以提及这些数据是如何产生的,而不是仅仅宣传您的服务。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-07
  • 2022-08-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多