diff --git a/.vscode/settings.json b/.vscode/settings.json index 988937c0..db92ccf3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1,4 @@ { - "python.pythonPath": "/usr/local/bin/python3" -} \ No newline at end of file + "python.pythonPath": "/usr/local/bin/python3", + "python.formatting.provider": "black" +} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2b5d1419..0d2537ed 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,21 +1,23 @@ # Contributing -We love pull requests. For new features, consider opening an issue to discuss the idea first. When you're ready to open a pull requset, here's a quick guide. +We love pull requests. For new features, consider opening an issue to discuss the idea first. When you're ready to open a pull request, here's a quick guide. 1. Fork, clone and branch off `main`: - ```bash - git clone git@github.com:/datadog-lambda-python.git - git checkout -b - ``` -1. Make your changes. Ensure your code is compatible with both Python 2.7 and 3.X. + ```bash + git clone git@github.com:/datadog-lambda-python.git + git checkout -b + ``` +1. Make your changes. Ensure your code is compatible with both Python 2.7 and 3.X. 1. Test your Lambda function against the locally modified version of Datadog Lambda library. - * The easiest approach is to create a soft link of the `datadog_lambda` folder in your project's root. Note, this only overrides the `datadog_lambda` module, and you still need to install the `datadog_lambda` package or the Lambda layer to have the required dependencies. + + - The easiest approach is to create a soft link of the `datadog_lambda` folder in your project's root. Note, this only overrides the `datadog_lambda` module, and you still need to install the `datadog_lambda` package or the Lambda layer to have the required dependencies. ```bash ln -s /PATH/TO/datadog-lambda-python/datadog_lambda /PATH/TO/MY/PROJECT ``` - * Another option is to install the `datadog_lambda` module from the local folder. E.g., add `/PATH/TO/datadog-lambda-python/` to your `requirements.txt`. This approach only work in a Linux environment, because the dependency `ddtrace` utilizes the native C extension. - * You can also build and publish a Lambda layer to your own AWS account and use it for testing. + + - Another option is to install the `datadog_lambda` module from the local folder. E.g., add `/PATH/TO/datadog-lambda-python/` to your `requirements.txt`. This approach only work in a Linux environment, because the dependency `ddtrace` utilizes the native C extension. + - You can also build and publish a Lambda layer to your own AWS account and use it for testing. ```bash # Build layers using docker @@ -27,9 +29,9 @@ We love pull requests. For new features, consider opening an issue to discuss th ``` 1. Ensure the unit tests pass (install Docker if you haven't): - ```bash - ./scripts/run_tests.sh - ``` + ```bash + ./scripts/run_tests.sh + ``` 1. Run the integration tests against your own AWS account and Datadog org (or ask a Datadog member to run): ```bash BUILD_LAYERS=true DD_API_KEY= ./scripts/run_integration_tests.sh diff --git a/README.md b/README.md index 9aa64589..bdd40443 100644 --- a/README.md +++ b/README.md @@ -6,9 +6,9 @@ [![Slack](https://chat.datadoghq.com/badge.svg?bg=632CA6)](https://chat.datadoghq.com/) [![License](https://img.shields.io/badge/license-Apache--2.0-blue)](https://github.com/DataDog/datadog-lambda-python/blob/main/LICENSE) -Datadog Lambda Library for Python (2.7, 3.6, 3.7, 3.8, and 3.9) enables enhanced Lambda metrics, distributed tracing, and custom metric submission from AWS Lambda functions. +Datadog Lambda Library for Python (2.7, 3.6, 3.7, 3.8, and 3.9) enables enhanced Lambda metrics, distributed tracing, and custom metric submission from AWS Lambda functions. -**IMPORTANT NOTE:** AWS Lambda is expected to receive a [breaking change](https://aws.amazon.com/blogs/compute/upcoming-changes-to-the-python-sdk-in-aws-lambda/) on **December 1, 2021**. If you are using Datadog Python Lambda layer version 7 or below, please upgrade to the latest. +**IMPORTANT NOTE:** AWS Lambda is expected to receive a [breaking change](https://aws.amazon.com/blogs/compute/upcoming-changes-to-the-python-sdk-in-aws-lambda/) on **March 31, 2021**. If you are using Datadog Python Lambda layer version 7 or below, please upgrade to the latest. ## Installation @@ -24,7 +24,7 @@ Check out the instructions for [submitting custom metrics from AWS Lambda functi Once [installed](#installation), you should be able to view your function's traces in Datadog, and your function's logs should be automatically connected to the traces. -For additional details on trace collection, take a look at [collecting traces from AWS Lambda functions](https://docs.datadoghq.com/integrations/amazon_lambda/?tab=python#trace-collection). +For additional details on trace collection, take a look at [collecting traces from AWS Lambda functions](https://docs.datadoghq.com/integrations/amazon_lambda/?tab=python#trace-collection). For additional details on trace and log connection, see [connecting logs and traces](https://docs.datadoghq.com/tracing/connect_logs_and_traces/python/). diff --git a/datadog_lambda/tag_object.py b/datadog_lambda/tag_object.py new file mode 100644 index 00000000..7ca8512c --- /dev/null +++ b/datadog_lambda/tag_object.py @@ -0,0 +1,59 @@ +# Unless explicitly stated otherwise all files in this repository are licensed +# under the Apache License Version 2.0. +# This product includes software developed at Datadog (https://www.datadoghq.com/). +# Copyright 2021 Datadog, Inc. + +import json +import logging + +redactable_keys = ["authorization", "x-authorization", "password", "token"] +max_depth = 10 +logger = logging.getLogger(__name__) + + +def tag_object(span, key, obj, depth=0): + if depth >= max_depth: + return + else: + depth += 1 + if obj is None: + return span.set_tag(key, obj) + if _should_try_string(obj): + parsed = None + try: + parsed = json.loads(obj) + return tag_object(span, key, parsed, depth) + except ValueError: + redacted = _redact_val(key, obj[0:5000]) + return span.set_tag(key, redacted) + if isinstance(obj, int) or isinstance(obj, float): + return span.set_tag(key, obj) + if isinstance(obj, list): + for k, v in enumerate(obj): + formatted_key = "{}.{}".format(key, k) + tag_object(span, formatted_key, v, depth) + return + if isinstance(obj, object): + for k in obj: + v = obj.get(k) + formatted_key = "{}.{}".format(key, k) + tag_object(span, formatted_key, v, depth) + return + + +def _should_try_string(obj): + try: + if isinstance(obj, str) or isinstance(obj, unicode): + return True + except NameError: + if isinstance(obj, bytes): + return True + + return False + + +def _redact_val(k, v): + split_key = k.split(".").pop() or k + if split_key in redactable_keys: + return "redacted" + return v diff --git a/datadog_lambda/tracing.py b/datadog_lambda/tracing.py index 4f679fe1..90cf7aac 100644 --- a/datadog_lambda/tracing.py +++ b/datadog_lambda/tracing.py @@ -261,7 +261,7 @@ def extract_dd_trace_context(event, lambda_context, extractor=None): def get_dd_trace_context(): """ - Return the Datadog trace context to be propogated on the outgoing requests. + Return the Datadog trace context to be propagated on the outgoing requests. If the Lambda function is invoked by a Datadog-traced service, a Datadog trace context may already exist, and it should be used. Otherwise, use the diff --git a/datadog_lambda/wrapper.py b/datadog_lambda/wrapper.py index ff2ee582..1ba7f126 100644 --- a/datadog_lambda/wrapper.py +++ b/datadog_lambda/wrapper.py @@ -28,9 +28,13 @@ create_function_execution_span, ) from datadog_lambda.trigger import extract_trigger_tags, extract_http_status_code_tag +from datadog_lambda.tag_object import tag_object logger = logging.getLogger(__name__) +dd_capture_lambda_payload_enabled = ( + os.environ.get("DD_CAPTURE_LAMBDA_PAYLOAD", "false").lower() == "true" +) """ Usage: @@ -186,6 +190,10 @@ def _after(self, event, context): flush_extension() if self.span: + if dd_capture_lambda_payload_enabled: + tag_object(self.span, "function.request", event) + tag_object(self.span, "function.response", self.response) + if status_code: self.span.set_tag("http.status_code", status_code) self.span.finish() diff --git a/tests/integration/serverless.yml b/tests/integration/serverless.yml index c947deff..9f10622d 100644 --- a/tests/integration/serverless.yml +++ b/tests/integration/serverless.yml @@ -16,6 +16,7 @@ provider: DD_INTEGRATION_TEST: true DD_TRACE_ENABLED: true DD_API_KEY: ${env:DD_API_KEY} + DD_CAPTURE_LAMBDA_PAYLOAD: true lambdaHashingVersion: 20201221 timeout: 15 deploymentBucket: diff --git a/tests/integration/snapshots/logs/async-metrics_python27.log b/tests/integration/snapshots/logs/async-metrics_python27.log index f8565a4e..bebffe37 100644 --- a/tests/integration/snapshots/logs/async-metrics_python27.log +++ b/tests/integration/snapshots/logs/async-metrics_python27.log @@ -4,7 +4,7 @@ START RequestId: XXXX Version: $LATEST {"e": XXXX, "m": "tests.integration.count", "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "v": 21} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"resource": "integration-tests-python-XXXX-async-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_sampling_priority_v1": 1, "system.pid": XXXX, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"functionname": "integration-tests-python-XXXX-async-metrics_python27", "http.method": "GET", "runtime-id": "XXXX", "request_id": "XXXX", "function_trigger.event_source": "api-gateway", "cold_start": "true", "datadog_lambda": "X.X.X", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python27", "dd_trace": "X.X.X", "_dd.origin": "lambda", "http.status_code": "200", "resource_names": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} +{"traces": [[{"resource": "integration-tests-python-XXXX-async-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "function.request.headers.Upgrade-Insecure-Requests": 1, "system.pid": XXXX, "function.request.headers.X-Forwarded-Port": 443, "_sampling_priority_v1": 1, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"function.request.requestContext.stage": "test", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "runtime-id": "XXXX", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.resource": "/{proxy+}", "http.status_code": "200", "dd_trace": "X.X.X", "resource_names": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.httpMethod": "GET", "function.request.stageVariables.stageVarName": "stageVarValue", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.queryStringParameters.name": "me", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.accountId": "", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python27", "function.request.path": "/test/hello", "function.response.body.message": "hello, dog!", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.resourceId": "us4z18", "datadog_lambda": "X.X.X", "function.request.requestContext.identity.user": "", "function.request.requestContext.identity.apiKey": "", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.pathParameters.proxy": "hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "functionname": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source": "api-gateway", "cold_start": "true", "_dd.origin": "lambda", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.requestContext.apiId": "wt6mne2s9k", "http.method": "GET", "function.request.headers.X-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.requestContext.httpMethod": "GET", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "request_id": "XXXX", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -13,7 +13,7 @@ START RequestId: XXXX Version: $LATEST {"e": XXXX, "m": "tests.integration.count", "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "v": 21} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"resource": "integration-tests-python-XXXX-async-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_sampling_priority_v1": 1, "system.pid": XXXX, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"functionname": "integration-tests-python-XXXX-async-metrics_python27", "runtime-id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source": "sns", "cold_start": "false", "datadog_lambda": "X.X.X", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python27", "dd_trace": "X.X.X", "_dd.origin": "lambda", "request_id": "XXXX", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} +{"traces": [[{"resource": "integration-tests-python-XXXX-async-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "system.pid": XXXX, "_sampling_priority_v1": 1, "function.response.statusCode": 200, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"runtime-id": "XXXX", "function.response.body.request_id": "None", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "dd_trace": "X.X.X", "resource_names": "integration-tests-python-XXXX-async-metrics_python27", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python27", "function.response.body.message": "hello, dog!", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "datadog_lambda": "X.X.X", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Message": "Hello from SNS!", "functionname": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source": "sns", "cold_start": "false", "_dd.origin": "lambda", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.EventSource": "aws:sns", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "request_id": "XXXX", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -22,6 +22,6 @@ START RequestId: XXXX Version: $LATEST {"e": XXXX, "m": "tests.integration.count", "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "v": 21} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"resource": "integration-tests-python-XXXX-async-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_sampling_priority_v1": 1, "system.pid": XXXX}, "parent_id": "XXXX", "meta": {"functionname": "integration-tests-python-XXXX-async-metrics_python27", "runtime-id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source": "sqs", "cold_start": "false", "datadog_lambda": "X.X.X", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python27", "dd_trace": "X.X.X", "_dd.origin": "lambda", "request_id": "XXXX", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} +{"traces": [[{"resource": "integration-tests-python-XXXX-async-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.response.statusCode": 200, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "system.pid": XXXX, "_sampling_priority_v1": 1, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777}, "parent_id": "XXXX", "meta": {"function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "runtime-id": "XXXX", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "dd_trace": "X.X.X", "function.request.Records.0.awsRegion": "us-east-2", "resource_names": "integration-tests-python-XXXX-async-metrics_python27", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.body": "Test message.", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python27", "function.response.body.message": "hello, dog!", "datadog_lambda": "X.X.X", "function.response.body.request_id": "None", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "functionname": "integration-tests-python-XXXX-async-metrics_python27", "function.request.Records.1.awsRegion": "us-east-2", "function_trigger.event_source": "sqs", "cold_start": "false", "_dd.origin": "lambda", "function.request.Records.1.body": "Test message.", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "request_id": "XXXX", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/async-metrics_python36.log b/tests/integration/snapshots/logs/async-metrics_python36.log index d001dbb7..423dfe9c 100644 --- a/tests/integration/snapshots/logs/async-metrics_python36.log +++ b/tests/integration/snapshots/logs/async-metrics_python36.log @@ -4,7 +4,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python36", "functionname": "integration-tests-python-XXXX-async-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python36", "functionname": "integration-tests-python-XXXX-async-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -13,7 +13,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python36", "functionname": "integration-tests-python-XXXX-async-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python36", "functionname": "integration-tests-python-XXXX-async-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -22,6 +22,6 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python36", "functionname": "integration-tests-python-XXXX-async-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python36", "functionname": "integration-tests-python-XXXX-async-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/async-metrics_python37.log b/tests/integration/snapshots/logs/async-metrics_python37.log index cdabaee3..80880511 100644 --- a/tests/integration/snapshots/logs/async-metrics_python37.log +++ b/tests/integration/snapshots/logs/async-metrics_python37.log @@ -4,7 +4,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python37", "functionname": "integration-tests-python-XXXX-async-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python37", "functionname": "integration-tests-python-XXXX-async-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -13,7 +13,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python37", "functionname": "integration-tests-python-XXXX-async-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python37", "functionname": "integration-tests-python-XXXX-async-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -22,6 +22,6 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python37", "functionname": "integration-tests-python-XXXX-async-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python37", "functionname": "integration-tests-python-XXXX-async-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/async-metrics_python38.log b/tests/integration/snapshots/logs/async-metrics_python38.log index 7ae5fee8..2359182d 100644 --- a/tests/integration/snapshots/logs/async-metrics_python38.log +++ b/tests/integration/snapshots/logs/async-metrics_python38.log @@ -4,7 +4,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python38", "functionname": "integration-tests-python-XXXX-async-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python38", "functionname": "integration-tests-python-XXXX-async-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -13,7 +13,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python38", "functionname": "integration-tests-python-XXXX-async-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python38", "functionname": "integration-tests-python-XXXX-async-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -22,6 +22,6 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python38", "functionname": "integration-tests-python-XXXX-async-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python38", "functionname": "integration-tests-python-XXXX-async-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/async-metrics_python39.log b/tests/integration/snapshots/logs/async-metrics_python39.log index 274db5cb..9478cdce 100644 --- a/tests/integration/snapshots/logs/async-metrics_python39.log +++ b/tests/integration/snapshots/logs/async-metrics_python39.log @@ -4,7 +4,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python39", "functionname": "integration-tests-python-XXXX-async-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python39", "functionname": "integration-tests-python-XXXX-async-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -13,7 +13,7 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python39", "functionname": "integration-tests-python-XXXX-async-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python39", "functionname": "integration-tests-python-XXXX-async-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -22,6 +22,6 @@ START RequestId: XXXX Version: $LATEST {"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python39", "functionname": "integration-tests-python-XXXX-async-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-async-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-async-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-async-metrics_python39", "functionname": "integration-tests-python-XXXX-async-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python27.log b/tests/integration/snapshots/logs/sync-metrics_python27.log index 42b381c5..464bf66c 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python27.log +++ b/tests/integration/snapshots/logs/sync-metrics_python27.log @@ -3,7 +3,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "metric": "hello.dog", "interval": 10, "host": null, "points": [[XXXX, [1.0]]], "device": null, "type": "distribution"}, {"tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "metric": "tests.integration.count", "interval": 10, "host": null, "points": [[XXXX, [21.0]]], "device": null, "type": "distribution"}]} -{"traces": [[{"resource": "integration-tests-python-XXXX-sync-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_sampling_priority_v1": 1, "system.pid": XXXX, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"functionname": "integration-tests-python-XXXX-sync-metrics_python27", "http.method": "GET", "runtime-id": "XXXX", "request_id": "XXXX", "function_trigger.event_source": "api-gateway", "cold_start": "true", "datadog_lambda": "X.X.X", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python27", "dd_trace": "X.X.X", "_dd.origin": "lambda", "http.status_code": "200", "resource_names": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "202", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "_dd.origin": "lambda", "http.method": "POST"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} +{"traces": [[{"resource": "integration-tests-python-XXXX-sync-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "function.request.headers.Upgrade-Insecure-Requests": 1, "system.pid": XXXX, "function.request.headers.X-Forwarded-Port": 443, "_sampling_priority_v1": 1, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"function.request.requestContext.stage": "test", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "runtime-id": "XXXX", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.resource": "/{proxy+}", "http.status_code": "200", "dd_trace": "X.X.X", "resource_names": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.httpMethod": "GET", "function.request.stageVariables.stageVarName": "stageVarValue", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.queryStringParameters.name": "me", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.accountId": "", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python27", "function.request.path": "/test/hello", "function.response.body.message": "hello, dog!", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.resourceId": "us4z18", "datadog_lambda": "X.X.X", "function.request.requestContext.identity.user": "", "function.request.requestContext.identity.apiKey": "", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.pathParameters.proxy": "hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "functionname": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source": "api-gateway", "cold_start": "true", "_dd.origin": "lambda", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.requestContext.apiId": "wt6mne2s9k", "http.method": "GET", "function.request.headers.X-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.requestContext.httpMethod": "GET", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "request_id": "XXXX", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "202", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "_dd.origin": "lambda", "http.method": "POST"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -11,7 +11,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "metric": "hello.dog", "interval": 10, "host": null, "points": [[XXXX, [1.0]]], "device": null, "type": "distribution"}, {"tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "metric": "tests.integration.count", "interval": 10, "host": null, "points": [[XXXX, [21.0]]], "device": null, "type": "distribution"}]} -{"traces": [[{"resource": "integration-tests-python-XXXX-sync-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_sampling_priority_v1": 1, "system.pid": XXXX, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"functionname": "integration-tests-python-XXXX-sync-metrics_python27", "runtime-id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source": "sns", "cold_start": "false", "datadog_lambda": "X.X.X", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python27", "dd_trace": "X.X.X", "_dd.origin": "lambda", "request_id": "XXXX", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "202", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "_dd.origin": "lambda", "http.method": "POST"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} +{"traces": [[{"resource": "integration-tests-python-XXXX-sync-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "system.pid": XXXX, "_sampling_priority_v1": 1, "function.response.statusCode": 200, "_dd.agent_psr": 1.0}, "parent_id": "XXXX", "meta": {"runtime-id": "XXXX", "function.response.body.request_id": "None", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "dd_trace": "X.X.X", "resource_names": "integration-tests-python-XXXX-sync-metrics_python27", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python27", "function.response.body.message": "hello, dog!", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "datadog_lambda": "X.X.X", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Message": "Hello from SNS!", "functionname": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source": "sns", "cold_start": "false", "_dd.origin": "lambda", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.EventSource": "aws:sns", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "request_id": "XXXX", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "202", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "_dd.origin": "lambda", "http.method": "POST"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -19,6 +19,6 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "metric": "hello.dog", "interval": 10, "host": null, "points": [[XXXX, [1.0]]], "device": null, "type": "distribution"}, {"tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python27_X.X.X"], "metric": "tests.integration.count", "interval": 10, "host": null, "points": [[XXXX, [21.0]]], "device": null, "type": "distribution"}]} -{"traces": [[{"resource": "integration-tests-python-XXXX-sync-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_sampling_priority_v1": 1, "system.pid": XXXX}, "parent_id": "XXXX", "meta": {"functionname": "integration-tests-python-XXXX-sync-metrics_python27", "runtime-id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source": "sqs", "cold_start": "false", "datadog_lambda": "X.X.X", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python27", "dd_trace": "X.X.X", "_dd.origin": "lambda", "request_id": "XXXX", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "202", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "_dd.origin": "lambda", "http.method": "POST"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} +{"traces": [[{"resource": "integration-tests-python-XXXX-sync-metrics_python27", "name": "aws.lambda", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.response.statusCode": 200, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "system.pid": XXXX, "_sampling_priority_v1": 1, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777}, "parent_id": "XXXX", "meta": {"function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "runtime-id": "XXXX", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "dd_trace": "X.X.X", "function.request.Records.0.awsRegion": "us-east-2", "resource_names": "integration-tests-python-XXXX-sync-metrics_python27", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.body": "Test message.", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python27", "function.response.body.message": "hello, dog!", "datadog_lambda": "X.X.X", "function.response.body.request_id": "None", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "functionname": "integration-tests-python-XXXX-sync-metrics_python27", "function.request.Records.1.awsRegion": "us-east-2", "function_trigger.event_source": "sqs", "cold_start": "false", "_dd.origin": "lambda", "function.request.Records.1.body": "Test message.", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "request_id": "XXXX", "function_version": "$LATEST"}, "error": 0, "duration": XXXX, "type": "serverless", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "200", "http.url": "https://httpstat.us/200/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "400", "http.url": "https://httpstat.us/400/", "_dd.origin": "lambda", "http.method": "GET"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}, {"resource": "requests.request", "name": "requests.request", "service": "aws.lambda", "start": XXXX, "trace_id": "XXXX", "metrics": {"_dd.measured": 1}, "parent_id": "XXXX", "meta": {"http.status_code": "202", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "_dd.origin": "lambda", "http.method": "POST"}, "error": 0, "duration": XXXX, "type": "http", "span_id": "XXXX"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python36.log b/tests/integration/snapshots/logs/sync-metrics_python36.log index 1edb1dcd..6ce824ee 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python36.log +++ b/tests/integration/snapshots/logs/sync-metrics_python36.log @@ -3,7 +3,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python36", "functionname": "integration-tests-python-XXXX-sync-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python36", "functionname": "integration-tests-python-XXXX-sync-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -11,7 +11,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python36", "functionname": "integration-tests-python-XXXX-sync-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python36", "functionname": "integration-tests-python-XXXX-sync-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -19,6 +19,6 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python36", "functionname": "integration-tests-python-XXXX-sync-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python36", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python36", "functionname": "integration-tests-python-XXXX-sync-metrics_python36", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python37.log b/tests/integration/snapshots/logs/sync-metrics_python37.log index fccb5c93..39906139 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python37.log +++ b/tests/integration/snapshots/logs/sync-metrics_python37.log @@ -3,7 +3,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python37", "functionname": "integration-tests-python-XXXX-sync-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python37", "functionname": "integration-tests-python-XXXX-sync-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -11,7 +11,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python37", "functionname": "integration-tests-python-XXXX-sync-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python37", "functionname": "integration-tests-python-XXXX-sync-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -19,6 +19,6 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python37", "functionname": "integration-tests-python-XXXX-sync-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python37", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python37", "functionname": "integration-tests-python-XXXX-sync-metrics_python37", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python38.log b/tests/integration/snapshots/logs/sync-metrics_python38.log index 18e3b013..83bce86e 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python38.log +++ b/tests/integration/snapshots/logs/sync-metrics_python38.log @@ -3,7 +3,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python38", "functionname": "integration-tests-python-XXXX-sync-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python38", "functionname": "integration-tests-python-XXXX-sync-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -11,7 +11,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python38", "functionname": "integration-tests-python-XXXX-sync-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python38", "functionname": "integration-tests-python-XXXX-sync-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -19,6 +19,6 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python38", "functionname": "integration-tests-python-XXXX-sync-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python38", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python38", "functionname": "integration-tests-python-XXXX-sync-metrics_python38", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python39.log b/tests/integration/snapshots/logs/sync-metrics_python39.log index fdd7820d..4f186d3b 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python39.log +++ b/tests/integration/snapshots/logs/sync-metrics_python39.log @@ -3,7 +3,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python39", "functionname": "integration-tests-python-XXXX-sync-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "true", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python39", "functionname": "integration-tests-python-XXXX-sync-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "api-gateway", "function_trigger.event_source_arn": "arn:aws:apigateway:sa-east-1::/restapis/wt6mne2s9k/stages/test", "http.method": "GET", "function.request.path": "/test/hello", "function.request.headers.Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", "function.request.headers.Accept-Encoding": "gzip, deflate, lzma, sdch, br", "function.request.headers.Accept-Language": "en-US,en;q=0.8", "function.request.headers.CloudFront-Forwarded-Proto": "https", "function.request.headers.CloudFront-Is-Desktop-Viewer": "True", "function.request.headers.CloudFront-Is-Mobile-Viewer": "False", "function.request.headers.CloudFront-Is-SmartTV-Viewer": "False", "function.request.headers.CloudFront-Is-Tablet-Viewer": "False", "function.request.headers.CloudFront-Viewer-Country": "US", "function.request.headers.Host": "wt6mne2s9k.execute-api.us-west-2.amazonaws.com", "function.request.headers.User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.headers.Via": "1.1 fb7cca60f0ecd82ce07790c9c5eef16c.cloudfront.net (CloudFront)", "function.request.headers.X-Amz-Cf-Id": "nBsWBOrSHMgnaROZJK1wGCZ9PcRcSpq_oSXZNQwQ10OTZL4cimZo3g==", "function.request.headers.X-Forwarded-For": "192.168.100.1, 192.168.1.1", "function.request.headers.X-Forwarded-Proto": "https", "function.request.pathParameters.proxy": "hello", "function.request.requestContext.resourceId": "us4z18", "function.request.requestContext.stage": "test", "function.request.requestContext.requestId": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "function.request.requestContext.identity.cognitoIdentityPoolId": "", "function.request.requestContext.identity.accountId": "", "function.request.requestContext.identity.cognitoIdentityId": "", "function.request.requestContext.identity.caller": "", "function.request.requestContext.identity.apiKey": "", "function.request.requestContext.identity.sourceIp": "192.168.100.1", "function.request.requestContext.identity.cognitoAuthenticationType": "", "function.request.requestContext.identity.cognitoAuthenticationProvider": "", "function.request.requestContext.identity.userArn": "", "function.request.requestContext.identity.userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36 OPR/39.0.2256.48", "function.request.requestContext.identity.user": "", "function.request.requestContext.resourcePath": "/{proxy+}", "function.request.requestContext.httpMethod": "GET", "function.request.requestContext.apiId": "wt6mne2s9k", "function.request.resource": "/{proxy+}", "function.request.httpMethod": "GET", "function.request.queryStringParameters.name": "me", "function.request.stageVariables.stageVarName": "stageVarValue", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "41b45ea3-70b5-11e6-b7bd-69b5aaebc7d9", "http.status_code": "200"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.headers.Upgrade-Insecure-Requests": 1, "function.request.headers.X-Forwarded-Port": 443, "function.request.requestContext.accountId": 123456789012, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB Init Duration: XXXX ms START RequestId: XXXX Version: $LATEST @@ -11,7 +11,7 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python39", "functionname": "integration-tests-python-XXXX-sync-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python39", "functionname": "integration-tests-python-XXXX-sync-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sns", "function_trigger.event_source_arn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.EventSource": "aws:sns", "function.request.Records.0.Sns.Timestamp": "2019-01-02T12:45:07.000Z", "function.request.Records.0.Sns.Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "function.request.Records.0.Sns.SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "function.request.Records.0.Sns.MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "function.request.Records.0.Sns.Message": "Hello from SNS!", "function.request.Records.0.Sns.MessageAttributes.Test.Type": "String", "function.request.Records.0.Sns.MessageAttributes.Test.Value": "TestString", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Type": "Binary", "function.request.Records.0.Sns.MessageAttributes.TestBinary.Value": "TestBinary", "function.request.Records.0.Sns.Type": "Notification", "function.request.Records.0.Sns.UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "function.request.Records.0.Sns.TopicArn": "arn:aws:sns:us-east-2:123456789012:sns-lambda", "function.request.Records.0.Sns.Subject": "TestInvoke", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "95df01b4-ee98-5cb9-9903-4c221d41eb5e"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": XXXX, "function.request.Records.0.EventVersion": 1.0, "function.request.Records.0.Sns.SignatureVersion": 1, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB START RequestId: XXXX Version: $LATEST @@ -19,6 +19,6 @@ START RequestId: XXXX Version: $LATEST HTTP GET https://httpstat.us/200/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP GET https://httpstat.us/400/ Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "User-Agent:python-requests/X.X.X", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX Headers: ["Accept-Encoding:gzip, deflate", "Accept:*/*", "Connection:keep-alive", "Content-Encoding:deflate", "Content-Length:XXXX", "Content-Type:application/json", "User-Agent:datadogpy/0.41.0 (python XX; os linux; arch x86_64)", "x-datadog-parent-id:XXXX", "x-datadog-sampling-priority:1", "x-datadog-trace-id:XXXX"] Data: {"series": [{"metric": "hello.dog", "points": [[XXXX, [1.0]]], "type": "distribution", "host": null, "device": null, "tags": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"], "interval": 10}, {"metric": "tests.integration.count", "points": [[XXXX, [21.0]]], "type": "distribution", "host": null, "device": null, "tags": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"], "interval": 10}]} -{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python39", "functionname": "integration-tests-python-XXXX-sync-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue"}, "metrics": {"system.pid": XXXX, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "integration-tests-python-XXXX-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "cold_start": "false", "function_arn": "arn:aws:lambda:sa-east-1:601427279990:function:integration-tests-python-XXXX-sync-metrics_python39", "function_version": "$LATEST", "request_id": "XXXX", "resource_names": "integration-tests-python-XXXX-sync-metrics_python39", "functionname": "integration-tests-python-XXXX-sync-metrics_python39", "datadog_lambda": "X.X.X", "dd_trace": "X.X.X", "function_trigger.event_source": "sqs", "function_trigger.event_source_arn": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.messageId": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.request.Records.0.receiptHandle": "AQEBwJnKyrHigUMZj6rYigCgxlaS3SLy0a...", "function.request.Records.0.body": "Test message.", "function.request.Records.0.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.0.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.0.eventSource": "aws:sqs", "function.request.Records.0.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.0.awsRegion": "us-east-2", "function.request.Records.1.messageId": "2e1424d4-f796-459a-8184-9c92662be6da", "function.request.Records.1.receiptHandle": "AQEBzWwaftRI0KuVm4tP+/7q1rGgNqicHq...", "function.request.Records.1.body": "Test message.", "function.request.Records.1.attributes.SenderId": "AIDAIENQZJOLO23YVJ4VO", "function.request.Records.1.md5OfBody": "e4e68fb7bd0e697a0ae8f1bb342846b3", "function.request.Records.1.eventSource": "aws:sqs", "function.request.Records.1.eventSourceARN": "arn:aws:sqs:us-east-2:123456789012:my-queue", "function.request.Records.1.awsRegion": "us-east-2", "function.response.body.message": "hello, dog!", "function.response.body.request_id": "None", "function.response.body.event_record_ids.0": "059f36b4-87a3-44ab-83d2-661975830a7d", "function.response.body.event_record_ids.1": "2e1424d4-f796-459a-8184-9c92662be6da"}, "metrics": {"system.pid": XXXX, "function.request.Records.0.attributes.ApproximateReceiveCount": 1, "function.request.Records.0.attributes.SentTimestamp": 1545082649183, "function.request.Records.0.attributes.ApproximateFirstReceiveTimestamp": 1545082649185, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-trace-id": 666, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-parent-id": 777, "function.request.Records.0.messageAttributes._datadog.stringValue.x-datadog-sampling-priority": 1, "function.request.Records.1.attributes.ApproximateReceiveCount": 1, "function.request.Records.1.attributes.SentTimestamp": 1545082650636, "function.request.Records.1.attributes.ApproximateFirstReceiveTimestamp": 1545082650649, "function.response.statusCode": 200, "_sampling_priority_v1": 1}, "type": "serverless"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/200/", "http.status_code": "200"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}, {"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": XXXX, "duration": XXXX, "meta": {"_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} END RequestId: XXXX REPORT RequestId: XXXX Duration: XXXX ms Billed Duration: XXXX ms Memory Size: 1024 MB Max Memory Used: XXXX MB diff --git a/tests/test_tag_object.py b/tests/test_tag_object.py new file mode 100644 index 00000000..0936f0c5 --- /dev/null +++ b/tests/test_tag_object.py @@ -0,0 +1,84 @@ +import unittest + +try: + from unittest.mock import MagicMock, patch, call +except ImportError: + from mock import MagicMock, patch, call +from datadog_lambda.tag_object import tag_object + + +class TestTagObject(unittest.TestCase): + def test_tag_object(self): + payload = { + "hello": "world", + "anotherThing": {"foo": "bar", "blah": None, "nice": True}, + "vals": [{"thingOne": 1}, {"thingTwo": 2}], + } + spanMock = MagicMock() + tag_object(spanMock, "function.request", payload) + spanMock.set_tag.assert_has_calls( + [ + call("function.request.vals.0.thingOne", 1), + call("function.request.vals.1.thingTwo", 2), + call("function.request.hello", "world"), + call("function.request.anotherThing.blah", None), + call("function.request.anotherThing.foo", "bar"), + call("function.request.anotherThing.nice", True), + ], + True, + ) + self.assertEqual(1, 1) + + def test_redacted_tag_object(self): + payload = { + "authorization": "world", + "anotherThing": {"password": "bar", "blah": None, "nice": True}, + "vals": [{"thingOne": 1}, {"thingTwo": 2}], + } + spanMock = MagicMock() + tag_object(spanMock, "function.request", payload) + spanMock.set_tag.assert_has_calls( + [ + call("function.request.vals.0.thingOne", 1), + call("function.request.vals.1.thingTwo", 2), + call("function.request.authorization", "redacted"), + call("function.request.anotherThing.blah", None), + call("function.request.anotherThing.password", "redacted"), + call("function.request.anotherThing.nice", True), + ], + True, + ) + + def test_json_tag_object(self): + payload = { + "token": "world", + "jsonString": '{"stringifyThisJson":[{"here":"is","an":"object","number":1}]}', + } + spanMock = MagicMock() + tag_object(spanMock, "function.request", payload) + spanMock.set_tag.assert_has_calls( + [ + call("function.request.token", "redacted"), + call("function.request.jsonString.stringifyThisJson.0.here", "is"), + call("function.request.jsonString.stringifyThisJson.0.an", "object"), + call("function.request.jsonString.stringifyThisJson.0.number", 1), + ], + True, + ) + + def test_unicode_tag_object(self): + payload = { + "token": "world", + u"jsonString": u'{"stringifyThisJson":[{"here":"is","an":"object","number":1}]}', + } + spanMock = MagicMock() + tag_object(spanMock, "function.request", payload) + spanMock.set_tag.assert_has_calls( + [ + call("function.request.token", "redacted"), + call("function.request.jsonString.stringifyThisJson.0.here", "is"), + call("function.request.jsonString.stringifyThisJson.0.an", "object"), + call("function.request.jsonString.stringifyThisJson.0.number", 1), + ], + True, + )