.NET6 AWS Lambda调用AmazonSecretsManagerClient方法挂起超时问题
重新部署整个AWS CDK Stack后问题已消失。 我会保持问题开放,若后续问题复现将及时更新内容,特别感谢**@Chetan**提供的耐心帮助。
.NET6 Lambda调用Secrets Manager时程序挂起超时
我将一个.NET6 Web API托管为AWS Lambda服务,通过Amazon.SecretsManager包中的AmazonSecretsManagerClient客户端从AWS Secret Manager获取密钥数据,该功能此前一直正常运行,直到两天前突发故障。为重新测试连接情况,我在Program.cs中添加并运行如下测试代码,但日志中仅打印了第一条Console.WriteLine的输出信息,之后应用直接挂起,直到达到Lambda超时阈值被终止。
Console.WriteLine("Calling secret manager request - started"); var smClient = new AmazonSecretsManagerClient(); var descriptResponse = await smClient.DescribeSecretAsync(new DescribeSecretRequest { SecretId = "secretName" }); Console.WriteLine($"got ARN - {descriptResponse.ARN}"); Console.WriteLine("Calling secret manager request - end");
已完成排查操作
- 为上述测试代码添加try-catch异常捕获块,未捕获到任何抛出的异常;
- 检查Lambda绑定的IAM角色已配置对应权限(见截图1);同时使用相同角色、相同代码创建全新Lambda函数可正常运行,证明IAM角色权限配置正确;
- 尝试调用
ListSecretsAsync()等AmazonSecretsManagerClient的其他方法,均得到相同结果:无返回、程序挂起; - 将UAT环境可正常运行的主分支版本部署到开发实例,仍出现相同问题。
欢迎提供进一步的调试方向。
截图1
内容的提问来源于stack exchange,提问作者Wjun
相关产品推荐
相关产品推荐

