diff --git a/elasticapm/contrib/serverless/aws.py b/elasticapm/contrib/serverless/aws.py index 8fc14cbc4..4bd2ae2f1 100644 --- a/elasticapm/contrib/serverless/aws.py +++ b/elasticapm/contrib/serverless/aws.py @@ -261,8 +261,7 @@ def set_metadata_and_context(self, coldstart: bool) -> None: elif self.source == "elb": elb_target_group_arn = self.event["requestContext"]["elb"]["targetGroupArn"] faas["trigger"]["type"] = "http" - faas["trigger"]["request_id"] = self.event["headers"]["x-amzn-trace-id"] - service_context["origin"] = {"name": elb_target_group_arn.split(":")[5]} + service_context["origin"] = {"name": elb_target_group_arn.split(":")[5].split("/")[1]} service_context["origin"]["id"] = elb_target_group_arn cloud_context["origin"] = {} cloud_context["origin"]["service"] = {"name": "elb"} diff --git a/tests/contrib/serverless/aws_tests.py b/tests/contrib/serverless/aws_tests.py index 55331c9a0..15264cad7 100644 --- a/tests/contrib/serverless/aws_tests.py +++ b/tests/contrib/serverless/aws_tests.py @@ -265,6 +265,7 @@ def test_func(event, context): assert transaction["context"]["request"]["method"] == "POST" assert transaction["context"]["request"]["headers"] assert transaction["context"]["response"]["status_code"] == 200 + assert transaction["context"]["service"]["origin"]["name"] == "lambda-279XGJDqGZ5rsrHC2Fjr" def test_capture_serverless_s3(event_s3, context, elasticapm_client):