1+ import { Context } from "aws-lambda" ;
12import { SpanInferrer } from "./span-inferrer" ;
23import { SpanContext , TracerWrapper } from "./tracer-wrapper" ;
4+ import { DD_SERVICE_ENV_VAR } from "./constants" ;
35const snssqsEvent = require ( "../../event_samples/snssqs.json" ) ;
46const snsEvent = require ( "../../event_samples/sns.json" ) ;
57const sqsEvent = require ( "../../event_samples/sqs.json" ) ;
@@ -24,8 +26,18 @@ const mockWrapper = {
2426} ;
2527
2628describe ( "SpanInferrer" , ( ) => {
29+ let oldEnv : any ;
2730 beforeEach ( ( ) => {
2831 mockWrapper . startSpan . mockClear ( ) ;
32+
33+ oldEnv = process . env ;
34+ process . env = {
35+ [ DD_SERVICE_ENV_VAR ] : "mock-lambda-service" ,
36+ } ;
37+ } ) ;
38+
39+ afterEach ( ( ) => {
40+ process . env = oldEnv ;
2941 } ) ;
3042
3143 afterEach ( ( ) => {
@@ -388,6 +400,7 @@ describe("SpanInferrer", () => {
388400 event_subscription_arn : "arn:aws:sns:us-east-1:123456789012:ExampleTopic" ,
389401 message_id : "95df01b4-ee98-5cb9-9903-4c221d41eb5e" ,
390402 operation_name : "aws.sns" ,
403+ "peer.service" : "mock-lambda-service" ,
391404 request_id : undefined ,
392405 "resource.name" : "ExampleTopic" ,
393406 resource_names : "ExampleTopic" ,
@@ -412,6 +425,7 @@ describe("SpanInferrer", () => {
412425 _inferred_span : { synchronicity : "async" , tag_source : "self" } ,
413426 event_source_arn : "arn:aws:sqs:us-east-1:123456789012:MyQueue" ,
414427 operation_name : "aws.sqs" ,
428+ "peer.service" : "mock-lambda-service" ,
415429 queuename : "MyQueue" ,
416430 receipt_handle : "MessageReceiptHandle" ,
417431 request_id : undefined ,
@@ -442,6 +456,7 @@ describe("SpanInferrer", () => {
442456 "arn:aws:dynamodb:us-east-1:123456789012:table/ExampleTableWithStream/stream/2015-06-27T00:48:05.899" ,
443457 event_version : "1.1" ,
444458 operation_name : "aws.dynamodb" ,
459+ "peer.service" : "mock-lambda-service" ,
445460 request_id : undefined ,
446461 "resource.name" : "INSERT ExampleTableWithStream" ,
447462 resource_names : "INSERT ExampleTableWithStream" ,
@@ -467,6 +482,7 @@ describe("SpanInferrer", () => {
467482 event_source_arn : "arn:aws:kinesis:EXAMPLE" ,
468483 event_version : "1.0" ,
469484 operation_name : "aws.kinesis" ,
485+ "peer.service" : "mock-lambda-service" ,
470486 partition_key : "cdbfd750-cec0-4f0f-a4b0-82ae6152c7fb" ,
471487 request_id : undefined ,
472488 "resource.name" : "EXAMPLE" ,
@@ -493,6 +509,7 @@ describe("SpanInferrer", () => {
493509 _inferred_span : { synchronicity : "async" , tag_source : "self" } ,
494510 message_id : "0a0ab23e-4861-5447-82b7-e8094ff3e332" ,
495511 operation_name : "aws.sns" ,
512+ "peer.service" : "mock-lambda-service" ,
496513 "resource.name" : "js-library-test-dev-demoTopic-15WGUVRCBMPAA" ,
497514 resource_names : "js-library-test-dev-demoTopic-15WGUVRCBMPAA" ,
498515 service : "sns" ,
@@ -513,6 +530,7 @@ describe("SpanInferrer", () => {
513530 _inferred_span : { synchronicity : "async" , tag_source : "self" } ,
514531 event_source_arn : "arn:aws:sqs:eu-west-1:601427279990:aj-js-library-test-dev-demo-queue" ,
515532 operation_name : "aws.sqs" ,
533+ "peer.service" : "mock-lambda-service" ,
516534 queuename : "aj-js-library-test-dev-demo-queue" ,
517535 receipt_handle :
518536 "AQEBER6aRkfG8092GvkL7FRwCwbQ7LLDW9Tlk/CembqHe+suS2kfFxXiukomvaIN61QoyQMoRgWuV52SDkiQno2u+5hP64BDbmw+e/KR9ayvIfHJ3M6RfyQLaWNWm3hDFBCKTnBMVIxtdx0N9epZZewyokjKcrNYtmCghFgTCvZzsQkowi5rnoHAVHJ3je1c3bDnQ1KLrZFgajDnootYXDwEPuMq5FIxrf4EzTe0S7S+rnRm+GaQfeBLBVAY6dASL9usV3/AFRqDtaI7GKI+0F2NCgLlqj49VlPRz4ldhkGknYlKTZTluAqALWLJS62/J1GQo53Cs3nneJcmu5ajB2zzmhhRXoXINEkLhCD5ujZfcsw9H4xqW69Or4ECvlqx14bUU2rtMIW0QM2p7pEeXnyocymQv6m1te113eYWTVmaJ4I=" ,
@@ -540,6 +558,7 @@ describe("SpanInferrer", () => {
540558 tags : {
541559 _inferred_span : { synchronicity : "async" , tag_source : "self" } ,
542560 operation_name : "aws.eventbridge" ,
561+ "peer.service" : "mock-lambda-service" ,
543562 request_id : undefined ,
544563 "resource.name" : "my.event" ,
545564 resource_names : "my.event" ,
@@ -565,6 +584,7 @@ describe("SpanInferrer", () => {
565584 "http.url" : "08se3mvh28.execute-api.eu-west-1.amazonaws.com$connect" ,
566585 message_direction : "IN" ,
567586 operation_name : "aws.apigateway" ,
587+ "peer.service" : "mock-lambda-service" ,
568588 request_id : undefined ,
569589 "resource.name" : "08se3mvh28.execute-api.eu-west-1.amazonaws.com $connect" ,
570590 resource_names : "08se3mvh28.execute-api.eu-west-1.amazonaws.com $connect" ,
@@ -589,6 +609,7 @@ describe("SpanInferrer", () => {
589609 "http.url" : "id.execute-api.us-east-1.amazonaws.com/my/path" ,
590610 domain_name : "id.execute-api.us-east-1.amazonaws.com" ,
591611 operation_name : "aws.apigateway" ,
612+ "peer.service" : "mock-lambda-service" ,
592613 request_id : undefined ,
593614 "http.method" : "GET" ,
594615 "resource.name" : "GET /path" ,
@@ -615,6 +636,7 @@ describe("SpanInferrer", () => {
615636 "http.url" : "r3pmxmplak.execute-api.us-east-2.amazonaws.com/default/nodejs-apig-function-1G3XMPLZXVXYI" ,
616637 domain_name : "r3pmxmplak.execute-api.us-east-2.amazonaws.com" ,
617638 operation_name : "aws.apigateway" ,
639+ "peer.service" : "mock-lambda-service" ,
618640 request_id : undefined ,
619641 "http.method" : "GET" ,
620642 "resource.name" : "GET /default/nodejs-apig-function-1G3XMPLZXVXYI" ,
@@ -643,6 +665,7 @@ describe("SpanInferrer", () => {
643665 "http.method" : "GET" ,
644666 "http.url" : "a8hyhsshac.lambda-url.eu-south-1.amazonaws.com/" ,
645667 operation_name : "aws.lambda.url" ,
668+ "peer.service" : "mock-lambda-service" ,
646669 request_id : undefined ,
647670 "resource.name" : "GET /" ,
648671 resource_names : "GET /" ,
@@ -669,6 +692,7 @@ describe("SpanInferrer", () => {
669692 object_key : "test/key" ,
670693 object_size : 1024 ,
671694 operation_name : "aws.s3" ,
695+ "peer.service" : "mock-lambda-service" ,
672696 request_id : undefined ,
673697 "resource.name" : "example-bucket" ,
674698 resource_names : "example-bucket" ,
@@ -689,17 +713,24 @@ describe("Authorizer Spans", () => {
689713 } ;
690714 } ) ,
691715 } ;
716+ let oldEnv : any ;
692717
693718 beforeEach ( ( ) => {
694719 mockWrapperWithFinish . startSpan = jest . fn ( ( ) => {
695720 return {
696721 finish : mockFinish ,
697722 } ;
698723 } ) ;
724+
725+ oldEnv = process . env ;
726+ process . env = {
727+ [ DD_SERVICE_ENV_VAR ] : "mock-lambda-service" ,
728+ } ;
699729 } ) ;
700730
701731 afterEach ( ( ) => {
702732 mockWrapperWithFinish . startSpan . mockReset ( ) ;
733+ process . env = oldEnv ;
703734 } ) ;
704735
705736 it ( "creates an inferred span for API Gateway V1 event with traced authorizers [Request Type]" , ( ) => {
@@ -718,6 +749,7 @@ describe("Authorizer Spans", () => {
718749 "http.method" : "POST" ,
719750 "http.url" : "3gsxz7lha4.execute-api.eu-west-1.amazonaws.com/dev/hello" ,
720751 operation_name : "aws.apigateway" ,
752+ "peer.service" : "mock-lambda-service" ,
721753 request_id : undefined ,
722754 "resource.name" : "POST /hello" ,
723755 resource_names : "POST /hello" ,
@@ -741,6 +773,7 @@ describe("Authorizer Spans", () => {
741773 "http.method" : "POST" ,
742774 "http.url" : "3gsxz7lha4.execute-api.eu-west-1.amazonaws.com/dev/hello" ,
743775 operation_name : "aws.apigateway" ,
776+ "peer.service" : "mock-lambda-service" ,
744777 request_id : undefined ,
745778 "resource.name" : "POST /hello" ,
746779 resource_names : "POST /hello" ,
@@ -769,6 +802,7 @@ describe("Authorizer Spans", () => {
769802 "http.method" : "POST" ,
770803 "http.url" : "3gsxz7lha4.execute-api.eu-west-1.amazonaws.com/dev/hello" ,
771804 operation_name : "aws.apigateway" ,
805+ "peer.service" : "mock-lambda-service" ,
772806 request_id : undefined ,
773807 "resource.name" : "POST /hello" ,
774808 resource_names : "POST /hello" ,
@@ -797,6 +831,7 @@ describe("Authorizer Spans", () => {
797831 "http.method" : "GET" ,
798832 "http.url" : "4dyr9xqip7.execute-api.eu-west-1.amazonaws.com/dev/hi" ,
799833 operation_name : "aws.apigateway" ,
834+ "peer.service" : "mock-lambda-service" ,
800835 request_id : undefined ,
801836 "resource.name" : "GET /hi" ,
802837 resource_names : "GET /hi" ,
@@ -820,6 +855,7 @@ describe("Authorizer Spans", () => {
820855 "http.method" : "GET" ,
821856 "http.url" : "4dyr9xqip7.execute-api.eu-west-1.amazonaws.com/dev/hi" ,
822857 operation_name : "aws.apigateway" ,
858+ "peer.service" : "mock-lambda-service" ,
823859 request_id : undefined ,
824860 "resource.name" : "GET /hi" ,
825861 resource_names : "GET /hi" ,
@@ -848,6 +884,7 @@ describe("Authorizer Spans", () => {
848884 "http.method" : "GET" ,
849885 "http.url" : "4dyr9xqip7.execute-api.eu-west-1.amazonaws.com/dev/hi" ,
850886 operation_name : "aws.apigateway" ,
887+ "peer.service" : "mock-lambda-service" ,
851888 request_id : undefined ,
852889 "resource.name" : "GET /hi" ,
853890 resource_names : "GET /hi" ,
@@ -876,6 +913,7 @@ describe("Authorizer Spans", () => {
876913 "http.method" : "GET" ,
877914 "http.url" : "l9flvsey83.execute-api.eu-west-1.amazonaws.com/hello" ,
878915 operation_name : "aws.httpapi" ,
916+ "peer.service" : "mock-lambda-service" ,
879917 request_id : undefined ,
880918 "resource.name" : "GET /hello" ,
881919 resource_names : "GET /hello" ,
@@ -904,6 +942,7 @@ describe("Authorizer Spans", () => {
904942 "http.method" : "GET" ,
905943 "http.url" : "l9flvsey83.execute-api.eu-west-1.amazonaws.com/hello" ,
906944 operation_name : "aws.apigateway" ,
945+ "peer.service" : "mock-lambda-service" ,
907946 request_id : undefined ,
908947 "resource.name" : "GET /hello" ,
909948 resource_names : "GET /hello" ,
@@ -933,6 +972,7 @@ describe("Authorizer Spans", () => {
933972 "http.url" : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com$connect" ,
934973 message_direction : "IN" ,
935974 operation_name : "aws.apigateway" ,
975+ "peer.service" : "mock-lambda-service" ,
936976 request_id : undefined ,
937977 "resource.name" : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com $connect" ,
938978 resource_names : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com $connect" ,
@@ -956,6 +996,7 @@ describe("Authorizer Spans", () => {
956996 "http.url" : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com$connect" ,
957997 message_direction : "IN" ,
958998 operation_name : "aws.apigateway" ,
999+ "peer.service" : "mock-lambda-service" ,
9591000 request_id : undefined ,
9601001 "resource.name" : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com $connect" ,
9611002 resource_names : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com $connect" ,
@@ -984,6 +1025,7 @@ describe("Authorizer Spans", () => {
9841025 "http.url" : "85fj5nw29d.execute-api.eu-west-1.amazonaws.comhello" ,
9851026 message_direction : "IN" ,
9861027 operation_name : "aws.apigateway" ,
1028+ "peer.service" : "mock-lambda-service" ,
9871029 request_id : undefined ,
9881030 "resource.name" : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com hello" ,
9891031 resource_names : "85fj5nw29d.execute-api.eu-west-1.amazonaws.com hello" ,
0 commit comments