python - 我的 Lambda AWS KeyError 代码中有这个问题
问题描述
我在带有 python 的 lambda 中有这个“KeyError”,我找不到问题是代码 python 用于在 S3 代码中发出请求,以运行 Device Defender 的合规性 SNS
"stackTrace": [
" File \"/var/lang/lib/python3.7/imp.py\", line 234, in load_module\n return load_source(name, filename, file)\n",
" File \"/var/lang/lib/python3.7/imp.py\", line 171, in load_source\n module = _load(spec)\n",
" File \"<frozen importlib._bootstrap>\", line 696, in _load\n",
" File \"<frozen importlib._bootstrap>\", line 677, in _load_unlocked\n",
" File \"<frozen importlib._bootstrap_external>\", line 728, in exec_module\n",
" File \"<frozen importlib._bootstrap>\", line 219, in _call_with_frames_removed\n",
" File \"/var/task/lambda_function.py\", line 7, in <module>\n myDeviceJobDocument_DEVICE_CERTIFICATE_EXPIRING_CHECK = os.environ['https://s3.us-east-2.amazonaws.com/'] + \"/certRotateJob.json\"\n",
" File \"/var/lang/lib/python3.7/os.py\", line 681, in __getitem__\n raise KeyError(key) from None\n"
]
}
Function Logs
START RequestId: 0270cd0c-1e14-4cc9-8042-7f0ef5347013 Version: $LATEST
[ERROR] KeyError: 'https://s3.us-east-2.amazonaws.com/'
Traceback (most recent call last):
File "/var/lang/lib/python3.7/imp.py", line 234, in load_module
return load_source(name, filename, file)
File "/var/lang/lib/python3.7/imp.py", line 171, in load_source
module = _load(spec)
File "<frozen importlib._bootstrap>", line 696, in _load
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/var/task/lambda_function.py", line 7, in <module>
myDeviceJobDocument_DEVICE_CERTIFICATE_EXPIRING_CHECK = os.environ['https://s3.us-east-2.amazonaws.com/'] + "/certRotateJob.json"
File "/var/lang/lib/python3.7/os.py", line 681, in __getitem__
raise KeyError(key) from None
END RequestId: 0270cd0c-1e14-4cc9-8042-7f0ef5347013
REPORT RequestId: 0270cd0c-1e14-4cc9-8042-7f0ef5347013 Duration: 5199.31 ms Billed Duration: 5200 ms Memory Size: 128 MB Max Memory Used: 34 MB
Unknown application error occurred```
解决方案
您的这段代码:
myDeviceJobDocument_DEVICE_CERTIFICATE_EXPIRING_CHECK = os.environ['https://s3.us-east-2.amazonaws.com/'] + "/certRotateJob.json"
尝试查找名为 的环境变量的值https://s3.us-east-2.amazonaws.com/
。这看起来不像是环境变量的有效名称,因此它可能不存在,这确实会导致KeyError
.
推荐阅读
- vue.js - 如何在 VueJS 2.x 中将对象数组传递给子组件
- angular - 依次执行多个 HTTP 请求
- django - 在 Django Rest API 中搜索 ListAPIView
- typo3 - 在流体中获取父级/嵌套的 Flux CE
- c# - C# 应用程序中的全局鼠标钩子
- reactjs - onClick 属性和函数是否暴露在 react-select 上?
- angular - NSwag - 单独的文件生成
- java - 为什么 JLupin 存储队列无法访问任务?
- wordpress - 在“wp_list_categories”过滤器中获取类别 ID
- javascript - 从角度 6 中的自定义管道返回带有单击事件的锚标记