我想获得我的 Lambda 函数的一些 X 射线跟踪。通过阅读文档,我似乎可以在配置中启用主动跟踪,它应该自动记录它而无需任何新代码部署正确吗?
只有当我想要自定义子段时,我才会在 lambda 函数中显式地进行一些 X-Ray 调用?
我想获得我的 Lambda 函数的一些 X 射线跟踪。通过阅读文档,我似乎可以在配置中启用主动跟踪,它应该自动记录它而无需任何新代码部署正确吗?
只有当我想要自定义子段时,我才会在 lambda 函数中显式地进行一些 X-Ray 调用?
是的,您是对的,但需要注意以下几点:
当您按照上述步骤进行操作时,控制台会提示该函数在其下执行的 IAM 策略将被修改。如果您在创建函数时使用控制台创建的角色,则可能需要手动修改该角色。创建一个新策略并将其附加到角色,创建内联策略附件,或使用这样的 SID 编辑角色的现有策略(这是一个示例 - 在 IAM 策略中使用 glob 时要非常小心):
{
"Sid": "AllowXRay",
"Resource": "*",
"Action": [
"xray:PutTraceSegments",
"xray:PutTelemetryRecords"
],
"Effect": "Allow"
}
完成这些步骤后,我可以在 XRay 控制台中看到我的函数的完整痕迹。