我想获取 Lambda 函数的一些 X 射线痕迹。通过阅读文档,我似乎可以在配置中启用主动跟踪,并且它应该自动记录它,而无需正确部署任何新代码?
只有当我想要自定义子段时,我才会在 lambda 函数中显式进行一些 X-Ray 调用吗?
最佳答案
是的,您是对的,但需要注意以下几点:
- 您需要选中 Lambda 控制台中的启用主动跟踪复选框。从控制台中的函数 > 配置选项卡 > 高级下拉列表/部分 > 选中启用主动跟踪复选框 > 保存 .
当您按照上述步骤操作时,控制台将建议修改函数执行所依据的 IAM 策略。如果您在创建函数时使用控制台创建的角色,则可能需要手动修改该角色。创建新策略并将其附加到角色,创建内联策略附件,或者使用如下所示的 SID 编辑角色的现有策略(这是一个示例 - 在 IAM 策略中谨慎使用 glob):
{ "Sid": "AllowXRay", "Resource": "*", "Action": [ "xray:PutTraceSegments", "xray:PutTelemetryRecords" ], "Effect": "Allow" }
按照这些步骤操作后,我能够在 XRay 控制台中看到我的函数的完整痕迹。
关于aws-lambda - 在 AWS Lambda 中启用 X-Ray 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43728674/