From f82f28a1a3fc23602953a296433cbe66ad535b01 Mon Sep 17 00:00:00 2001 From: Vasi Vasireddy Date: Mon, 30 Dec 2024 13:06:58 -0800 Subject: [PATCH 1/5] go mod tidy for sample app --- go/build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/go/build.sh b/go/build.sh index d6ae655a8..cc0fc0ed3 100755 --- a/go/build.sh +++ b/go/build.sh @@ -9,4 +9,5 @@ popd || exit # Build sample app cd ../opentelemetry-lambda/go/sample-apps/function || exit +go mod tidy CGO_ENABLED=0 ./build.sh From a5def3818d2fa304303597eb46b07bb4e74ce41d Mon Sep 17 00:00:00 2001 From: Vasi Vasireddy Date: Mon, 30 Dec 2024 13:07:20 -0800 Subject: [PATCH 2/5] use debug exporter in config --- java/integration-tests/aws-sdk/agent-confmap/main.tf | 4 ++-- java/integration-tests/aws-sdk/agent/main.tf | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/java/integration-tests/aws-sdk/agent-confmap/main.tf b/java/integration-tests/aws-sdk/agent-confmap/main.tf index 16ae8f8fe..4144e3328 100644 --- a/java/integration-tests/aws-sdk/agent-confmap/main.tf +++ b/java/integration-tests/aws-sdk/agent-confmap/main.tf @@ -82,7 +82,7 @@ receivers: http: endpoint: "localhost:4318" exporters: - logging: + debug: awsxray: prometheusremotewrite: $${${module.remote_configuration.configuration_uri}} @@ -95,7 +95,7 @@ service: exporters: [awsxray] metrics: receivers: [otlp] - exporters: [logging, prometheusremotewrite] + exporters: [debug, prometheusremotewrite] telemetry: metrics: address: localhost:8888 diff --git a/java/integration-tests/aws-sdk/agent/main.tf b/java/integration-tests/aws-sdk/agent/main.tf index ead635918..2009a72f3 100644 --- a/java/integration-tests/aws-sdk/agent/main.tf +++ b/java/integration-tests/aws-sdk/agent/main.tf @@ -62,7 +62,7 @@ receivers: http: endpoint: "localhost:4318" exporters: - logging: + debug: awsxray: prometheusremotewrite: endpoint: "${aws_prometheus_workspace.test_amp_workspace[0].prometheus_endpoint}api/v1/remote_write" @@ -78,7 +78,7 @@ service: exporters: [awsxray] metrics: receivers: [otlp] - exporters: [logging, prometheusremotewrite] + exporters: [debug, prometheusremotewrite] telemetry: metrics: address: localhost:8888 From 180fa48cf373a25e92052564204b041bd1f91265 Mon Sep 17 00:00:00 2001 From: Vasi Vasireddy Date: Mon, 30 Dec 2024 13:07:53 -0800 Subject: [PATCH 3/5] use xray-lambda when using active tracing --- python/scripts/otel-instrument | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/scripts/otel-instrument b/python/scripts/otel-instrument index 3c6d6b8a3..e77d47cb5 100755 --- a/python/scripts/otel-instrument +++ b/python/scripts/otel-instrument @@ -19,7 +19,7 @@ END_DOCUMENTATION # - Set `OTEL_PROPAGATORS` if not yet set, and include the xray propagator if [ -z ${OTEL_PROPAGATORS} ]; then - export OTEL_PROPAGATORS="tracecontext,baggage,xray"; + export OTEL_PROPAGATORS="tracecontext,baggage,xray-lambda"; fi # - Call the upstream configure OTel script From 85209bcae1dd66c9c4f44f916657f1fde992c3e0 Mon Sep 17 00:00:00 2001 From: Vasi Vasireddy Date: Mon, 30 Dec 2024 14:01:51 -0800 Subject: [PATCH 4/5] modify compatible run times for nodejs --- java/integration-tests/aws-sdk/agent-confmap/main.tf | 2 +- java/integration-tests/aws-sdk/agent/main.tf | 2 +- java/integration-tests/aws-sdk/wrapper/main.tf | 2 +- java/integration-tests/okhttp/wrapper/main.tf | 2 +- nodejs/integration-tests/aws-sdk/wrapper/main.tf | 4 ++-- python/integration-tests/aws-sdk/wrapper/main.tf | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/java/integration-tests/aws-sdk/agent-confmap/main.tf b/java/integration-tests/aws-sdk/agent-confmap/main.tf index 4144e3328..2c341b138 100644 --- a/java/integration-tests/aws-sdk/agent-confmap/main.tf +++ b/java/integration-tests/aws-sdk/agent-confmap/main.tf @@ -16,7 +16,7 @@ resource "aws_lambda_layer_version" "collector_layer" { count = var.enable_collector_layer ? 1 : 0 layer_name = var.collector_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip" - compatible_runtimes = ["nodejs14.x", "nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip") } diff --git a/java/integration-tests/aws-sdk/agent/main.tf b/java/integration-tests/aws-sdk/agent/main.tf index 2009a72f3..51c913f1e 100644 --- a/java/integration-tests/aws-sdk/agent/main.tf +++ b/java/integration-tests/aws-sdk/agent/main.tf @@ -14,7 +14,7 @@ resource "aws_lambda_layer_version" "collector_layer" { count = var.enable_collector_layer ? 1 : 0 layer_name = var.collector_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip" - compatible_runtimes = ["nodejs14.x", "nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip") } diff --git a/java/integration-tests/aws-sdk/wrapper/main.tf b/java/integration-tests/aws-sdk/wrapper/main.tf index ef2689d14..fec717ae0 100644 --- a/java/integration-tests/aws-sdk/wrapper/main.tf +++ b/java/integration-tests/aws-sdk/wrapper/main.tf @@ -14,7 +14,7 @@ resource "aws_lambda_layer_version" "collector_layer" { count = var.enable_collector_layer ? 1 : 0 layer_name = var.collector_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip" - compatible_runtimes = ["nodejs14.x", "nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip") } diff --git a/java/integration-tests/okhttp/wrapper/main.tf b/java/integration-tests/okhttp/wrapper/main.tf index df942607f..3d41ee853 100644 --- a/java/integration-tests/okhttp/wrapper/main.tf +++ b/java/integration-tests/okhttp/wrapper/main.tf @@ -14,7 +14,7 @@ resource "aws_lambda_layer_version" "collector_layer" { count = var.enable_collector_layer ? 1 : 0 layer_name = var.collector_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip" - compatible_runtimes = ["nodejs14.x", "nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip") } diff --git a/nodejs/integration-tests/aws-sdk/wrapper/main.tf b/nodejs/integration-tests/aws-sdk/wrapper/main.tf index 2077d4f8b..b54dfe988 100644 --- a/nodejs/integration-tests/aws-sdk/wrapper/main.tf +++ b/nodejs/integration-tests/aws-sdk/wrapper/main.tf @@ -5,7 +5,7 @@ locals { resource "aws_lambda_layer_version" "sdk_layer" { layer_name = var.sdk_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/nodejs/packages/layer/build/layer.zip" - compatible_runtimes = ["nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/nodejs/packages/layer/build/layer.zip") } @@ -14,7 +14,7 @@ resource "aws_lambda_layer_version" "collector_layer" { count = var.enable_collector_layer ? 1 : 0 layer_name = var.collector_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip" - compatible_runtimes = ["nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip") } diff --git a/python/integration-tests/aws-sdk/wrapper/main.tf b/python/integration-tests/aws-sdk/wrapper/main.tf index d37cc2624..97777902f 100644 --- a/python/integration-tests/aws-sdk/wrapper/main.tf +++ b/python/integration-tests/aws-sdk/wrapper/main.tf @@ -14,7 +14,7 @@ resource "aws_lambda_layer_version" "collector_layer" { count = var.enable_collector_layer ? 1 : 0 layer_name = var.collector_layer_name filename = "${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip" - compatible_runtimes = ["nodejs14.x", "nodejs16.x", "nodejs18.x"] + compatible_runtimes = ["nodejs16.x", "nodejs18.x", "nodejs20.x", "nodejs22.x"] license_info = "Apache-2.0" source_code_hash = filebase64sha256("${path.module}/../../../../opentelemetry-lambda/collector/build/opentelemetry-collector-layer-${local.architecture}.zip") } From 56dbda70c70eeee140c1840f38590f3ac15bf192 Mon Sep 17 00:00:00 2001 From: Vasi Vasireddy Date: Mon, 30 Dec 2024 16:55:48 -0800 Subject: [PATCH 5/5] use OTEL Propagators in nodejs script --- nodejs/scripts/otel-handler | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nodejs/scripts/otel-handler b/nodejs/scripts/otel-handler index b18210abd..bc65c5a35 100755 --- a/nodejs/scripts/otel-handler +++ b/nodejs/scripts/otel-handler @@ -2,4 +2,8 @@ export NODE_OPTIONS="--require /opt/adot-extension.js ${NODE_OPTIONS}" +if [[ -z "$OTEL_PROPAGATORS" ]]; then + export OTEL_PROPAGATORS="tracecontext,baggage,xray-lambda" +fi + source /opt/otel-handler-upstream