Skip to content

2.7.0: TypeError: string indices must be integers #283

@michaelbrewer

Description

@michaelbrewer

Originally logged here: aws-powertools/powertools-lambda-python#383

Caused by : #275

Proof of concept code using Powertools and Xray 2.7.0

import json
from aws_lambda_powertools import Tracer
import boto3

tracer = Tracer()

@tracer.capture_method
def my_method():
    sts = boto3.client("sts")
    sts.get_caller_identity()
    raise RuntimeError("Error happens!")

@tracer.capture_lambda_handler
def lambda_handler(event, context):
    my_method()
    return {"statusCode": 200, "body": json.dumps({"hello": "world"})}

logs:

[ERROR]	2021-04-05T05:33:00.732Z	8a4d5027-4faa-4f4f-8d08-df63b7ea72ed	Failed to serialize ## lambda_handler
Traceback (most recent call last):
  File "/var/task/aws_lambda_powertools/tracing/tracer.py", line 313, in decorate
    response = lambda_handler(event, context, **kwargs)
  File "/var/task/app.py", line 17, in lambda_handler
    my_method()
  File "/var/task/aws_lambda_powertools/tracing/tracer.py", line 612, in decorate
    response = method(*args, **kwargs)
  File "/var/task/app.py", line 12, in my_method
    raise RuntimeError("Error happens!")
RuntimeError: Error happens!

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/var/task/aws_xray_sdk/core/models/entity.py", line 263, in serialize
    return json.dumps(self.to_dict(), default=str)
  File "/var/task/aws_xray_sdk/core/models/subsegment.py", line 157, in to_dict
    subsegment_dict = super(Subsegment, self).to_dict()
  File "/var/task/aws_xray_sdk/core/models/entity.py", line 284, in to_dict
    entity_dict[key]['working_directory'] = self.cause['working_directory']
TypeError: string indices must be integers

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions