Open
Description
If I understand correctly, Entity.cause
is turned into a string from a dictionary, and raised a TypeError
when calling self.cause['exceptions'] = exceptions
.
Relevant traceback:
File \\"/var/task/aws_xray_sdk/core/models/subsegment.py\\", line 31, in __call__\
meta_processor=None,\
File \\"/var/task/aws_xray_sdk/core/recorder.py\\", line 423, in record_subsegment\
subsegment.add_exception(exception, stack)\
File \\"/var/task/aws_xray_sdk/core/models/entity.py\\", line 228, in add_exception\
self.cause[\'exceptions\'] = exceptions\
TypeError: \'str\' object does not support item assignment", "OrderId": "test8f2f5c5dbf774df6b900870bc50b2f7d", "LegacyOrderId": 20168, "Tenant": "uk", "requestId": "7cc85af8-a6a2-454f-8d63-b88339ada756", "XRayTraceId": "1-5ccbed5a-dff39c00f83f3190a93aa1f8"}
Full traceback:
b'_longitude=-3.2135957 (Caused by NewConnectionError(\'<urllib3.connection.HTTPConnection object at 0x7fc086466dd8>: Failed to establish a new connection: [Errno -2] Name or service not known\'))\
\
The above exception was the direct cause of the following exception:\
\
Traceback (most recent call last):\
File \\"/var/task/aws_xray_sdk/core/recorder.py\\", line 401, in record_subsegment\
return_value = wrapped(*args, **kwargs)\
File \\"/var/task/lastmile/lambdas/predict/client.py\\", line 153, in predict_restaurant_working_time\
response = self._call(url, params)\
File \\"/var/task/lastmile/lambdas/predict/client.py\\", line 75, in _call\
raise ConnectError(repr(exc)) from exc\
lastmile.lambdas.predict.client.ConnectError: ConnectionError(MaxRetryError(\\"HTTPConnectionPool(host=\'lastmilepredict-qa28.cogpart.je-labs.com\', port=80): Max retries exceeded with url: /uk/restaurant/1/delivery-eta?restaurant_latitude=50.746794&restaurant_longitude=-1.91133&customer_latitude=54.1120821&customer_longitude=-3.2135957 (Caused by NewConnectionError(\'<urllib3.connection.HTTPConnection object at 0x7fc086466dd8>: Failed to establish a new connection: [Errno -2] Name or service not known\'))\\"))\
\
During handling of the above exception, another exception occurred:\
\
Traceback (most recent call last):\
File \\"/var/task/lastmile/lambdas/lambdastar.py\\", line 175, in __call__\
result = self.injector.run([self.handler], state=state)\
File \\"/var/task/apistar/server/injector.py\\", line 106, in run\
state[output_name] = func(**func_kwargs)\
File \\"/var/task/lastmile/handlers/rdsacceptedorder/handler.py\\", line 196, in rds_accepted_order\
customer_location=order.private_customer_location,\
File \\"/var/task/aws_xray_sdk/core/models/subsegment.py\\", line 31, in __call__\
meta_processor=None,\
File \\"/var/task/aws_xray_sdk/core/recorder.py\\", line 423, in record_subsegment\
subsegment.add_exception(exception, stack)\
File \\"/var/task/aws_xray_sdk/core/models/entity.py\\", line 228, in add_exception\
self.cause[\'exceptions\'] = exceptions\
TypeError: \'str\' object does not support item assignment", "OrderId": "test8f2f5c5dbf774df6b900870bc50b2f7d", "LegacyOrderId": 20168, "Tenant": "uk", "requestId": "7cc85af8-a6a2-454f-8d63-b88339ada756", "XRayTraceId": "1-5ccbed5a-dff39c00f83f3190a93aa1f8"}
[ERROR] TypeError: \'str\' object does not support item assignment\rTraceback (most recent call last):\r\xc2\xa0\xc2\xa0File "/var/task/lastmile/common/serialisation.py", line 152, in _wrapper\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0response_dict = func(*args, **kwargs)\r\xc2\xa0\xc2\xa0File "/var/task/aws_xray_sdk/core/models/subsegment.py", line 31, in __call__\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0meta_processor=None,\r\xc2\xa0\xc2\xa0File "/var/task/aws_xray_sdk/core/recorder.py", line 401, in record_subsegment\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0return_value = wrapped(*args, **kwargs)\r\xc2\xa0\xc2\xa0File "/var/task/lastmile/lambdas/lambdastar.py", line 189, in __call__\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0return self.injector.run([exception_handler], state=state)\r\xc2\xa0\xc2\xa0File "/var/task/apistar/server/injector.py", line 106, in run\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0state[output_name] = func(**func_kwargs)\r\xc2\xa0\xc2\xa0File "/var/task/lastmile/lambdas/lambdastar.py", line 212, in default_exception_handler\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0raise exc\r\xc2\xa0\xc2\xa0File "/var/task/lastmile/lambdas/lambdastar.py", line 175, in __call__\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0result = self.injector.run([self.handler], state=state)\r\xc2\xa0\xc2\xa0File "/var/task/apistar/server/injector.py", line 106, in run\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0state[output_name] = func(**func_kwargs)\r\xc2\xa0\xc2\xa0File "/var/task/lastmile/handlers/rdsacceptedorder/handler.py", line 196, in rds_accepted_order\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0customer_location=order.private_customer_location,\r\xc2\xa0\xc2\xa0File "/var/task/aws_xray_sdk/core/models/subsegment.py", line 31, in __call__\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0meta_processor=None,\r\xc2\xa0\xc2\xa0File "/var/task/aws_xray_sdk/core/recorder.py", line 423, in record_subsegment\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0subsegment.add_exception(exception, stack)\r\xc2\xa0\xc2\xa0File "/var/task/aws_xray_sdk/core/models/entity.py", line 228, in add_exception\r\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0self.cause[\'exceptions\'] = exceptions
END RequestId: 7cc85af8-a6a2-454f-8d63-b88339ada756
REPORT RequestId: 7cc85af8-a6a2-454f-8d63-b88339ada756\tDuration: 1394.24 ms\tBilled Duration: 1400 ms \tMemory Size: 256 MB\tMax Memory Used: 70 MB\t
'
versions of xray tried: 2.2.0, 2.4.0