Skip to content

Commit f1900a1

Browse files
committedMar 19, 2025
Add scenarios where the app is disabled
1 parent 5e54ab1 commit f1900a1

File tree

3 files changed

+66
-2
lines changed

3 files changed

+66
-2
lines changed
 

‎docker-compose.serverless.yml

+57
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ services:
4141
- serverless-lambda-generic-complex
4242
- serverless-lambda-generic-complex-nested
4343
- serverless-lambda-toplevel-statement
44+
- serverless-lambda-disabled-no-param-sync
45+
- serverless-lambda-disabled-toplevel-statement
4446
- serverless-dummy-api
4547
environment:
4648
- AWS_LAMBDA_ENDPOINT_NO_PARAM_SYNC=http://serverless-lambda-no-param-sync:8080
@@ -81,6 +83,8 @@ services:
8183
- AWS_LAMBDA_ENDPOINT_GENERICBASE_COMPLEX=http://serverless-lambda-generic-complex:8080
8284
- AWS_LAMBDA_ENDPOINT_GENERICBASE_COMPLEX_NESTED=http://serverless-lambda-generic-complex-nested:8080
8385
- AWS_LAMBDA_ENDPOINT_TOPLEVEL_STATEMENT=http://serverless-lambda-toplevel-statement:8080
86+
- AWS_LAMBDA_ENDPOINT_DISABLED_NO_PARAM_SYNC=http://serverless-lambda-disabled-no-param-sync:8080
87+
- AWS_LAMBDA_ENDPOINT_DISABLED_TOPLEVEL_STATEMENT=http://serverless-lambda-disabled-toplevel-statement:8080
8488
- DUMMY_API_HOST=http://serverless-dummy-api:9005
8589

8690
StartDependencies.Serverless:
@@ -124,6 +128,8 @@ services:
124128
- serverless-lambda-generic-complex
125129
- serverless-lambda-generic-complex-nested
126130
- serverless-lambda-toplevel-statement
131+
- serverless-lambda-disabled-no-param-sync
132+
- serverless-lambda-disabled-toplevel-statement
127133
- serverless-dummy-api
128134
environment:
129135
- TIMEOUT_LENGTH=120
@@ -166,6 +172,8 @@ services:
166172
serverless-lambda-generic-complex:8080
167173
serverless-lambda-generic-complex-nested:8080
168174
serverless-lambda-toplevel-statement:8080
175+
serverless-lambda-disabled-no-param-sync: 8080
176+
serverless-lambda-disabled-toplevel-statement: 8080
169177
serverless-dummy-api:9005
170178
171179
serverless-lambda-no-param-sync:
@@ -1042,6 +1050,55 @@ services:
10421050
- ./:/project
10431051
- ./artifacts/build_data/logs/serverless-lambda-toplevel-statement:/var/log/datadog/dotnet
10441052

1053+
serverless-lambda-disabled-no-param-sync:
1054+
build:
1055+
context: ./artifacts/bin/Samples.AWS.Lambda
1056+
dockerfile: serverless.lambda.dockerfile
1057+
args:
1058+
- lambdaBaseImage=${lambdaBaseImage:-public.ecr.aws/lambda/dotnet:6}
1059+
- framework=${framework:-net6.0}
1060+
depends_on:
1061+
- serverless-dummy-api
1062+
command: "Samples.AWS.Lambda::Samples.AWS.Lambda.Function::HandlerNoParamSync"
1063+
image: dd-trace-dotnet/serverless-lambda-disabled-no-param-sync
1064+
environment:
1065+
- DD_TRACE_AGENT_URL=http://integrationtests:5002
1066+
- _DD_EXTENSION_ENDPOINT=http://integrationtests:9003
1067+
- DUMMY_API_HOST=http://serverless-dummy-api:9005
1068+
- DD_INSTRUMENTATION_TELEMETRY_ENABLED=0
1069+
- DD_TRACE_DEBUG=1
1070+
- DD_TRACE_AwsLambda_ENABLED=0
1071+
ports:
1072+
- "8080"
1073+
volumes:
1074+
- ./:/project
1075+
- ./artifacts/build_data/logs/serverless-lambda-no-param-sync:/var/log/datadog/dotnet
1076+
1077+
serverless-lambda-disabled-toplevel-statement:
1078+
build:
1079+
context: ./artifacts/bin/Samples.Amazon.Lambda.RuntimeSupport
1080+
dockerfile: serverless.lambda.dockerfile
1081+
args:
1082+
- lambdaBaseImage=${lambdaBaseImage:-public.ecr.aws/lambda/dotnet:6}
1083+
- framework=${framework:-net6.0}
1084+
depends_on:
1085+
- serverless-dummy-api
1086+
command: "Samples.Amazon.Lambda.RuntimeSupport"
1087+
image: dd-trace-dotnet/serverless-lambda-disabled-toplevel-statement
1088+
environment:
1089+
- DD_TRACE_AGENT_URL=http://integrationtests:5002
1090+
- _DD_EXTENSION_ENDPOINT=http://integrationtests:9003
1091+
- DUMMY_API_HOST=http://serverless-dummy-api:9005
1092+
- DD_INSTRUMENTATION_TELEMETRY_ENABLED=0
1093+
- DD_TRACE_ENABLED=0
1094+
- DD_TRACE_DEBUG=1
1095+
- DD_TRACE_AwsLambda_ENABLED=0
1096+
ports:
1097+
- "8080"
1098+
volumes:
1099+
- ./:/project
1100+
- ./artifacts/build_data/logs/serverless-lambda-toplevel-statement:/var/log/datadog/dotnet
1101+
10451102
# The serverless function calls this API, which always returns 200 OK
10461103
serverless-dummy-api:
10471104
image: andrewlock/ok-api:latest

‎tracer/test/Datadog.Trace.ClrProfiler.IntegrationTests/AWS/AwsLambdaTests.cs

+2-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ public async Task SubmitsTraces()
5656
+ 3 // throwing (manual only)
5757
+ 3 // throwing with context
5858
+ 8 // Generic types
59-
+ 1; // Toplevel Statement
59+
+ 1 // Toplevel Statement
60+
+ 2; // Disabled
6061

6162
var expectedSpans = requests * 2; // we manually instrument each request too
6263

‎tracer/test/test-applications/integrations/Samples.AWS.Lambda/Program.cs

+7-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,13 @@ private static async Task Main(string[] args)
121121
// Toplevel Statements
122122
Thread.Sleep(1000);
123123
await Post(Environment.GetEnvironmentVariable("AWS_LAMBDA_ENDPOINT_TOPLEVEL_STATEMENT"));
124-
124+
125+
// Disabled
126+
Thread.Sleep(1000);
127+
await Post(Environment.GetEnvironmentVariable("AWS_LAMBDA_ENDPOINT_DISABLED_NO_PARAM_SYNC"));
128+
Thread.Sleep(1000);
129+
await Post(Environment.GetEnvironmentVariable("AWS_LAMBDA_ENDPOINT_DISABLED_TOPLEVEL_STATEMENT"));
130+
125131
static async Task Post(string url)
126132
{
127133
HttpClient client = new HttpClient();

0 commit comments

Comments
 (0)
Failed to load comments.