diff --git a/examples/powertools-examples-core-utilities/terraform/pom.xml b/examples/powertools-examples-core-utilities/terraform/pom.xml index 14c0e223e..a6237b00f 100644 --- a/examples/powertools-examples-core-utilities/terraform/pom.xml +++ b/examples/powertools-examples-core-utilities/terraform/pom.xml @@ -1,5 +1,5 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 Powertools for AWS Lambda (Java) - Examples - Core Utilities (logging, tracing, metrics) with Terraform @@ -101,7 +101,8 @@ false - + @@ -126,7 +127,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 handler diff --git a/examples/powertools-examples-parameters/sam-graalvm/pom.xml b/examples/powertools-examples-parameters/sam-graalvm/pom.xml index 6d0c3f4a2..09401eeff 100644 --- a/examples/powertools-examples-parameters/sam-graalvm/pom.xml +++ b/examples/powertools-examples-parameters/sam-graalvm/pom.xml @@ -1,5 +1,5 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 software.amazon.lambda.examples 2.8.0 @@ -98,8 +98,6 @@ org.apache.maven.plugins maven-surefire-plugin - - 3.5.4 dev.aspectj @@ -144,7 +142,8 @@ false - + diff --git a/examples/powertools-examples-parameters/sam/pom.xml b/examples/powertools-examples-parameters/sam/pom.xml index 15d68ffcd..3e8f99aa0 100644 --- a/examples/powertools-examples-parameters/sam/pom.xml +++ b/examples/powertools-examples-parameters/sam/pom.xml @@ -1,5 +1,5 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4.0.0 software.amazon.lambda.examples 2.8.0 @@ -72,8 +72,6 @@ org.apache.maven.plugins maven-surefire-plugin - - 3.5.4 dev.aspectj diff --git a/pom.xml b/pom.xml index 1e4c3a9fd..6f6a9ce10 100644 --- a/pom.xml +++ b/pom.xml @@ -95,7 +95,6 @@ 3.14.1 1.9.7 1.13.1 - 3.2.5 0.8.11 1.6.13 3.12.0 @@ -625,7 +624,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 @{argLine} diff --git a/powertools-common/pom.xml b/powertools-common/pom.xml index f14783b5b..551fae8bc 100644 --- a/powertools-common/pom.xml +++ b/powertools-common/pom.xml @@ -106,7 +106,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent diff --git a/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaConstants.java b/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaConstants.java index 69fc1283a..4c4e8e9db 100644 --- a/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaConstants.java +++ b/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaConstants.java @@ -28,4 +28,6 @@ private LambdaConstants() { public static final String ROOT_EQUALS = "Root="; public static final String POWERTOOLS_SERVICE_NAME = "POWERTOOLS_SERVICE_NAME"; public static final String SERVICE_UNDEFINED = "service_undefined"; + public static final String AWS_LAMBDA_INITIALIZATION_TYPE = "AWS_LAMBDA_INITIALIZATION_TYPE"; + public static final String ON_DEMAND_INVOCATION_TYPE = "on-demand"; } diff --git a/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessor.java b/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessor.java index 393835d1e..15bff15d6 100644 --- a/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessor.java +++ b/powertools-common/src/main/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessor.java @@ -93,7 +93,14 @@ protected static void resetServiceName() { } public static boolean isColdStart() { - return isColdStart == null; + if (isColdStart != null) { + return isColdStart; + } + + String initType = System.getenv(LambdaConstants.AWS_LAMBDA_INITIALIZATION_TYPE); + isColdStart = LambdaConstants.ON_DEMAND_INVOCATION_TYPE.equals(initType); + + return isColdStart; } public static void coldStartDone() { diff --git a/powertools-common/src/test/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessorTest.java b/powertools-common/src/test/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessorTest.java index 5c6bdc020..0726a9e77 100644 --- a/powertools-common/src/test/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessorTest.java +++ b/powertools-common/src/test/java/software/amazon/lambda/powertools/common/internal/LambdaHandlerProcessorTest.java @@ -216,6 +216,7 @@ void extractContext_notKnownHandler() { } @Test + @SetEnvironmentVariable(key = LambdaConstants.AWS_LAMBDA_INITIALIZATION_TYPE, value = LambdaConstants.ON_DEMAND_INVOCATION_TYPE) void isColdStart() { boolean isColdStart = LambdaHandlerProcessor.isColdStart(); diff --git a/powertools-e2e-tests/pom.xml b/powertools-e2e-tests/pom.xml index 484e3b4c2..bfd4350a0 100644 --- a/powertools-e2e-tests/pom.xml +++ b/powertools-e2e-tests/pom.xml @@ -214,7 +214,6 @@ org.apache.maven.plugins maven-failsafe-plugin - 3.5.4 @@ -241,7 +240,6 @@ org.apache.maven.plugins maven-failsafe-plugin - 3.5.4 diff --git a/powertools-logging/pom.xml b/powertools-logging/pom.xml index ae5788291..923d6d133 100644 --- a/powertools-logging/pom.xml +++ b/powertools-logging/pom.xml @@ -123,7 +123,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent @@ -182,11 +181,11 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 JSON testService + on-demand diff --git a/powertools-logging/powertools-logging-log4j/pom.xml b/powertools-logging/powertools-logging-log4j/pom.xml index 1cf3bf265..19a8b9428 100644 --- a/powertools-logging/powertools-logging-log4j/pom.xml +++ b/powertools-logging/powertools-logging-log4j/pom.xml @@ -112,7 +112,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent @@ -204,12 +203,12 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 testLog4j eu-central-1 <_X_AMZN_TRACE_ID>Root=1-63441c4a-abcdef012345678912345678 + on-demand diff --git a/powertools-logging/powertools-logging-logback/pom.xml b/powertools-logging/powertools-logging-logback/pom.xml index b5a50573d..7ed1f1a17 100644 --- a/powertools-logging/powertools-logging-logback/pom.xml +++ b/powertools-logging/powertools-logging-logback/pom.xml @@ -110,7 +110,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent @@ -203,12 +202,12 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 testLogback eu-central-1 <_X_AMZN_TRACE_ID>Root=1-63441c4a-abcdef012345678912345678 + on-demand diff --git a/powertools-metrics/pom.xml b/powertools-metrics/pom.xml index 4da0c0a9f..86bdcc560 100644 --- a/powertools-metrics/pom.xml +++ b/powertools-metrics/pom.xml @@ -231,6 +231,7 @@ Lambda + on-demand diff --git a/powertools-parameters/pom.xml b/powertools-parameters/pom.xml index a2c4a65dc..78234b5cc 100644 --- a/powertools-parameters/pom.xml +++ b/powertools-parameters/pom.xml @@ -80,7 +80,6 @@ maven-surefire-plugin - 3.5.4 eu-central-1 @@ -98,7 +97,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent diff --git a/powertools-parameters/powertools-parameters-appconfig/pom.xml b/powertools-parameters/powertools-parameters-appconfig/pom.xml index ab8ae0e67..3c38963a1 100644 --- a/powertools-parameters/powertools-parameters-appconfig/pom.xml +++ b/powertools-parameters/powertools-parameters-appconfig/pom.xml @@ -108,7 +108,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent @@ -175,7 +174,6 @@ maven-surefire-plugin - 3.5.4 eu-central-1 diff --git a/powertools-parameters/powertools-parameters-dynamodb/pom.xml b/powertools-parameters/powertools-parameters-dynamodb/pom.xml index 76a7b8845..b9e48567a 100644 --- a/powertools-parameters/powertools-parameters-dynamodb/pom.xml +++ b/powertools-parameters/powertools-parameters-dynamodb/pom.xml @@ -109,7 +109,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent @@ -176,7 +175,6 @@ maven-surefire-plugin - 3.5.4 eu-central-1 diff --git a/powertools-parameters/powertools-parameters-secrets/pom.xml b/powertools-parameters/powertools-parameters-secrets/pom.xml index fbe4905be..c83c674d5 100644 --- a/powertools-parameters/powertools-parameters-secrets/pom.xml +++ b/powertools-parameters/powertools-parameters-secrets/pom.xml @@ -109,7 +109,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent @@ -176,7 +175,6 @@ maven-surefire-plugin - 3.5.4 eu-central-1 diff --git a/powertools-parameters/powertools-parameters-ssm/pom.xml b/powertools-parameters/powertools-parameters-ssm/pom.xml index c9de1db51..d23b84bf6 100644 --- a/powertools-parameters/powertools-parameters-ssm/pom.xml +++ b/powertools-parameters/powertools-parameters-ssm/pom.xml @@ -98,7 +98,6 @@ maven-surefire-plugin - 3.5.4 eu-central-1 @@ -123,7 +122,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent diff --git a/powertools-parameters/powertools-parameters-tests/pom.xml b/powertools-parameters/powertools-parameters-tests/pom.xml index 3bcd4d604..9b93b3f79 100644 --- a/powertools-parameters/powertools-parameters-tests/pom.xml +++ b/powertools-parameters/powertools-parameters-tests/pom.xml @@ -110,7 +110,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent diff --git a/powertools-serialization/pom.xml b/powertools-serialization/pom.xml index c1eea4df7..535f23190 100644 --- a/powertools-serialization/pom.xml +++ b/powertools-serialization/pom.xml @@ -107,7 +107,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent diff --git a/powertools-tracing/pom.xml b/powertools-tracing/pom.xml index ed2596059..9e5603d70 100644 --- a/powertools-tracing/pom.xml +++ b/powertools-tracing/pom.xml @@ -129,6 +129,20 @@ + + + + org.apache.maven.plugins + maven-surefire-plugin + + + on-demand + + + + + + generate-graalvm-files @@ -137,7 +151,6 @@ org.apache.maven.plugins maven-surefire-plugin - 3.5.4 -Dorg.graalvm.nativeimage.imagecode=agent