diff --git a/integration_tests/input_events/s3-completemultipartupload.json b/integration_tests/input_events/s3-completemultipartupload.json new file mode 100644 index 00000000..67cfb2cd --- /dev/null +++ b/integration_tests/input_events/s3-completemultipartupload.json @@ -0,0 +1,39 @@ +{ + "Records": [ + { + "eventVersion": "2.1", + "eventSource": "aws:s3", + "awsRegion": "us-east-1", + "eventTime": "2024-11-27T15:13:12.668Z", + "eventName": "ObjectCreated:CompleteMultipartUpload", + "userIdentity": { + "principalId": "AWS:ABCDEFGHIJKLMNOPQRSTU:my-upstream-function" + }, + "requestParameters": { + "sourceIPAddress": "1.234.56.78" + }, + "responseElements": { + "x-amz-request-id": "V1234567890ABCDE", + "x-amz-id-2": "ABCDEFGHI+abcdefghijklmn/1234567890+1234567890=" + }, + "s3": { + "s3SchemaVersion": "1.0", + "configurationId": "abcde-1234-5678-9012-abcde1234567890", + "bucket": { + "name": "my-bucket-name", + "ownerIdentity": { + "principalId": "ABCDEFGHIJKLMN" + }, + "arn": "arn:aws:s3:::my-bucket-name" + }, + "object": { + "key": "multipart_object.txt", + "size": 8388608, + "eTag": "09876543210987654321098765432109-2", + "versionId": "r_qtaksdfj9127489Uaksdfj", + "sequencer": "00112233445566AABB" + } + } + } + ] +} diff --git a/integration_tests/input_events/s3-copyobject.json b/integration_tests/input_events/s3-copyobject.json new file mode 100644 index 00000000..0bf75de7 --- /dev/null +++ b/integration_tests/input_events/s3-copyobject.json @@ -0,0 +1,39 @@ +{ + "Records": [ + { + "eventVersion": "2.1", + "eventSource": "aws:s3", + "awsRegion": "us-east-1", + "eventTime": "2024-11-27T15:13:08.307Z", + "eventName": "ObjectCreated:Copy", + "userIdentity": { + "principalId": "AWS:ABCDEFGHIJKLMNOPQRSTU:my-upstream-function" + }, + "requestParameters": { + "sourceIPAddress": "1.234.56.78" + }, + "responseElements": { + "x-amz-request-id": "V1234567890ABCDE", + "x-amz-id-2": "ABCDEFGHI+abcdefghijklmn/1234567890+1234567890=" + }, + "s3": { + "s3SchemaVersion": "1.0", + "configurationId": "abcde-1234-5678-9012-abcde1234567890", + "bucket": { + "name": "my-bucket-name", + "ownerIdentity": { + "principalId": "ABCDEFGHIJKLMN" + }, + "arn": "arn:aws:s3:::my-bucket-name" + }, + "object": { + "key": "copied_object.txt", + "size": 100, + "eTag": "01234567890123456789012345678901", + "versionId": "r_qtaksdfj9127489Uaksdfj", + "sequencer": "00112233445566AABB" + } + } + } + ] +} diff --git a/integration_tests/input_events/s3-putobject.json b/integration_tests/input_events/s3-putobject.json new file mode 100644 index 00000000..50fbe0e3 --- /dev/null +++ b/integration_tests/input_events/s3-putobject.json @@ -0,0 +1,39 @@ +{ + "Records": [ + { + "eventVersion": "2.1", + "eventSource": "aws:s3", + "awsRegion": "us-east-1", + "eventTime": "2024-11-27T15:13:03.715Z", + "eventName": "ObjectCreated:Put", + "userIdentity": { + "principalId": "AWS:ABCDEFGHIJKLMNOPQRSTU:my-upstream-function" + }, + "requestParameters": { + "sourceIPAddress": "1.234.56.78" + }, + "responseElements": { + "x-amz-request-id": "V1234567890ABCDE", + "x-amz-id-2": "ABCDEFGHI+abcdefghijklmn/1234567890+1234567890=" + }, + "s3": { + "s3SchemaVersion": "1.0", + "configurationId": "abcde-1234-5678-9012-abcde1234567890", + "bucket": { + "name": "my-bucket-name", + "ownerIdentity": { + "principalId": "ABCDEFGHIJKLMN" + }, + "arn": "arn:aws:s3:::my-bucket-name" + }, + "object": { + "key": "test_object.txt", + "size": 100, + "eTag": "abcdef0123456789abcdef01234567890", + "versionId": "r_qtaksdfj9127489Uaksdfj", + "sequencer": "00112233445566AABB" + } + } + } + ] +} diff --git a/integration_tests/process-input-traced.js b/integration_tests/process-input-traced.js index c6322c9c..35841e18 100644 --- a/integration_tests/process-input-traced.js +++ b/integration_tests/process-input-traced.js @@ -50,6 +50,12 @@ const getRecordIds = tracer.wrap("getRecordIds", (event) => { eventType = "SNS"; recordIds.push(record.Sns.MessageId); } + if (record.s3) { + eventType = "S3"; + const bucketName = record.s3.bucket.name; + const objectKey = record.s3.object.key; + recordIds.push(`${bucketName}/${objectKey}`); + } }); } diff --git a/integration_tests/snapshots/logs/async-metrics_node16.log b/integration_tests/snapshots/logs/async-metrics_node16.log index 061590da..8c78dfb6 100644 --- a/integration_tests/snapshots/logs/async-metrics_node16.log +++ b/integration_tests/snapshots/logs/async-metrics_node16.log @@ -1,5 +1,6 @@ START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGateway request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -8,8 +9,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node16", "resource:integration-tests-js-XXXX-async-metrics_node16", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -25,7 +26,6 @@ START ], "v": 1 } -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGateway request { "e": XXXX, "m": "serverless.integration_test.execution", @@ -38,6 +38,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGat } END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -46,14 +47,97 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node16", "resource:integration-tests-js-XXXX-async-metrics_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev16.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node16", + "resource:integration-tests-js-XXXX-async-metrics_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev16.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node16", + "resource:integration-tests-js-XXXX-async-metrics_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], "v": 1 } +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev16.XX.X" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +END Duration: XXXX ms Memory Used: XXXX MB +START XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node16", + "resource:integration-tests-js-XXXX-async-metrics_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} { "e": XXXX, "m": "serverless.integration_test.records_processed", @@ -76,7 +160,6 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re } END Duration: XXXX ms Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -85,8 +168,8 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS re "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node16", "resource:integration-tests-js-XXXX-async-metrics_node16", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -102,6 +185,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS re ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "serverless.integration_test.records_processed", diff --git a/integration_tests/snapshots/logs/async-metrics_node18.log b/integration_tests/snapshots/logs/async-metrics_node18.log index 3c476b5c..dac81c02 100644 --- a/integration_tests/snapshots/logs/async-metrics_node18.log +++ b/integration_tests/snapshots/logs/async-metrics_node18.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node18", "resource:integration-tests-js-XXXX-async-metrics_node18", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -38,6 +38,35 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGat } END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node18", + "resource:integration-tests-js-XXXX-async-metrics_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev18.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -46,14 +75,69 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node18", "resource:integration-tests-js-XXXX-async-metrics_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev18.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node18", + "resource:integration-tests-js-XXXX-async-metrics_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], "v": 1 } +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev18.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node18", + "resource:integration-tests-js-XXXX-async-metrics_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} { "e": XXXX, "m": "serverless.integration_test.records_processed", @@ -84,14 +168,13 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node18", "resource:integration-tests-js-XXXX-async-metrics_node18", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], "v": 1 } -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "serverless.integration_test.records_processed", @@ -102,6 +185,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS re ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "serverless.integration_test.records_processed", diff --git a/integration_tests/snapshots/logs/async-metrics_node20.log b/integration_tests/snapshots/logs/async-metrics_node20.log index 9da13a4d..8a3b9e67 100644 --- a/integration_tests/snapshots/logs/async-metrics_node20.log +++ b/integration_tests/snapshots/logs/async-metrics_node20.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node20", "resource:integration-tests-js-XXXX-async-metrics_node20", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -38,7 +38,63 @@ START XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGateway request END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node20", + "resource:integration-tests-js-XXXX-async-metrics_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev20.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node20", + "resource:integration-tests-js-XXXX-async-metrics_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev20.XX.X" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -47,8 +103,36 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node20", "resource:integration-tests-js-XXXX-async-metrics_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev20.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node20", + "resource:integration-tests-js-XXXX-async-metrics_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -76,6 +160,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re } END Duration: XXXX ms Memory Used: XXXX MB START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -84,14 +169,13 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-async-metrics_node20", "resource:integration-tests-js-XXXX-async-metrics_node20", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], "v": 1 } -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "serverless.integration_test.records_processed", diff --git a/integration_tests/snapshots/logs/async-metrics_node22.log b/integration_tests/snapshots/logs/async-metrics_node22.log index 0a1e5518..d3481e10 100644 --- a/integration_tests/snapshots/logs/async-metrics_node22.log +++ b/integration_tests/snapshots/logs/async-metrics_node22.log @@ -25,6 +25,7 @@ START ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGateway request { "e": XXXX, "m": "serverless.integration_test.execution", @@ -35,9 +36,64 @@ START ], "v": 1 } -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGateway request END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node22", + "resource:integration-tests-js-XXXX-async-metrics_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev22.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node22", + "resource:integration-tests-js-XXXX-async-metrics_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev22.XX.X" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -53,7 +109,35 @@ START ], "v": 1 } +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "tagkey:tagvalue", + "eventsource:undefined", + "dd_lambda_layer:datadog-nodev22.XX.X" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +END Duration: XXXX ms Memory Used: XXXX MB +START XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-async-metrics_node22", + "resource:integration-tests-js-XXXX-async-metrics_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} { "e": XXXX, "m": "serverless.integration_test.records_processed", @@ -76,6 +160,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re } END Duration: XXXX ms Memory Used: XXXX MB START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -111,7 +196,6 @@ START ], "v": 1 } -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "serverless.integration_test.execution", diff --git a/integration_tests/snapshots/logs/esm_node16.log b/integration_tests/snapshots/logs/esm_node16.log index 03030a9b..e8b27d58 100644 --- a/integration_tests/snapshots/logs/esm_node16.log +++ b/integration_tests/snapshots/logs/esm_node16.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node16", "resource:integration-tests-js-XXXX-esm_node16", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -25,8 +25,25 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node16", "resource:integration-tests-js-XXXX-esm_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node16", + "resource:integration-tests-js-XXXX-esm_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -42,8 +59,42 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node16", "resource:integration-tests-js-XXXX-esm_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node16", + "resource:integration-tests-js-XXXX-esm_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node16", + "resource:integration-tests-js-XXXX-esm_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], diff --git a/integration_tests/snapshots/logs/esm_node18.log b/integration_tests/snapshots/logs/esm_node18.log index 26588ee6..8a53cda5 100644 --- a/integration_tests/snapshots/logs/esm_node18.log +++ b/integration_tests/snapshots/logs/esm_node18.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node18", "resource:integration-tests-js-XXXX-esm_node18", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -25,8 +25,25 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node18", "resource:integration-tests-js-XXXX-esm_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node18", + "resource:integration-tests-js-XXXX-esm_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -42,8 +59,42 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node18", "resource:integration-tests-js-XXXX-esm_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node18", + "resource:integration-tests-js-XXXX-esm_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node18", + "resource:integration-tests-js-XXXX-esm_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], diff --git a/integration_tests/snapshots/logs/esm_node20.log b/integration_tests/snapshots/logs/esm_node20.log index a7d2112d..a264edff 100644 --- a/integration_tests/snapshots/logs/esm_node20.log +++ b/integration_tests/snapshots/logs/esm_node20.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node20", "resource:integration-tests-js-XXXX-esm_node20", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -25,8 +25,25 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node20", "resource:integration-tests-js-XXXX-esm_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node20", + "resource:integration-tests-js-XXXX-esm_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -42,8 +59,42 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-esm_node20", "resource:integration-tests-js-XXXX-esm_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node20", + "resource:integration-tests-js-XXXX-esm_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node20", + "resource:integration-tests-js-XXXX-esm_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], diff --git a/integration_tests/snapshots/logs/esm_node22.log b/integration_tests/snapshots/logs/esm_node22.log index 938b073d..53f5cb4c 100644 --- a/integration_tests/snapshots/logs/esm_node22.log +++ b/integration_tests/snapshots/logs/esm_node22.log @@ -50,3 +50,54 @@ START "v": 1 } END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node22", + "resource:integration-tests-js-XXXX-esm_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node22", + "resource:integration-tests-js-XXXX-esm_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-esm_node22", + "resource:integration-tests-js-XXXX-esm_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/http-requests_node16.log b/integration_tests/snapshots/logs/http-requests_node16.log index 21608e41..15cc5ce5 100644 --- a/integration_tests/snapshots/logs/http-requests_node16.log +++ b/integration_tests/snapshots/logs/http-requests_node16.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node16", "resource:integration-tests-js-XXXX-http-requests_node16", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -29,8 +29,29 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node16", "resource:integration-tests-js-XXXX-http-requests_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node16", + "resource:integration-tests-js-XXXX-http-requests_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -50,8 +71,50 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node16", "resource:integration-tests-js-XXXX-http-requests_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node16", + "resource:integration-tests-js-XXXX-http-requests_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node16", + "resource:integration-tests-js-XXXX-http-requests_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], diff --git a/integration_tests/snapshots/logs/http-requests_node18.log b/integration_tests/snapshots/logs/http-requests_node18.log index b7b9bf59..489911cf 100644 --- a/integration_tests/snapshots/logs/http-requests_node18.log +++ b/integration_tests/snapshots/logs/http-requests_node18.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node18", "resource:integration-tests-js-XXXX-http-requests_node18", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -29,8 +29,29 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node18", "resource:integration-tests-js-XXXX-http-requests_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node18", + "resource:integration-tests-js-XXXX-http-requests_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -50,8 +71,50 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node18", "resource:integration-tests-js-XXXX-http-requests_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node18", + "resource:integration-tests-js-XXXX-http-requests_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node18", + "resource:integration-tests-js-XXXX-http-requests_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], diff --git a/integration_tests/snapshots/logs/http-requests_node20.log b/integration_tests/snapshots/logs/http-requests_node20.log index 57add079..b0e74c95 100644 --- a/integration_tests/snapshots/logs/http-requests_node20.log +++ b/integration_tests/snapshots/logs/http-requests_node20.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node20", "resource:integration-tests-js-XXXX-http-requests_node20", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -29,8 +29,29 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node20", "resource:integration-tests-js-XXXX-http-requests_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node20", + "resource:integration-tests-js-XXXX-http-requests_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -50,8 +71,50 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-http-requests_node20", "resource:integration-tests-js-XXXX-http-requests_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node20", + "resource:integration-tests-js-XXXX-http-requests_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node20", + "resource:integration-tests-js-XXXX-http-requests_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], diff --git a/integration_tests/snapshots/logs/http-requests_node22.log b/integration_tests/snapshots/logs/http-requests_node22.log index 64226638..87fe4ff4 100644 --- a/integration_tests/snapshots/logs/http-requests_node22.log +++ b/integration_tests/snapshots/logs/http-requests_node22.log @@ -62,3 +62,66 @@ HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXX XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node22", + "resource:integration-tests-js-XXXX-http-requests_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node22", + "resource:integration-tests-js-XXXX-http-requests_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-http-requests_node22", + "resource:integration-tests-js-XXXX-http-requests_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +HTTP GET https://ip-ranges.datadoghq.com/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +HTTP GET https://ip-ranges.datadoghq.eu/ TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Snapshot test http requests successfully made to URLs: https://ip-ranges.datadoghq.com,https://ip-ranges.datadoghq.eu +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/process-input-traced_node16.log b/integration_tests/snapshots/logs/process-input-traced_node16.log index 6fa8b1a9..d44d9461 100644 --- a/integration_tests/snapshots/logs/process-input-traced_node16.log +++ b/integration_tests/snapshots/logs/process-input-traced_node16.log @@ -180,6 +180,399 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node16", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node16", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node16", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node16", + "functionname": "integration-tests-js-XXXX-process-input-traced_node16", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node16", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/multipart_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node16" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node16", + "resource:integration-tests-js-XXXX-process-input-traced_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev16.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node16", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node16", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node16", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node16", + "functionname": "integration-tests-js-XXXX-process-input-traced_node16", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node16", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/copied_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node16" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node16", + "resource:integration-tests-js-XXXX-process-input-traced_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev16.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node16", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node16", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node16", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node16", + "functionname": "integration-tests-js-XXXX-process-input-traced_node16", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node16", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/test_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node16" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node16", + "resource:integration-tests-js-XXXX-process-input-traced_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev16.XX.X" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/process-input-traced_node18.log b/integration_tests/snapshots/logs/process-input-traced_node18.log index 02bd1a20..3c8d3f54 100644 --- a/integration_tests/snapshots/logs/process-input-traced_node18.log +++ b/integration_tests/snapshots/logs/process-input-traced_node18.log @@ -180,6 +180,399 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node18", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node18", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node18", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node18", + "functionname": "integration-tests-js-XXXX-process-input-traced_node18", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node18", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/multipart_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node18" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node18", + "resource:integration-tests-js-XXXX-process-input-traced_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev18.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node18", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node18", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node18", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node18", + "functionname": "integration-tests-js-XXXX-process-input-traced_node18", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node18", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/copied_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node18" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node18", + "resource:integration-tests-js-XXXX-process-input-traced_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev18.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node18", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node18", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node18", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node18", + "functionname": "integration-tests-js-XXXX-process-input-traced_node18", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node18", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/test_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node18" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node18", + "resource:integration-tests-js-XXXX-process-input-traced_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev18.XX.X" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/process-input-traced_node20.log b/integration_tests/snapshots/logs/process-input-traced_node20.log index 02917a71..f76a74a0 100644 --- a/integration_tests/snapshots/logs/process-input-traced_node20.log +++ b/integration_tests/snapshots/logs/process-input-traced_node20.log @@ -180,6 +180,399 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node20", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node20", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node20", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node20", + "functionname": "integration-tests-js-XXXX-process-input-traced_node20", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node20", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/multipart_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node20" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node20", + "resource:integration-tests-js-XXXX-process-input-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev20.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node20", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node20", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node20", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node20", + "functionname": "integration-tests-js-XXXX-process-input-traced_node20", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node20", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/copied_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node20" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node20", + "resource:integration-tests-js-XXXX-process-input-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev20.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node20", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node20", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node20", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node20", + "functionname": "integration-tests-js-XXXX-process-input-traced_node20", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node20", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/test_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node20" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node20", + "resource:integration-tests-js-XXXX-process-input-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev20.XX.X" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/process-input-traced_node22.log b/integration_tests/snapshots/logs/process-input-traced_node22.log index b20c0dc4..f1dd0a7f 100644 --- a/integration_tests/snapshots/logs/process-input-traced_node22.log +++ b/integration_tests/snapshots/logs/process-input-traced_node22.log @@ -180,6 +180,399 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node22", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node22", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node22", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node22", + "functionname": "integration-tests-js-XXXX-process-input-traced_node22", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node22", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/multipart_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node22" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node22", + "resource:integration-tests-js-XXXX-process-input-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev22.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node22", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node22", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node22", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node22", + "functionname": "integration-tests-js-XXXX-process-input-traced_node22", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node22", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/copied_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node22" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node22", + "resource:integration-tests-js-XXXX-process-input-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev22.XX.X" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node22", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-process-input-traced_node22", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-process-input-traced_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node22", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-process-input-traced_node22", + "functionname": "integration-tests-js-XXXX-process-input-traced_node22", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "event_type": "S3", + "_dd.base_service": "integration-tests-js-XXXX-process-input-traced_node22", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "getRecordIds", + "resource": "getRecordIds", + "error": 0, + "meta": { + "service": "integration-tests-js-XXXX-process-input-traced_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "record_event_type": "S3", + "record_ids":"XXXX/test_object.txt", + "language": "javascript" + }, + "metrics": { + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "integration-tests-js-XXXX-process-input-traced_node22" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-process-input-traced_node22", + "resource:integration-tests-js-XXXX-process-input-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "serverless.integration_test.execution", + "t": [ + "function:process-input-traced", + "dd_lambda_layer:datadog-nodev22.XX.X" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/status-code-500s_node16.log b/integration_tests/snapshots/logs/status-code-500s_node16.log index 04e0a8bb..c193f4fc 100644 --- a/integration_tests/snapshots/logs/status-code-500s_node16.log +++ b/integration_tests/snapshots/logs/status-code-500s_node16.log @@ -127,6 +127,294 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node16", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node16", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node16", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node16", + "functionname": "integration-tests-js-XXXX-status-code-500s_node16", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node16", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node16", + "resource:integration-tests-js-XXXX-status-code-500s_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node16", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node16", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node16", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node16", + "functionname": "integration-tests-js-XXXX-status-code-500s_node16", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node16", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node16", + "resource:integration-tests-js-XXXX-status-code-500s_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node16", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node16", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node16", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node16", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node16", + "functionname": "integration-tests-js-XXXX-status-code-500s_node16", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node16", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node16", + "resource:integration-tests-js-XXXX-status-code-500s_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/status-code-500s_node18.log b/integration_tests/snapshots/logs/status-code-500s_node18.log index 541b297f..f618b4f4 100644 --- a/integration_tests/snapshots/logs/status-code-500s_node18.log +++ b/integration_tests/snapshots/logs/status-code-500s_node18.log @@ -127,6 +127,294 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node18", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node18", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node18", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node18", + "functionname": "integration-tests-js-XXXX-status-code-500s_node18", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node18", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node18", + "resource:integration-tests-js-XXXX-status-code-500s_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node18", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node18", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node18", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node18", + "functionname": "integration-tests-js-XXXX-status-code-500s_node18", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node18", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node18", + "resource:integration-tests-js-XXXX-status-code-500s_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node18", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node18", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node18", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node18", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node18", + "functionname": "integration-tests-js-XXXX-status-code-500s_node18", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node18", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node18", + "resource:integration-tests-js-XXXX-status-code-500s_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/status-code-500s_node20.log b/integration_tests/snapshots/logs/status-code-500s_node20.log index 3e343aca..4e1049de 100644 --- a/integration_tests/snapshots/logs/status-code-500s_node20.log +++ b/integration_tests/snapshots/logs/status-code-500s_node20.log @@ -127,6 +127,294 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node20", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node20", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node20", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node20", + "functionname": "integration-tests-js-XXXX-status-code-500s_node20", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node20", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node20", + "resource:integration-tests-js-XXXX-status-code-500s_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node20", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node20", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node20", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node20", + "functionname": "integration-tests-js-XXXX-status-code-500s_node20", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node20", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node20", + "resource:integration-tests-js-XXXX-status-code-500s_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node20", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node20", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node20", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node20", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node20", + "functionname": "integration-tests-js-XXXX-status-code-500s_node20", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node20", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node20", + "resource:integration-tests-js-XXXX-status-code-500s_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/status-code-500s_node22.log b/integration_tests/snapshots/logs/status-code-500s_node22.log index 06d6b80b..9216fb6f 100644 --- a/integration_tests/snapshots/logs/status-code-500s_node22.log +++ b/integration_tests/snapshots/logs/status-code-500s_node22.log @@ -127,6 +127,294 @@ START ], "v": 1 } +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:CompleteMultipartUpload", + "object_key": "multipart_object.txt", + "object_etag": "09876543210987654321098765432109-2", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node22", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 8388608, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node22", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"5e945cd2009d743bdef019835b237969\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node22", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node22", + "functionname": "integration-tests-js-XXXX-status-code-500s_node22", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node22", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node22", + "resource:integration-tests-js-XXXX-status-code-500s_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Copy", + "object_key": "copied_object.txt", + "object_etag": "01234567890123456789012345678901", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node22", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node22", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"9b03fa9d6a34c7b40a2a2907eb0db1f6\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node22", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node22", + "functionname": "integration-tests-js-XXXX-status-code-500s_node22", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node22", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node22", + "resource:integration-tests-js-XXXX-status-code-500s_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "traces": [ + [ + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.s3", + "resource": "my-bucket-name", + "error": 0, + "meta": { + "_dd.p.tid": "XXXX", + "_dd.p.dm": "-0", + "service": "remappedS3ServiceName", + "runtime-id":"XXXX", + "operation_name": "aws.s3", + "resource_names": "my-bucket-name", + "request_id":"XXXX", + "_inferred_span.tag_source": "self", + "_inferred_span.synchronicity": "async", + "bucketname": "my-bucket-name", + "bucket_arn": "arn:aws:s3:::my-bucket-name", + "event_name": "ObjectCreated:Put", + "object_key": "test_object.txt", + "object_etag": "abcdef0123456789abcdef01234567890", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node22", + "language": "javascript" + }, + "metrics": { + "_dd.agent_psr": 1, + "_dd.top_level": 1, + "object_size": 100, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "remappedS3ServiceName", + "type": "web" + }, + { + "trace_id":"XXXX", + "span_id":"XXXX", + "parent_id":"XXXX", + "name": "aws.lambda", + "resource": "integration-tests-js-XXXX-status-code-500s_node22", + "error": 0, + "meta": { + "_dd.span_links": "[{\"trace_id\":\"00000000000000000000000000000000\",\"span_id\":\"0000000000000000\",\"attributes\":{\"ptr.kind\":\"aws.s3.object\",\"ptr.dir\":\"u\",\"ptr.hash\":\"b2229b8289f3e49de4f01af8d228ebd8\",\"link.kind\":\"span-pointer\"}}]", + "service": "integration-tests-js-XXXX-status-code-500s_node22", + "version": "1.0.0", + "runtime-id":"XXXX", + "function_arn":"XXXX_node22", + "function_version": "$LATEST", + "request_id":"XXXX", + "resource_names": "integration-tests-js-XXXX-status-code-500s_node22", + "functionname": "integration-tests-js-XXXX-status-code-500s_node22", + "datadog_lambda":"XXXX", + "function_trigger.event_source": "s3", + "function_trigger.event_source_arn": "arn:aws:s3:::my-bucket-name", + "_dd.base_service": "integration-tests-js-XXXX-status-code-500s_node22", + "language": "javascript" + }, + "metrics": { + "cold_start": 0, + "_dd.measured": 1, + "process_id":XXXX, + "_sampling_priority_v1": 1 + }, + "start":XXXX, + "duration":XXXX, + "links": [], + "service": "aws.lambda", + "type": "serverless" + } + ] + ] +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-status-code-500s_node22", + "resource:integration-tests-js-XXXX-status-code-500s_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} { "traces": [ [ diff --git a/integration_tests/snapshots/logs/sync-metrics_node16.log b/integration_tests/snapshots/logs/sync-metrics_node16.log index 0ec11c1a..5955474b 100644 --- a/integration_tests/snapshots/logs/sync-metrics_node16.log +++ b/integration_tests/snapshots/logs/sync-metrics_node16.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node16", "resource:integration-tests-js-XXXX-sync-metrics_node16", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -19,7 +19,6 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGat HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -28,17 +27,56 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node16", "resource:integration-tests-js-XXXX-sync-metrics_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node16", + "resource:integration-tests-js-XXXX-sync-metrics_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node16", + "resource:integration-tests-js-XXXX-sync-metrics_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -47,8 +85,27 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS re "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node16", "resource:integration-tests-js-XXXX-sync-metrics_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node16", + "resource:integration-tests-js-XXXX-sync-metrics_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], diff --git a/integration_tests/snapshots/logs/sync-metrics_node18.log b/integration_tests/snapshots/logs/sync-metrics_node18.log index 68b6549d..1b195a06 100644 --- a/integration_tests/snapshots/logs/sync-metrics_node18.log +++ b/integration_tests/snapshots/logs/sync-metrics_node18.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node18", "resource:integration-tests-js-XXXX-sync-metrics_node18", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -19,7 +19,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed APIGat HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -28,8 +28,27 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node18", "resource:integration-tests-js-XXXX-sync-metrics_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node18", + "resource:integration-tests-js-XXXX-sync-metrics_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -38,6 +57,7 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS re HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -46,13 +66,50 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node18", "resource:integration-tests-js-XXXX-sync-metrics_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node18", + "resource:integration-tests-js-XXXX-sync-metrics_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], "v": 1 } +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node18", + "resource:integration-tests-js-XXXX-sync-metrics_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/sync-metrics_node20.log b/integration_tests/snapshots/logs/sync-metrics_node20.log index e1c67ee4..19dcdbd2 100644 --- a/integration_tests/snapshots/logs/sync-metrics_node20.log +++ b/integration_tests/snapshots/logs/sync-metrics_node20.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node20", "resource:integration-tests-js-XXXX-sync-metrics_node20", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -27,18 +27,56 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node20", "resource:integration-tests-js-XXXX-sync-metrics_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node20", + "resource:integration-tests-js-XXXX-sync-metrics_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], "v": 1 } -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node20", + "resource:integration-tests-js-XXXX-sync-metrics_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -47,12 +85,31 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS re "account_id:XXXX", "functionname:integration-tests-js-XXXX-sync-metrics_node20", "resource:integration-tests-js-XXXX-sync-metrics_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node20", + "resource:integration-tests-js-XXXX-sync-metrics_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/sync-metrics_node22.log b/integration_tests/snapshots/logs/sync-metrics_node22.log index 04a15556..55d2394d 100644 --- a/integration_tests/snapshots/logs/sync-metrics_node22.log +++ b/integration_tests/snapshots/logs/sync-metrics_node22.log @@ -34,11 +34,67 @@ START ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node22", + "resource:integration-tests-js-XXXX-sync-metrics_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed undefined request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node22", + "resource:integration-tests-js-XXXX-sync-metrics_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] +END Duration: XXXX ms Memory Used: XXXX MB +START XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SNS request +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-sync-metrics_node22", + "resource:integration-tests-js-XXXX-sync-metrics_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB START -XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -54,5 +110,6 @@ XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS re ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX INFO [dd.trace_id=XXXX dd.span_id=XXXX] Processed SQS request HTTP POST https://api.datadoghq.com/api/v1/distribution_points?api_key=XXXX TraceHeaders: ["x-datadog-parent-id:XXXX","x-datadog-sampling-priority:-1","x-datadog-trace-id:XXXX"] END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/throw-error-traced_node16.log b/integration_tests/snapshots/logs/throw-error-traced_node16.log index 8aedb66a..4efa11ce 100644 --- a/integration_tests/snapshots/logs/throw-error-traced_node16.log +++ b/integration_tests/snapshots/logs/throw-error-traced_node16.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node16", "resource:integration-tests-js-XXXX-throw-error-traced_node16", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -23,8 +23,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node16", "resource:integration-tests-js-XXXX-throw-error-traced_node16", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -41,8 +41,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node16", "resource:integration-tests-js-XXXX-throw-error-traced_node16", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -56,8 +56,41 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node16", "resource:integration-tests-js-XXXX-throw-error-traced_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node16", + "resource:integration-tests-js-XXXX-throw-error-traced_node16", "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node16", + "resource:integration-tests-js-XXXX-throw-error-traced_node16", + "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], @@ -74,13 +107,47 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node16", "resource:integration-tests-js-XXXX-throw-error-traced_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node16", + "resource:integration-tests-js-XXXX-throw-error-traced_node16", "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node16", + "resource:integration-tests-js-XXXX-throw-error-traced_node16", + "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} { "e": XXXX, "m": "aws.lambda.enhanced.errors", @@ -89,12 +156,44 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node16", "resource:integration-tests-js-XXXX-throw-error-traced_node16", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node16", + "resource:integration-tests-js-XXXX-throw-error-traced_node16", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs16.x" ], "v": 1 } XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node16", + "resource:integration-tests-js-XXXX-throw-error-traced_node16", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs16.x" + ], + "v": 1 +} END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/throw-error-traced_node18.log b/integration_tests/snapshots/logs/throw-error-traced_node18.log index f7ad94da..66eceb11 100644 --- a/integration_tests/snapshots/logs/throw-error-traced_node18.log +++ b/integration_tests/snapshots/logs/throw-error-traced_node18.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node18", "resource:integration-tests-js-XXXX-throw-error-traced_node18", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -23,8 +23,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node18", "resource:integration-tests-js-XXXX-throw-error-traced_node18", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -41,8 +41,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node18", "resource:integration-tests-js-XXXX-throw-error-traced_node18", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -56,8 +56,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node18", "resource:integration-tests-js-XXXX-throw-error-traced_node18", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -74,8 +74,41 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node18", "resource:integration-tests-js-XXXX-throw-error-traced_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node18", + "resource:integration-tests-js-XXXX-throw-error-traced_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node18", + "resource:integration-tests-js-XXXX-throw-error-traced_node18", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -89,8 +122,41 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node18", "resource:integration-tests-js-XXXX-throw-error-traced_node18", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node18", + "resource:integration-tests-js-XXXX-throw-error-traced_node18", "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node18", + "resource:integration-tests-js-XXXX-throw-error-traced_node18", + "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs18.x" ], @@ -98,3 +164,36 @@ START } XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node18", + "resource:integration-tests-js-XXXX-throw-error-traced_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node18", + "resource:integration-tests-js-XXXX-throw-error-traced_node18", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs18.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/throw-error-traced_node20.log b/integration_tests/snapshots/logs/throw-error-traced_node20.log index 31c64e85..0e1aa3b9 100644 --- a/integration_tests/snapshots/logs/throw-error-traced_node20.log +++ b/integration_tests/snapshots/logs/throw-error-traced_node20.log @@ -8,8 +8,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node20", "resource:integration-tests-js-XXXX-throw-error-traced_node20", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -23,8 +23,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node20", "resource:integration-tests-js-XXXX-throw-error-traced_node20", - "cold_start:true", "memorysize:1024", + "cold_start:true", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -41,8 +41,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node20", "resource:integration-tests-js-XXXX-throw-error-traced_node20", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -56,8 +56,8 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node20", "resource:integration-tests-js-XXXX-throw-error-traced_node20", - "cold_start:false", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], @@ -74,14 +74,47 @@ START "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node20", "resource:integration-tests-js-XXXX-throw-error-traced_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node20", + "resource:integration-tests-js-XXXX-throw-error-traced_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], "v": 1 } XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node20", + "resource:integration-tests-js-XXXX-throw-error-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} { "e": XXXX, "m": "aws.lambda.enhanced.errors", @@ -90,11 +123,77 @@ XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error { "account_id:XXXX", "functionname:integration-tests-js-XXXX-throw-error-traced_node20", "resource:integration-tests-js-XXXX-throw-error-traced_node20", + "memorysize:1024", "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node20", + "resource:integration-tests-js-XXXX-throw-error-traced_node20", "memorysize:1024", + "cold_start:false", "datadog_lambda:vX.X.X", "runtime:nodejs20.x" ], "v": 1 } +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node20", + "resource:integration-tests-js-XXXX-throw-error-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node20", + "resource:integration-tests-js-XXXX-throw-error-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node20", + "resource:integration-tests-js-XXXX-throw-error-traced_node20", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs20.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/logs/throw-error-traced_node22.log b/integration_tests/snapshots/logs/throw-error-traced_node22.log index 2177c009..50f17ede 100644 --- a/integration_tests/snapshots/logs/throw-error-traced_node22.log +++ b/integration_tests/snapshots/logs/throw-error-traced_node22.log @@ -33,7 +33,39 @@ START XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} END Duration: XXXX ms (init: XXXX ms) Memory Used: XXXX MB START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node22", + "resource:integration-tests-js-XXXX-throw-error-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node22", + "resource:integration-tests-js-XXXX-throw-error-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START { "e": XXXX, "m": "aws.lambda.enhanced.invocations", @@ -49,6 +81,7 @@ XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error { ], "v": 1 } +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} { "e": XXXX, "m": "aws.lambda.enhanced.errors", @@ -81,7 +114,40 @@ START ], "v": 1 } +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node22", + "resource:integration-tests-js-XXXX-throw-error-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB +START XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node22", + "resource:integration-tests-js-XXXX-throw-error-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} { "e": XXXX, "m": "aws.lambda.enhanced.errors", @@ -98,3 +164,36 @@ XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error { "v": 1 } END Duration: XXXX ms Memory Used: XXXX MB +START +{ + "e": XXXX, + "m": "aws.lambda.enhanced.invocations", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node22", + "resource:integration-tests-js-XXXX-throw-error-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +{ + "e": XXXX, + "m": "aws.lambda.enhanced.errors", + "t": [ + "region:eu-west-1", + "account_id:XXXX", + "functionname:integration-tests-js-XXXX-throw-error-traced_node22", + "resource:integration-tests-js-XXXX-throw-error-traced_node22", + "memorysize:1024", + "cold_start:false", + "datadog_lambda:vX.X.X", + "runtime:nodejs22.x" + ], + "v": 1 +} +XXXX-XX-XX XX:XX:XX.XXX ERROR [dd.trace_id=XXXX dd.span_id=XXXX] Invoke Error {"errorType":"Error","errorMessage":"Hello","stack":["Error: Hello"," at handle (/var/task/throw-error-traced.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/utils/handler.js:XXX:XXX"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at step (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at Object.next (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"," at new Promise ()"," at __awaiter (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at traceListenerOnWrap (/opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX)"," at /opt/nodejs/node_modules/datadog-lambda-js/index.js:XXX:XXX"]} +END Duration: XXXX ms Memory Used: XXXX MB diff --git a/integration_tests/snapshots/return_values/async-metrics_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/async-metrics_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node16_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/async-metrics_node16_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node16_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node16_s3-putobject.json b/integration_tests/snapshots/return_values/async-metrics_node16_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node16_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/async-metrics_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node18_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/async-metrics_node18_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node18_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node18_s3-putobject.json b/integration_tests/snapshots/return_values/async-metrics_node18_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node18_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/async-metrics_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node20_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/async-metrics_node20_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node20_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node20_s3-putobject.json b/integration_tests/snapshots/return_values/async-metrics_node20_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node20_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/async-metrics_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node22_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/async-metrics_node22_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node22_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/async-metrics_node22_s3-putobject.json b/integration_tests/snapshots/return_values/async-metrics_node22_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/async-metrics_node22_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/esm_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/esm_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node16_s3-completemultipartupload.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/esm_node16_s3-copyobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node16_s3-copyobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node16_s3-putobject.json b/integration_tests/snapshots/return_values/esm_node16_s3-putobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node16_s3-putobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/esm_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node18_s3-completemultipartupload.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/esm_node18_s3-copyobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node18_s3-copyobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node18_s3-putobject.json b/integration_tests/snapshots/return_values/esm_node18_s3-putobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node18_s3-putobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/esm_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node20_s3-completemultipartupload.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/esm_node20_s3-copyobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node20_s3-copyobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node20_s3-putobject.json b/integration_tests/snapshots/return_values/esm_node20_s3-putobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node20_s3-putobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/esm_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node22_s3-completemultipartupload.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/esm_node22_s3-copyobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node22_s3-copyobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/esm_node22_s3-putobject.json b/integration_tests/snapshots/return_values/esm_node22_s3-putobject.json new file mode 100644 index 00000000..19765bd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/esm_node22_s3-putobject.json @@ -0,0 +1 @@ +null diff --git a/integration_tests/snapshots/return_values/http-requests_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/http-requests_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node16_s3-completemultipartupload.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/http-requests_node16_s3-copyobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node16_s3-copyobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node16_s3-putobject.json b/integration_tests/snapshots/return_values/http-requests_node16_s3-putobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node16_s3-putobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/http-requests_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node18_s3-completemultipartupload.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/http-requests_node18_s3-copyobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node18_s3-copyobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node18_s3-putobject.json b/integration_tests/snapshots/return_values/http-requests_node18_s3-putobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node18_s3-putobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/http-requests_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node20_s3-completemultipartupload.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/http-requests_node20_s3-copyobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node20_s3-copyobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node20_s3-putobject.json b/integration_tests/snapshots/return_values/http-requests_node20_s3-putobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node20_s3-putobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/http-requests_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node22_s3-completemultipartupload.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/http-requests_node22_s3-copyobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node22_s3-copyobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/http-requests_node22_s3-putobject.json b/integration_tests/snapshots/return_values/http-requests_node22_s3-putobject.json new file mode 100644 index 00000000..eb1e9d31 --- /dev/null +++ b/integration_tests/snapshots/return_values/http-requests_node22_s3-putobject.json @@ -0,0 +1,3 @@ +{ + "message": "hello, dog!" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/process-input-traced_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..7dd8794f --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node16_s3-completemultipartupload.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/multipart_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/process-input-traced_node16_s3-copyobject.json new file mode 100644 index 00000000..2a6de4ac --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node16_s3-copyobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/copied_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node16_s3-putobject.json b/integration_tests/snapshots/return_values/process-input-traced_node16_s3-putobject.json new file mode 100644 index 00000000..9bef8e7c --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node16_s3-putobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/test_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/process-input-traced_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..7dd8794f --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node18_s3-completemultipartupload.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/multipart_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/process-input-traced_node18_s3-copyobject.json new file mode 100644 index 00000000..2a6de4ac --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node18_s3-copyobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/copied_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node18_s3-putobject.json b/integration_tests/snapshots/return_values/process-input-traced_node18_s3-putobject.json new file mode 100644 index 00000000..9bef8e7c --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node18_s3-putobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/test_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/process-input-traced_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..7dd8794f --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node20_s3-completemultipartupload.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/multipart_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/process-input-traced_node20_s3-copyobject.json new file mode 100644 index 00000000..2a6de4ac --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node20_s3-copyobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/copied_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node20_s3-putobject.json b/integration_tests/snapshots/return_values/process-input-traced_node20_s3-putobject.json new file mode 100644 index 00000000..9bef8e7c --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node20_s3-putobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/test_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/process-input-traced_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..7dd8794f --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node22_s3-completemultipartupload.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/multipart_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/process-input-traced_node22_s3-copyobject.json new file mode 100644 index 00000000..2a6de4ac --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node22_s3-copyobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/copied_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/process-input-traced_node22_s3-putobject.json b/integration_tests/snapshots/return_values/process-input-traced_node22_s3-putobject.json new file mode 100644 index 00000000..9bef8e7c --- /dev/null +++ b/integration_tests/snapshots/return_values/process-input-traced_node22_s3-putobject.json @@ -0,0 +1,7 @@ +{ + "message": "hello, dog!", + "recordIds": [ + "my-bucket-name/test_object.txt" + ], + "eventType": "S3" +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/status-code-500s_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node16_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/status-code-500s_node16_s3-copyobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node16_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node16_s3-putobject.json b/integration_tests/snapshots/return_values/status-code-500s_node16_s3-putobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node16_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/status-code-500s_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node18_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/status-code-500s_node18_s3-copyobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node18_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node18_s3-putobject.json b/integration_tests/snapshots/return_values/status-code-500s_node18_s3-putobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node18_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/status-code-500s_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node20_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/status-code-500s_node20_s3-copyobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node20_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node20_s3-putobject.json b/integration_tests/snapshots/return_values/status-code-500s_node20_s3-putobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node20_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/status-code-500s_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node22_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/status-code-500s_node22_s3-copyobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node22_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/status-code-500s_node22_s3-putobject.json b/integration_tests/snapshots/return_values/status-code-500s_node22_s3-putobject.json new file mode 100644 index 00000000..3a476177 --- /dev/null +++ b/integration_tests/snapshots/return_values/status-code-500s_node22_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "statusCode": 500, + "body": {} +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/sync-metrics_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node16_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/sync-metrics_node16_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node16_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node16_s3-putobject.json b/integration_tests/snapshots/return_values/sync-metrics_node16_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node16_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/sync-metrics_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node18_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/sync-metrics_node18_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node18_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node18_s3-putobject.json b/integration_tests/snapshots/return_values/sync-metrics_node18_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node18_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/sync-metrics_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node20_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/sync-metrics_node20_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node20_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node20_s3-putobject.json b/integration_tests/snapshots/return_values/sync-metrics_node20_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node20_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/sync-metrics_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node22_s3-completemultipartupload.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/sync-metrics_node22_s3-copyobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node22_s3-copyobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/sync-metrics_node22_s3-putobject.json b/integration_tests/snapshots/return_values/sync-metrics_node22_s3-putobject.json new file mode 100644 index 00000000..810dbbd5 --- /dev/null +++ b/integration_tests/snapshots/return_values/sync-metrics_node22_s3-putobject.json @@ -0,0 +1,4 @@ +{ + "message": "hello, dog!", + "recordIds": [] +} diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-completemultipartupload.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-completemultipartupload.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-copyobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-copyobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-copyobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-putobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-putobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node16_s3-putobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-completemultipartupload.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-completemultipartupload.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-copyobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-copyobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-copyobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-putobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-putobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node18_s3-putobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-completemultipartupload.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-completemultipartupload.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-copyobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-copyobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-copyobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-putobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-putobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node20_s3-putobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-completemultipartupload.json b/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-completemultipartupload.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-completemultipartupload.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-copyobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-copyobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-copyobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-putobject.json b/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-putobject.json new file mode 100644 index 00000000..7147cafa --- /dev/null +++ b/integration_tests/snapshots/return_values/throw-error-traced_node22_s3-putobject.json @@ -0,0 +1 @@ +Invocation failed diff --git a/src/trace/listener.ts b/src/trace/listener.ts index 0c0612b4..c03fb50c 100644 --- a/src/trace/listener.ts +++ b/src/trace/listener.ts @@ -2,7 +2,7 @@ import { Context } from "aws-lambda"; import { patchHttp, unpatchHttp } from "./patch-http"; -import { extractTriggerTags, extractHTTPStatusCodeTag } from "./trigger"; +import { extractTriggerTags, extractHTTPStatusCodeTag, parseEventSource } from "./trigger"; import { ColdStartTracerConfig, ColdStartTracer } from "./cold-start-tracer"; import { logDebug, tagObject } from "../utils"; import { didFunctionColdStart, isProactiveInitialization } from "../utils/cold-start"; @@ -17,6 +17,7 @@ import { TraceContext, TraceContextService, TraceSource } from "./trace-context- import { StepFunctionContext, StepFunctionContextService } from "./step-function-service"; import { XrayService } from "./xray-service"; import { AUTHORIZING_REQUEST_ID_HEADER } from "./context/extractors/http"; +import { getSpanPointerAttributes, SpanPointerAttributes } from "../utils/span-pointers"; export type TraceExtractor = (event: any, context: Context) => Promise | TraceContext; export interface TraceConfig { @@ -80,6 +81,7 @@ export class TraceListener { private wrappedCurrentSpan?: SpanWrapper; private triggerTags?: { [key: string]: string }; private lambdaSpanParentContext?: SpanContext; + private spanPointerAttributesList: SpanPointerAttributes[] | undefined; public get currentTraceHeaders() { return this.contextService.currentTraceHeaders; @@ -131,8 +133,11 @@ export class TraceListener { this.lambdaSpanParentContext = this.inferredSpan?.span || parentSpanContext; this.context = context; - this.triggerTags = extractTriggerTags(event, context); + const eventSource = parseEventSource(event); + this.triggerTags = extractTriggerTags(event, context, eventSource); this.stepFunctionContext = StepFunctionContextService.instance().context; + + this.spanPointerAttributesList = getSpanPointerAttributes(eventSource, event); } /** @@ -195,6 +200,12 @@ export class TraceListener { } } } + + if (this.wrappedCurrentSpan && this.spanPointerAttributesList) { + for (const attributes of this.spanPointerAttributesList) { + this.wrappedCurrentSpan.span.addSpanPointer(attributes.kind, attributes.direction, attributes.hash); + } + } return false; } diff --git a/src/trace/trigger.spec.ts b/src/trace/trigger.spec.ts index e8a47758..4bef02fd 100644 --- a/src/trace/trigger.spec.ts +++ b/src/trace/trigger.spec.ts @@ -174,7 +174,8 @@ describe("parseEventSource", () => { it("extracts all trigger tags", () => { for (let event of events) { const eventData = JSON.parse(readFileSync(`./event_samples/${event.file}`, "utf8")); - const triggerTags = extractTriggerTags(eventData, mockContext); + const eventSource = parseEventSource(eventData); + const triggerTags = extractTriggerTags(eventData, mockContext, eventSource); expect(triggerTags).toEqual(event.result); } }); @@ -182,7 +183,8 @@ describe("parseEventSource", () => { it("extracts the status code if API Gateway, ALB, or Function URL, otherwise do nothing, for buffered functions", () => { for (const event of events) { const eventData = JSON.parse(readFileSync(`./event_samples/${event.file}`, "utf8")); - const triggerTags = extractTriggerTags(eventData, mockContext); + const eventSource = parseEventSource(eventData); + const triggerTags = extractTriggerTags(eventData, mockContext, eventSource); const isResponseStreamingFunction = false; for (const response of bufferedResponses) { const statusCode = extractHTTPStatusCodeTag(triggerTags, response.responseBody, isResponseStreamingFunction); @@ -206,7 +208,8 @@ describe("parseEventSource", () => { it("extracts the status code if API Gateway, ALB, or Function URL, otherwise do nothing, for streaming functions", () => { for (let event of events) { const eventData = JSON.parse(readFileSync(`./event_samples/${event.file}`, "utf8")); - const triggerTags = extractTriggerTags(eventData, mockContext); + const eventSource = parseEventSource(eventData); + const triggerTags = extractTriggerTags(eventData, mockContext, eventSource); const isResponseStreamingFunction = true; for (const response of streamingResponses) { const statusCode = extractHTTPStatusCodeTag(triggerTags, response.responseBody, isResponseStreamingFunction); diff --git a/src/trace/trigger.ts b/src/trace/trigger.ts index a820a02e..4bf20d0c 100644 --- a/src/trace/trigger.ts +++ b/src/trace/trigger.ts @@ -344,9 +344,8 @@ function extractHTTPTags(event: APIGatewayEvent | APIGatewayProxyEventV2 | ALBEv /** * extractTriggerTags parses the trigger event object for tags to be added to the span metadata */ -export function extractTriggerTags(event: any, context: Context) { +export function extractTriggerTags(event: any, context: Context, eventSource: eventTypes | undefined) { let triggerTags: { [key: string]: string } = {}; - const eventSource = parseEventSource(event); if (eventSource) { triggerTags["function_trigger.event_source"] = eventSource; diff --git a/src/utils/span-pointers.spec.ts b/src/utils/span-pointers.spec.ts new file mode 100644 index 00000000..3b6974bc --- /dev/null +++ b/src/utils/span-pointers.spec.ts @@ -0,0 +1,153 @@ +import { getSpanPointerAttributes, SpanPointerAttributes } from "./span-pointers"; +import { eventTypes } from "../trace/trigger"; + +// tslint:disable-next-line:no-var-requires +const { S3_PTR_KIND, SPAN_POINTER_DIRECTION } = require("dd-trace/packages/dd-trace/src/constants"); +// tslint:disable-next-line:no-var-requires +const util = require("dd-trace/packages/dd-trace/src/util"); + +// Mock the external dependencies +jest.mock("./log", () => ({ + logDebug: jest.fn(), +})); + +describe("span-pointers utils", () => { + const mockPointerHash = "mock-hash-123"; + + beforeEach(() => { + jest.spyOn(util, "generatePointerHash").mockReturnValue(mockPointerHash); + }); + + afterEach(() => { + jest.clearAllMocks(); + }); + + describe("getSpanPointerAttributes", () => { + it("returns undefined when eventSource is undefined", () => { + const result = getSpanPointerAttributes(undefined, {}); + expect(result).toBeUndefined(); + }); + + it("returns undefined for unsupported event types", () => { + const result = getSpanPointerAttributes("unsupported" as eventTypes, {}); + expect(result).toBeUndefined(); + }); + + describe("S3 event processing", () => { + it("processes single S3 record correctly", () => { + const event = { + Records: [ + { + s3: { + bucket: { name: "test-bucket" }, + object: { + key: "test-key", + eTag: "test-etag", + }, + }, + eventName: "ObjectCreated:SomeEventName", + }, + ], + }; + + const expected: SpanPointerAttributes[] = [ + { + kind: S3_PTR_KIND, + direction: SPAN_POINTER_DIRECTION.UPSTREAM, + hash: mockPointerHash, + }, + ]; + + const result = getSpanPointerAttributes(eventTypes.s3, event); + expect(result).toEqual(expected); + expect(util.generatePointerHash).toHaveBeenCalledWith(["test-bucket", "test-key", "test-etag"]); + }); + + it("processes multiple S3 records correctly", () => { + const event = { + Records: [ + { + s3: { + bucket: { name: "bucket1" }, + object: { + key: "key1", + eTag: "etag1", + }, + }, + eventName: "ObjectCreated:SomeEventName", + }, + { + s3: { + bucket: { name: "bucket2" }, + object: { + key: "key2", + eTag: "etag2", + }, + }, + eventName: "ObjectCreated:SomeEventName", + }, + ], + }; + + const expected: SpanPointerAttributes[] = [ + { + kind: S3_PTR_KIND, + direction: SPAN_POINTER_DIRECTION.UPSTREAM, + hash: mockPointerHash, + }, + { + kind: S3_PTR_KIND, + direction: SPAN_POINTER_DIRECTION.UPSTREAM, + hash: mockPointerHash, + }, + ]; + + const result = getSpanPointerAttributes(eventTypes.s3, event); + expect(result).toEqual(expected); + }); + + it("handles empty Records array", () => { + const event = { Records: [] }; + const result = getSpanPointerAttributes(eventTypes.s3, event); + expect(result).toEqual([]); + }); + + it("handles missing Records property", () => { + const event = {}; + const result = getSpanPointerAttributes(eventTypes.s3, event); + expect(result).toEqual([]); + }); + + it("skips invalid records but processes valid ones", () => { + const event = { + Records: [ + { + // Invalid record missing s3 property + }, + { + s3: { + bucket: { name: "valid-bucket" }, + object: { + key: "valid-key", + eTag: "valid-etag", + }, + }, + eventName: "ObjectCreated:SomeEventName", + }, + ], + }; + + const expected: SpanPointerAttributes[] = [ + { + kind: S3_PTR_KIND, + direction: SPAN_POINTER_DIRECTION.UPSTREAM, + hash: mockPointerHash, + }, + ]; + + const result = getSpanPointerAttributes(eventTypes.s3, event); + expect(result).toEqual(expected); + }); + }); + }); +}); diff --git a/src/utils/span-pointers.ts b/src/utils/span-pointers.ts new file mode 100644 index 00000000..daac15cb --- /dev/null +++ b/src/utils/span-pointers.ts @@ -0,0 +1,83 @@ +import { eventTypes } from "../trace/trigger"; +import { logDebug } from "./log"; + +export interface SpanPointerAttributes { + kind: string; + direction: string; + hash: string; +} + +/** + * Computes span pointer attributes + * + * @param {eventTypes} eventSource - The type of event being processed (e.g., S3, DynamoDB). + * @param {any} event - The event object containing source-specific data. + * @returns {SpanPointerAttributes[] | undefined} An array of span pointer attribute objects, or undefined if none could be computed. + */ +export function getSpanPointerAttributes( + eventSource: eventTypes | undefined, + event: any, +): SpanPointerAttributes[] | undefined { + if (!eventSource) { + return; + } + + switch (eventSource) { + case eventTypes.s3: + return processS3Event(event); + } +} + +function processS3Event(event: any): SpanPointerAttributes[] { + const records = event.Records || []; + const spanPointerAttributesList: SpanPointerAttributes[] = []; + + // Get dependencies from tracer only when needed + let S3_PTR_KIND; + let SPAN_POINTER_DIRECTION; + let generatePointerHash; + try { + const constants = require("dd-trace/packages/dd-trace/src/constants"); + const util = require("dd-trace/packages/dd-trace/src/util"); + + ({ S3_PTR_KIND, SPAN_POINTER_DIRECTION } = constants); + ({ generatePointerHash } = util); + } catch (err) { + if (err instanceof Error) { + logDebug("Failed to load dd-trace span pointer dependencies", err); + } + return spanPointerAttributesList; + } + + for (const record of records) { + const eventName = record.eventName; + if (!eventName || !eventName.startsWith("ObjectCreated")) { + continue; + } + // Values are stored in the same place, regardless of AWS SDK v2/v3 or the event type. + // https://docs.aws.amazon.com/AmazonS3/latest/userguide/notification-content-structure.html + const s3Event = record?.s3; + const bucketName = s3Event?.bucket?.name; + const objectKey = s3Event?.object?.key; + let eTag = s3Event?.object?.eTag; + + if (!bucketName || !objectKey || !eTag) { + logDebug("Unable to calculate span pointer hash because of missing parameters."); + continue; + } + + // https://github.com/DataDog/dd-span-pointer-rules/blob/main/AWS/S3/Object/README.md + if (eTag.startsWith('"') && eTag.endsWith('"')) { + eTag = eTag.slice(1, -1); + } + const pointerHash = generatePointerHash([bucketName, objectKey, eTag]); + const spanPointerAttributes: SpanPointerAttributes = { + kind: S3_PTR_KIND, + direction: SPAN_POINTER_DIRECTION.UPSTREAM, + hash: pointerHash, + }; + spanPointerAttributesList.push(spanPointerAttributes); + } + + return spanPointerAttributesList; +}