diff --git a/datadog_lambda/tracing.py b/datadog_lambda/tracing.py index 90cf7aac..6eb4a1c9 100644 --- a/datadog_lambda/tracing.py +++ b/datadog_lambda/tracing.py @@ -13,6 +13,7 @@ TraceContextSource, XrayDaemon, ) +from datadog_lambda.trigger import parse_event_source, EventTypes from datadog_lambda.xray import ( send_segment, parse_xray_header, @@ -377,6 +378,54 @@ def set_dd_trace_py_root(trace_context_source, merge_xray_traces): ) +def create_inferred_span(event, context, make_inferred_spans): + event_source = parse_event_source(event) + try: + if event_source.equals(EventTypes.LAMBDA_FUNCTION_URL): + logger.debug("Function URL event detected. Inferring a span") + return create_inferred_span_from_lambda_function_url_event(event, context) + if not make_inferred_spans: + return None + # the rest of the inferred span logic goes here + except Exception as e: + logger.debug( + "Unable to infer span. Detected type: {}. Reason: {}", + event_source.to_string(), + e, + ) + return None + logger.debug("Unable to infer a span: unknown event type") + return None + + +def create_inferred_span_from_lambda_function_url_event(event, context): + domain = event["requestContext"]["domainName"] + path = event["rawPath"] + tags = { + "operation_name": "aws.lambda.url", + "http.url": domain + path, + "endpoint": path, + "http.method": event["requestContext"]["http"]["method"], + "resource_names": domain + path, + "request_id": context.aws_request_id, + "service": "aws.lambda", + } + request_time_epoch = event["requestContext"]["timeEpoch"] + args = { + "resource": domain + path, + "span_type": "http", + } + tracer.set_tags( + {"_dd.origin": "lambda"} + ) # function urls don't count as lambda_inferred, + # because they're in the same service as the inferring lambda function + span = tracer.trace("aws.lambda.url", **args) + if span: + span.set_tags(tags) + span.start = request_time_epoch / 1000 + return span + + def create_function_execution_span( context, function_name, @@ -384,6 +433,7 @@ def create_function_execution_span( trace_context_source, merge_xray_traces, trigger_tags, + parent_span=None, ): tags = {} if context: @@ -415,4 +465,6 @@ def create_function_execution_span( span = tracer.trace("aws.lambda", **args) if span: span.set_tags(tags) + if parent_span: + span.parent_id = parent_span.span_id return span diff --git a/datadog_lambda/trigger.py b/datadog_lambda/trigger.py index 7271f239..d269c993 100644 --- a/datadog_lambda/trigger.py +++ b/datadog_lambda/trigger.py @@ -7,15 +7,94 @@ import gzip import json from io import BytesIO, BufferedReader +from enum import Enum +from typing import Any, Optional -EVENT_SOURCES = [ - "aws:dynamodb", - "aws:kinesis", - "aws:s3", - "aws:sns", - "aws:sqs", -] +class _stringTypedEnum(Enum): + """ + _stringTypedEnum provides a type-hinted convenience function for getting the string value of + an enum. + """ + + def get_string(self) -> str: + return self.value + + +class EventTypes(_stringTypedEnum): + """ + EventTypes is an enum of Lambda event types we care about. + """ + + UNKNOWN = "unknown" + API_GATEWAY = "api-gateway" + ALB = "application-load-balancer" + APPSYNC = "appsync" + CLOUDWATCH_EVENTS = "cloudwatch-events" + CLOUDWATCH_LOGS = "cloudwatch-logs" + CLOUDFRONT = "cloudfront" + DYNAMODB = "dynamodb" + KINESIS = "kinesis" + LAMBDA_FUNCTION_URL = "lambda-function-url" + S3 = "s3" + SNS = "sns" + SQS = "sqs" + + +class EventSubtypes(_stringTypedEnum): + """ + EventSubtypes is an enum of Lambda event subtypes. + Currently, API Gateway events subtypes are supported, + e.g. HTTP-API and Websocket events vs vanilla API-Gateway events. + """ + + NONE = "none" + API_GATEWAY = "api-gateway" # regular API Gateway + HTTP_API = "http-api" + WEBSOCKET = "websocket" + + +class _EventSource: + """ + _EventSource holds an event's type and subtype. + """ + + def __init__( + self, + event_type: EventTypes, + subtype: EventSubtypes = EventSubtypes.NONE, + ): + if event_type is None: + self.event_type = EventTypes.UNKNOWN + else: + self.event_type = event_type + self.subtype = subtype + + def to_string(self) -> Optional[str]: + """ + to_string returns the string representation of an _EventSource. + Since to_string was added to support trigger tagging, + the event's subtype will never be included in the string. + """ + if self.event_type == EventTypes.UNKNOWN: + return None + return self.event_type.get_string() + + def equals( + self, event_type: EventTypes, subtype: EventSubtypes = EventSubtypes.NONE + ) -> bool: + """ + equals provides syntactic sugar to determine whether this _EventSource has a given type + and subtype. + Unknown events will never equal other events. + """ + if self.event_type == EventTypes.UNKNOWN: + return False + if self.event_type != event_type: + return False + if self.subtype != subtype: + return False + return True def get_aws_partition_by_region(region): @@ -32,46 +111,77 @@ def get_first_record(event): return records[0] -def parse_event_source(event): - """Determines the source of the trigger event - - Possible Returns: - api-gateway | application-load-balancer | cloudwatch-logs | - cloudwatch-events | cloudfront | dynamodb | kinesis | s3 | sns | sqs - """ +def parse_event_source(event: dict) -> _EventSource: + """Determines the source of the trigger event""" if type(event) is not dict: - return - event_source = event.get("eventSource") or event.get("EventSource") + return _EventSource(EventTypes.UNKNOWN) + event_source = _EventSource(EventTypes.UNKNOWN) request_context = event.get("requestContext") - if request_context and request_context.get("stage"): - event_source = "api-gateway" + if request_context and "stage" in request_context: # Some kind of API Gateway + if "domainName" in request_context and detect_lambda_function_url_domain( + request_context.get("domainName") + ): + return _EventSource(EventTypes.LAMBDA_FUNCTION_URL) + if "httpMethod" in event: + event_source = _EventSource(EventTypes.API_GATEWAY) + event_source.subtype = EventSubtypes.API_GATEWAY + return event_source + if "routeKey" in event and event.get("routeKey") is not None: + event_source = _EventSource(EventTypes.API_GATEWAY) + event_source.subtype = EventSubtypes.HTTP_API + return event_source + if "routeKey" in event and event.get("routeKey") is None: + event_source = _EventSource(EventTypes.LAMBDA_FUNCTION_URL) + return event_source + if "requestContext" in event and "messageDirection" in event["requestContext"]: + event_source = _EventSource(EventTypes.API_GATEWAY) + event_source.subtype = EventSubtypes.WEBSOCKET + return event_source if request_context and request_context.get("elb"): - event_source = "application-load-balancer" + event_source = _EventSource(EventTypes.ALB) if event.get("awslogs"): - event_source = "cloudwatch-logs" + event_source = _EventSource(EventTypes.CLOUDWATCH_LOGS) event_detail = event.get("detail") cw_event_categories = event_detail and event_detail.get("EventCategories") if event.get("source") == "aws.events" or cw_event_categories: - event_source = "cloudwatch-events" + event_source = _EventSource(EventTypes.CLOUDWATCH_EVENTS) event_record = get_first_record(event) if event_record: - event_source = event_record.get("eventSource") or event_record.get( - "EventSource" + aws_event_source = event_record.get( + "eventSource", event_record.get("EventSource") ) + + if aws_event_source == "aws:dynamodb": + event_source = _EventSource(EventTypes.DYNAMODB) + if aws_event_source == "aws:kinesis": + event_source = _EventSource(EventTypes.KINESIS) + if aws_event_source == "aws:s3": + event_source = _EventSource(EventTypes.S3) + if aws_event_source == "aws:sns": + event_source = _EventSource(EventTypes.SNS) + if aws_event_source == "aws:sqs": + event_source = _EventSource(EventTypes.SQS) + if event_record.get("cf"): - event_source = "cloudfront" + event_source = _EventSource(EventTypes.CLOUDFRONT) - if event_source in EVENT_SOURCES: - event_source = event_source.replace("aws:", "") return event_source -def parse_event_source_arn(source, event, context): +def detect_lambda_function_url_domain(domain: str) -> bool: + # e.g. "etsn5fibjr.lambda-url.eu-south-1.amazonaws.com" + domain_parts = domain.split(".") + if len(domain_parts) < 2: + return False + return domain_parts[1] == "lambda-url" + + +def parse_event_source_arn(source: _EventSource, event: dict, context: Any) -> str: """ Parses the trigger event for an available ARN. If an ARN field is not provided in the event we stitch it together. @@ -83,34 +193,46 @@ def parse_event_source_arn(source, event, context): event_record = get_first_record(event) # e.g. arn:aws:s3:::lambda-xyz123-abc890 - if source == "s3": + if source.event_type == EventTypes.S3: return event_record.get("s3")["bucket"]["arn"] # e.g. arn:aws:sns:us-east-1:123456789012:sns-lambda - if source == "sns": + if source.event_type == EventTypes.SNS: return event_record.get("Sns")["TopicArn"] # e.g. arn:aws:cloudfront::123456789012:distribution/ABC123XYZ - if source == "cloudfront": + if source.event_type == EventTypes.CLOUDFRONT: distribution_id = event_record.get("cf")["config"]["distributionId"] return "arn:{}:cloudfront::{}:distribution/{}".format( aws_arn, account_id, distribution_id ) + # e.g. arn:aws:lambda:::url:: + if source.equals(EventTypes.LAMBDA_FUNCTION_URL): + function_name = "" + if len(split_function_arn) >= 7: + function_name = split_function_arn[6] + function_arn = f"arn:aws:lambda:{region}:{account_id}:url:{function_name}" + function_qualifier = "" + if len(split_function_arn) >= 8: + function_qualifier = split_function_arn[7] + function_arn = function_arn + f":{function_qualifier}" + return function_arn + # e.g. arn:aws:apigateway:us-east-1::/restapis/xyz123/stages/default - if source == "api-gateway": + if source.event_type == EventTypes.API_GATEWAY: request_context = event.get("requestContext") return "arn:{}:apigateway:{}::/restapis/{}/stages/{}".format( aws_arn, region, request_context["apiId"], request_context["stage"] ) # e.g. arn:aws:elasticloadbalancing:us-east-1:123456789012:targetgroup/lambda-xyz/123 - if source == "application-load-balancer": + if source.event_type == EventTypes.ALB: request_context = event.get("requestContext") return request_context.get("elb")["targetGroupArn"] # e.g. arn:aws:logs:us-west-1:123456789012:log-group:/my-log-group-xyz - if source == "cloudwatch-logs": + if source.event_type == EventTypes.CLOUDWATCH_LOGS: with gzip.GzipFile( fileobj=BytesIO(base64.b64decode(event["awslogs"]["data"])) ) as decompress_stream: @@ -122,11 +244,11 @@ def parse_event_source_arn(source, event, context): ) # e.g. arn:aws:events:us-east-1:123456789012:rule/my-schedule - if source == "cloudwatch-events" and event.get("resources"): + if source.event_type == EventTypes.CLOUDWATCH_EVENTS and event.get("resources"): return event.get("resources")[0] -def get_event_source_arn(source, event, context): +def get_event_source_arn(source: _EventSource, event: dict, context: Any) -> str: event_source_arn = event.get("eventSourceARN") or event.get("eventSourceArn") event_record = get_first_record(event) @@ -173,20 +295,24 @@ def extract_http_tags(event): return http_tags -def extract_trigger_tags(event, context): +def extract_trigger_tags(event: dict, context: Any) -> dict: """ Parses the trigger event object to get tags to be added to the span metadata """ trigger_tags = {} event_source = parse_event_source(event) - if event_source: - trigger_tags["function_trigger.event_source"] = event_source + if event_source.event_type != EventTypes.UNKNOWN: + trigger_tags["function_trigger.event_source"] = event_source.to_string() event_source_arn = get_event_source_arn(event_source, event, context) if event_source_arn: trigger_tags["function_trigger.event_source_arn"] = event_source_arn - if event_source in ["api-gateway", "application-load-balancer"]: + if event_source.event_type in [ + EventTypes.API_GATEWAY, + EventTypes.ALB, + EventTypes.LAMBDA_FUNCTION_URL, + ]: trigger_tags.update(extract_http_tags(event)) return trigger_tags @@ -194,15 +320,24 @@ def extract_trigger_tags(event, context): def extract_http_status_code_tag(trigger_tags, response): """ - If the Lambda was triggered by API Gateway or ALB add the returned status code + If the Lambda was triggered by Lambda Function URL, + API Gateway or ALB add the returned status code as a tag to the function execution span. """ - is_http_trigger = trigger_tags and ( - trigger_tags.get("function_trigger.event_source") == "api-gateway" - or trigger_tags.get("function_trigger.event_source") - == "application-load-balancer" - ) - if not is_http_trigger: + if trigger_tags is None: + return + str_event_source = trigger_tags.get("function_trigger.event_source") + # it would be cleaner if each event type was a constant object that + # knew some properties about itself like this. + str_http_triggers = [ + et.value + for et in [ + EventTypes.API_GATEWAY, + EventTypes.LAMBDA_FUNCTION_URL, + EventTypes.ALB, + ] + ] + if str_event_source not in str_http_triggers: return status_code = "200" diff --git a/datadog_lambda/wrapper.py b/datadog_lambda/wrapper.py index 1ba7f126..436e4da0 100644 --- a/datadog_lambda/wrapper.py +++ b/datadog_lambda/wrapper.py @@ -26,6 +26,7 @@ set_correlation_ids, set_dd_trace_py_root, create_function_execution_span, + create_inferred_span, ) from datadog_lambda.trigger import extract_trigger_tags, extract_http_status_code_tag from datadog_lambda.tag_object import tag_object @@ -100,6 +101,10 @@ def __init__(self, func): self.extractor_env = os.environ.get("DD_TRACE_EXTRACTOR", None) self.trace_extractor = None self.span = None + self.inferred_span = None + self.make_inferred_span = ( + os.environ.get("DD_INFERRED_SPANS", "false").lower() == "true" + ) self.response = None if self.extractor_env: @@ -157,6 +162,9 @@ def _before(self, event, context): if dd_tracing_enabled: set_dd_trace_py_root(trace_context_source, self.merge_xray_traces) + self.inferred_span = create_inferred_span( + event, context, self.make_inferred_span + ) self.span = create_function_execution_span( context, self.function_name, @@ -164,6 +172,7 @@ def _before(self, event, context): trace_context_source, self.merge_xray_traces, self.trigger_tags, + parent_span=self.inferred_span, ) else: set_correlation_ids() @@ -184,11 +193,6 @@ def _after(self, event, context): self.trigger_tags, XraySubsegment.LAMBDA_FUNCTION_TAGS_KEY ) - if not self.flush_to_log or should_use_extension: - flush_stats() - if should_use_extension: - flush_extension() - if self.span: if dd_capture_lambda_payload_enabled: tag_object(self.span, "function.request", event) @@ -197,6 +201,15 @@ def _after(self, event, context): if status_code: self.span.set_tag("http.status_code", status_code) self.span.finish() + if self.inferred_span: + if status_code: + self.inferred_span.set_tag("http.status_code", status_code) + self.inferred_span.finish() + + if not self.flush_to_log or should_use_extension: + flush_stats() + if should_use_extension: + flush_extension() logger.debug("datadog_lambda_wrapper _after() done") except Exception: traceback.print_exc() diff --git a/scripts/run_integration_tests.sh b/scripts/run_integration_tests.sh index 33208903..867dc7ba 100755 --- a/scripts/run_integration_tests.sh +++ b/scripts/run_integration_tests.sh @@ -185,7 +185,7 @@ for handler_name in "${LAMBDA_HANDLERS[@]}"; do # Remove blank lines sed '/^$/d' | # Normalize Lambda runtime REPORT logs - sed -E 's/(RequestId|TraceId|SegmentId|Duration|Memory Used|"e"): [a-z0-9\.\-]+/\1: XXXX/g' | + sed -E 's/(RequestId|TraceId|SegmentId|Duration|Memory Used|"e"): [a-z0-9\.\-]+/\1: 1234/g' | # Normalize HTTP headers sed -E "s/(x-datadog-parent-id:|x-datadog-trace-id:|Content-Length:)[0-9]+/\1XXXX/g" | # Remove Account ID @@ -207,12 +207,15 @@ for handler_name in "${LAMBDA_HANDLERS[@]}"; do sed -E "s/(\"span_id\"\: \")[A-Z0-9\.\-]+/\1XXXX/g" | sed -E "s/(\"parent_id\"\: \")[A-Z0-9\.\-]+/\1XXXX/g" | sed -E "s/(\"request_id\"\: \")[a-z0-9\.\-]+/\1XXXX/g" | - sed -E "s/(\"duration\"\: )[0-9\.\-]+/\1XXXX/g" | - sed -E "s/(\"start\"\: )[0-9\.\-]+/\1XXXX/g" | - sed -E "s/(\"system\.pid\"\: )[0-9\.\-]+/\1XXXX/g" | + sed -E "s/(\"duration\"\: )[0-9\.\-]+/\11234/g" | + sed -E "s/(\"start\"\: )[0-9\.\-]+/\11234/g" | + sed -E "s/(\"system\.pid\"\: )[0-9\.\-]+/\11234/g" | sed -E "s/(\"runtime-id\"\: \")[a-z0-9\.\-]+/\1XXXX/g" | sed -E "s/(\"datadog_lambda\"\: \")([0-9]+\.[0-9]+\.[0-9])/\1X.X.X/g" | - sed -E "s/(\"dd_trace\"\: \")([0-9]+\.[0-9]+\.[0-9])/\1X.X.X/g" + sed -E "s/(\"dd_trace\"\: \")([0-9]+\.[0-9]+\.[0-9])/\1X.X.X/g" | + # Strip out main started and init completed + sed "/main started at epoch/d" | + sed "/init complete at epoch/d" ) if [ ! -f $function_snapshot_path ]; then @@ -227,7 +230,16 @@ for handler_name in "${LAMBDA_HANDLERS[@]}"; do # Compare new logs to snapshots diff_output=$(echo "$logs" | diff - $function_snapshot_path) if [ $? -eq 1 ]; then - echo "Failed: Mismatch found between new $function_name logs (first) and snapshot (second):" + echo + echo + echo + echo "Failed: Mismatch found between new $function_name logs (first) and snapshot (second)" + if [[ $OSTYPE == darwin* ]]; then + # probably running on a developer laptop; ok to write temp files + tempfile=$(mktemp) + echo "$logs" > $tempfile + echo "Log output written to ${tempfile}" + fi echo "$diff_output" mismatch_found=true else @@ -241,7 +253,7 @@ set -e if [ "$mismatch_found" = true ]; then echo "FAILURE: A mismatch between new data and a snapshot was found and printed above." echo "If the change is expected, generate new snapshots by running 'UPDATE_SNAPSHOTS=true DD_API_KEY=XXXX ./scripts/run_integration_tests.sh'" - echo "Make sure https://httpstat.us/400/ is UP for `http_error` test case" + echo "Make sure https://httpstat.us/400/ is UP for \`http_error\` test case" exit 1 fi diff --git a/tests/Dockerfile b/tests/Dockerfile index 948de1bc..04773161 100644 --- a/tests/Dockerfile +++ b/tests/Dockerfile @@ -7,9 +7,11 @@ RUN mkdir -p /test/datadog_lambda WORKDIR /test # Copy minimal subset of files to make pip install succeed and be cached (next docker builds will be way faster) + COPY pyproject.toml . COPY poetry.lock . COPY README.md . +COPY pyproject.toml . COPY datadog_lambda/__init__.py datadog_lambda/__init__.py RUN pip install .[dev] diff --git a/tests/event_samples/function-url.json b/tests/event_samples/function-url.json new file mode 100644 index 00000000..1647b89d --- /dev/null +++ b/tests/event_samples/function-url.json @@ -0,0 +1,52 @@ +{ + "headers": { + "sec-fetch-mode": "navigate", + "sec-fetch-site": "cross-site", + "accept-language": "en-US,en;q=0.9", + "x-forwarded-proto": "https", + "x-forwarded-port": "443", + "x-forwarded-for": "38.122.226.210", + "sec-fetch-user": "?1", + "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", + "sec-ch-ua": "\"Google Chrome\";v=\"95\", \"Chromium\";v=\"95\", \";Not A Brand\";v=\"99\"", + "sec-ch-ua-mobile": "?0", + "x-amzn-trace-id": "Root=1-618d2fba-6fa79b875c7f711019712ec6", + "sec-ch-ua-platform": "\"macOS\"", + "host": "lcrxfod2yg.lambda-url.eu-south-1.amazonaws.com", + "upgrade-insecure-requests": "1", + "cache-control": "max-age=0", + "accept-encoding": "gzip, deflate, br", + "sec-fetch-dest": "document", + "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36" + }, + "pathParameters": null, + "isBase64Encoded": false, + "rawPath": "/", + "routeKey": "$default", + "requestContext": { + "accountId": "601427279990", + "timeEpoch": 1636642746342, + "routeKey": null, + "stage": null, + "authorizer": null, + "domainPrefix": "lcrxfod2yg", + "requestId": "fc71e49f-17f5-475b-b7bb-bf4034e97d87", + "domainName": "lcrxfod2yg.lambda-url.eu-south-1.amazonaws.com", + "http": { + "path": "/", + "protocol": "HTTP/1.1", + "method": "GET", + "sourceIp": "38.122.226.210", + "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36" + }, + "time": "11/Nov/2021:14:59:06 +0000", + "apiId": "lcrxfod2yg", + "authentication": null + }, + "queryStringParameters": null, + "body": null, + "stageVariables": null, + "version": "2.0", + "rawQueryString": "", + "cookies": null +} diff --git a/tests/integration/snapshots/logs/async-metrics_python36.log b/tests/integration/snapshots/logs/async-metrics_python36.log index 423dfe9c..634c9b8d 100644 --- a/tests/integration/snapshots/logs/async-metrics_python36.log +++ b/tests/integration/snapshots/logs/async-metrics_python36.log @@ -1,27 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python36", "resource:integration-tests-python-XXXX-async-metrics_python36", "cold_start:true", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python36", "resource:integration-tests-python-XXXX-async-metrics_python36", "cold_start:true", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python36", "resource:integration-tests-python-XXXX-async-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python36", "resource:integration-tests-python-XXXX-async-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python36", "resource:integration-tests-python-XXXX-async-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python36", "resource:integration-tests-python-XXXX-async-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/async-metrics_python37.log b/tests/integration/snapshots/logs/async-metrics_python37.log index 80880511..c4744ed9 100644 --- a/tests/integration/snapshots/logs/async-metrics_python37.log +++ b/tests/integration/snapshots/logs/async-metrics_python37.log @@ -1,27 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python37", "resource:integration-tests-python-XXXX-async-metrics_python37", "cold_start:true", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python37", "resource:integration-tests-python-XXXX-async-metrics_python37", "cold_start:true", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python37", "resource:integration-tests-python-XXXX-async-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python37", "resource:integration-tests-python-XXXX-async-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python37", "resource:integration-tests-python-XXXX-async-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python37", "resource:integration-tests-python-XXXX-async-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/async-metrics_python38.log b/tests/integration/snapshots/logs/async-metrics_python38.log index 2359182d..f302fe91 100644 --- a/tests/integration/snapshots/logs/async-metrics_python38.log +++ b/tests/integration/snapshots/logs/async-metrics_python38.log @@ -1,27 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python38", "resource:integration-tests-python-XXXX-async-metrics_python38", "cold_start:true", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python38", "resource:integration-tests-python-XXXX-async-metrics_python38", "cold_start:true", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python38", "resource:integration-tests-python-XXXX-async-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python38", "resource:integration-tests-python-XXXX-async-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python38", "resource:integration-tests-python-XXXX-async-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python38", "resource:integration-tests-python-XXXX-async-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/async-metrics_python39.log b/tests/integration/snapshots/logs/async-metrics_python39.log index 9478cdce..221b750c 100644 --- a/tests/integration/snapshots/logs/async-metrics_python39.log +++ b/tests/integration/snapshots/logs/async-metrics_python39.log @@ -1,27 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python39", "resource:integration-tests-python-XXXX-async-metrics_python39", "cold_start:true", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python39", "resource:integration-tests-python-XXXX-async-metrics_python39", "cold_start:true", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python39", "resource:integration-tests-python-XXXX-async-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python39", "resource:integration-tests-python-XXXX-async-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python39", "resource:integration-tests-python-XXXX-async-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} -{"m": "hello.dog", "v": 1, "e": XXXX, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} -{"m": "tests.integration.count", "v": 21, "e": XXXX, "t": ["test:integration", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-async-metrics_python39", "resource:integration-tests-python-XXXX-async-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"m": "hello.dog", "v": 1, "e": 1234, "t": ["team:serverless", "role:hello", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"m": "tests.integration.count", "v": 21, "e": 1234, "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", "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 +{"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": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "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: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python36.log b/tests/integration/snapshots/logs/sync-metrics_python36.log index 6ce824ee..bb1a1eeb 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python36.log +++ b/tests/integration/snapshots/logs/sync-metrics_python36.log @@ -1,24 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python36", "resource:integration-tests-python-XXXX-sync-metrics_python36", "cold_start:true", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python36", "resource:integration-tests-python-XXXX-sync-metrics_python36", "cold_start:true", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "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-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python36", "resource:integration-tests-python-XXXX-sync-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python36", "resource:integration-tests-python-XXXX-sync-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "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-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python36", "resource:integration-tests-python-XXXX-sync-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python36_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python36", "resource:integration-tests-python-XXXX-sync-metrics_python36", "cold_start:false", "memorysize:1024", "runtime:python3.6", "datadog_lambda:vXX", "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-sync-metrics_python36", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python37.log b/tests/integration/snapshots/logs/sync-metrics_python37.log index 39906139..ac93362d 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python37.log +++ b/tests/integration/snapshots/logs/sync-metrics_python37.log @@ -1,24 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python37", "resource:integration-tests-python-XXXX-sync-metrics_python37", "cold_start:true", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python37", "resource:integration-tests-python-XXXX-sync-metrics_python37", "cold_start:true", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "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-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python37", "resource:integration-tests-python-XXXX-sync-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python37", "resource:integration-tests-python-XXXX-sync-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "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-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python37", "resource:integration-tests-python-XXXX-sync-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python37_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python37", "resource:integration-tests-python-XXXX-sync-metrics_python37", "cold_start:false", "memorysize:1024", "runtime:python3.7", "datadog_lambda:vXX", "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-sync-metrics_python37", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python38.log b/tests/integration/snapshots/logs/sync-metrics_python38.log index 83bce86e..2d57bdde 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python38.log +++ b/tests/integration/snapshots/logs/sync-metrics_python38.log @@ -1,24 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python38", "resource:integration-tests-python-XXXX-sync-metrics_python38", "cold_start:true", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python38", "resource:integration-tests-python-XXXX-sync-metrics_python38", "cold_start:true", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "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-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python38", "resource:integration-tests-python-XXXX-sync-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python38", "resource:integration-tests-python-XXXX-sync-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "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-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python38", "resource:integration-tests-python-XXXX-sync-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python38_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python38", "resource:integration-tests-python-XXXX-sync-metrics_python38", "cold_start:false", "memorysize:1024", "runtime:python3.8", "datadog_lambda:vXX", "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-sync-metrics_python38", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/integration/snapshots/logs/sync-metrics_python39.log b/tests/integration/snapshots/logs/sync-metrics_python39.log index 4f186d3b..1c0a4318 100644 --- a/tests/integration/snapshots/logs/sync-metrics_python39.log +++ b/tests/integration/snapshots/logs/sync-metrics_python39.log @@ -1,24 +1,27 @@ -START RequestId: XXXX Version: $LATEST -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python39", "resource:integration-tests-python-XXXX-sync-metrics_python39", "cold_start:true", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python39", "resource:integration-tests-python-XXXX-sync-metrics_python39", "cold_start:true", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "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-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python39", "resource:integration-tests-python-XXXX-sync-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB Init Duration: 1234 ms +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python39", "resource:integration-tests-python-XXXX-sync-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "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-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 -{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": XXXX, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python39", "resource:integration-tests-python-XXXX-sync-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "dd_lambda_layer:datadog-python39_X.X.X"]} +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB +START RequestId: 1234 Version: $LATEST +{"m": "aws.lambda.enhanced.invocations", "v": 1, "e": 1234, "t": ["region:sa-east-1", "account_id:XXXX", "functionname:integration-tests-python-XXXX-sync-metrics_python39", "resource:integration-tests-python-XXXX-sync-metrics_python39", "cold_start:false", "memorysize:1024", "runtime:python3.9", "datadog_lambda:vXX", "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-sync-metrics_python39", "name": "aws.lambda", "error": 0, "start": 1234, "duration": 1234, "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": 1234, "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": 1234, "duration": 1234, "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": 1234, "duration": 1234, "meta": {"_dd.origin": "lambda", "http.method": "GET", "http.url": "https://httpstat.us/400/", "http.status_code": "400"}, "metrics": {"_dd.measured": 1}, "type": "http"}]]} 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", "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 +{"traces": [[{"trace_id": "XXXX", "parent_id": "XXXX", "span_id": "XXXX", "service": "aws.lambda", "resource": "requests.request", "name": "requests.request", "error": 0, "start": 1234, "duration": 1234, "meta": {"runtime-id": "XXXX", "_dd.origin": "lambda", "http.method": "POST", "http.url": "https://api.datadoghq.com/api/v1/distribution_points", "http.status_code": "202"}, "metrics": {"_dd.agent_psr": 1.0, "system.pid": 1234, "_dd.measured": 1, "_sampling_priority_v1": 1}, "type": "http"}]]} +END RequestId: 1234 +REPORT RequestId: 1234 Duration: 1234 ms Billed Duration: 1234 ms Memory Size: 1024 MB Max Memory Used: 1234 MB diff --git a/tests/test_trigger.py b/tests/test_trigger.py index 01a98caf..54ac7ce8 100644 --- a/tests/test_trigger.py +++ b/tests/test_trigger.py @@ -1,5 +1,6 @@ import unittest import json +from typing import Optional from unittest.mock import MagicMock @@ -8,6 +9,8 @@ get_event_source_arn, extract_trigger_tags, extract_http_status_code_tag, + EventTypes, + detect_lambda_function_url_domain, ) event_samples = "tests/event_samples/" @@ -29,12 +32,26 @@ def test_event_source_api_gateway(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:apigateway:us-west-1::/restapis/1234567890/stages/prod", ) + def test_event_source_function_url(self): + event_sample_source = "function-url" + test_file = event_samples + event_sample_source + ".json" + with open(test_file, "r") as event: + event = json.load(event) + ctx = get_mock_context() + event_source = parse_event_source(event) + self.assertTrue(event_source.equals(EventTypes.LAMBDA_FUNCTION_URL)) + event_source_arn = get_event_source_arn(event_source, event, ctx) + self.assertEqual( + event_source_arn, + "arn:aws:lambda:us-west-1:123457598159:url:python-layer-test", + ) + def test_event_source_application_load_balancer(self): event_sample_source = "application-load-balancer" test_file = event_samples + event_sample_source + ".json" @@ -43,7 +60,7 @@ def test_event_source_application_load_balancer(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/lambda-xyz/123abc", @@ -57,7 +74,7 @@ def test_event_source_cloudfront(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:cloudfront::123457598159:distribution/EXAMPLE" ) @@ -70,7 +87,7 @@ def test_event_source_cloudwatch_events(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:events:us-east-1:123456789012:rule/ExampleRule" ) @@ -83,7 +100,7 @@ def test_event_source_cloudwatch_logs(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:logs:us-west-1:123457598159:log-group:testLogGroup", @@ -97,7 +114,7 @@ def test_event_source_dynamodb(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:dynamodb:us-east-1:123456789012:table/ExampleTableWithStream/stream/2015-06-27T00:48:05.899", @@ -111,7 +128,7 @@ def test_event_source_kinesis(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual(event_source_arn, "arn:aws:kinesis:EXAMPLE") def test_event_source_s3(self): @@ -122,7 +139,7 @@ def test_event_source_s3(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual(event_source_arn, "arn:aws:s3:::example-bucket") def test_event_source_sns(self): @@ -133,7 +150,7 @@ def test_event_source_sns(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual( event_source_arn, "arn:aws:sns:us-east-1:123456789012:ExampleTopic" ) @@ -146,7 +163,7 @@ def test_event_source_sqs(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, event_sample_source) + self.assertEqual(event_source.to_string(), event_sample_source) self.assertEqual(event_source_arn, "arn:aws:sqs:us-east-1:123456789012:MyQueue") def test_event_source_unsupported(self): @@ -157,9 +174,27 @@ def test_event_source_unsupported(self): ctx = get_mock_context() event_source = parse_event_source(event) event_source_arn = get_event_source_arn(event_source, event, ctx) - self.assertEqual(event_source, None) + self.assertEqual(event_source.to_string(), None) self.assertEqual(event_source_arn, None) + def test_detect_lambda_function_url_domain(self): + class test_case: + def __init__(self, domain: str, expected: bool): + self.domain = domain + self.expected = expected + + test_cases = [ + test_case("", False), + test_case(".", False), + test_case("foo.bar", False), + test_case("etsn5fibjr.lambda-url.eu-south-1.amazonaws.com", True), + test_case("etsn5fibjr.lambda-url.us-gov-west-1.amazonaws.com.cn", True), + ] + + for tc in test_cases: + result = detect_lambda_function_url_domain(tc.domain) + self.assertEqual(result, tc.expected) + class GetTriggerTags(unittest.TestCase): def test_extract_trigger_tags_api_gateway(self): @@ -346,3 +381,26 @@ def test_extract_http_status_code_tag_from_response_object(self): response.status_code = 403 status_code = extract_http_status_code_tag(trigger_tags, response) self.assertEqual(status_code, "403") + + def test_extract_http_status_code_tag_from_various_events(self): + class _TestCase: + def __init__( + self, event_type: EventTypes, expected_status_code: Optional[str] + ): + self.event_type = event_type + self.expected_status_code = expected_status_code + + test_cases = [ + _TestCase(EventTypes.LAMBDA_FUNCTION_URL, "403"), + _TestCase(EventTypes.API_GATEWAY, "403"), + _TestCase(EventTypes.ALB, "403"), + _TestCase(EventTypes.CLOUDWATCH_EVENTS, None), + _TestCase(EventTypes.APPSYNC, None), + ] + + for tc in test_cases: + trigger_tags = {"function_trigger.event_source": tc.event_type.value} + response = MagicMock(spec=["status_code"]) + response.status_code = 403 + status_code = extract_http_status_code_tag(trigger_tags, response) + self.assertEqual(status_code, tc.expected_status_code)