amazon-web-services - 在 Lambda 函数上设置持续时间警报的最佳值
问题描述
我有一个可以做一些工作的 lambda 函数。我想在 lambda 的持续时间内在其上创建一个 cloudwatch 警报,即这个 lambda 运行需要多少时间?
我尝试对警报使用以下值,但我遇到了这个警报的问题,可能是由于冷启动问题。以下是我设置的值:
Statistic : Average
ComparisonOperator : "GreaterThanThreshold"
Threshold: 1000
EvaluationPeriods: 5
Period: 60
Unit: Milliseconds
我面临的问题是,由于冷启动问题,它一直处于警报状态,可能是因为它不经常被调用。
为 lambda 设置的最佳值是多少?其他人如何在 lambda 上设置警报?
另外,如果 lambda 没有被调用多少时间,那么它会被关闭并且会出现冷启动问题?
解决方案
使用蓝色斗牛士。阈值是动态的,考虑到每日变化和冷启动,并使用机器学习来检测真正的异常。它对 Lambda 与之交互的所有服务(Dynamo、SQS、API 网关、RDS、Kinesis、S3 等)执行相同的操作。
免责声明:我是蓝色斗牛士的创始人
如果您希望自己使用 Cloudwatch 进行操作,我建议您在一段时间后超时并返回错误。然后,您可以使用该Errors
指标来判断给定时间段内失败的次数。这不是一个完美的解决方案,但它可以正确地忽略冷启动。我们写了一篇关于如何使用 CloudWatch 监控 AWS Lambda的博客,其中包括错误、限制和更多需要注意的指标。
推荐阅读
- javascript - 查找字符串中存在的数组元素
- java - Spring boot:下载带有特殊字符的csv文件数据
- ansible - 选择attr中的Ansible jinja2转义点键
- java - 由于在 GKE 上运行 Java 的权限,Stackdriver Profiler 无法创建配置文件
- docker - 无法在 Docker 中更新 Debian 容器
- react-native - 结合 react-navigation 和 redux 时缺少组件道具
- ajax - 无需重新计算公共部分的多个订阅
- laravel - 从 belongsToMany 关系中排除用户
- java - JavaFX TextField 在焦点上将填充更改为 0
- php - 如何转换为laravel?