I have this "KeyError" in lambda with python and i cant find problem is a code python for make request in S3 code for run SNS of Compliance of Device Defender
"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```
This piece of your code:
myDeviceJobDocument_DEVICE_CERTIFICATE_EXPIRING_CHECK = os.environ['https://s3.us-east-2.amazonaws.com/'] + "/certRotateJob.json"
attempts to look up the value of an environment variable called https://s3.us-east-2.amazonaws.com/
. This doesn't look like a valid name for an environment variable, so it probably doesn't exist, which would indeed cause a KeyError
.