From 1bb23fc6d97afd51cd3f54e39b20723e2fe7df55 Mon Sep 17 00:00:00 2001 From: Mridula Peddada Date: Wed, 10 May 2023 23:42:04 -0400 Subject: [PATCH 1/2] fix(java): add native image configurations for logging-logback --- pom.xml | 14 +++++ .../reflect-config.json | 52 +++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 src/main/resources/META-INF/native-image/com.google.cloud/google-cloud-logging-logback/reflect-config.json diff --git a/pom.xml b/pom.xml index ce69462fa..4baae2276 100644 --- a/pom.xml +++ b/pom.xml @@ -224,6 +224,20 @@ org.codehaus.mojo flatten-maven-plugin + + org.apache.maven.plugins + maven-surefire-plugin + + + + + **/LoggingAppenderLogbackTest.java + **/MDCEventEnhancerTest.java + **/StackTraceTest.java + **/TraceLoggingEventEnhancerTest.java + + + diff --git a/src/main/resources/META-INF/native-image/com.google.cloud/google-cloud-logging-logback/reflect-config.json b/src/main/resources/META-INF/native-image/com.google.cloud/google-cloud-logging-logback/reflect-config.json new file mode 100644 index 000000000..68b566d6e --- /dev/null +++ b/src/main/resources/META-INF/native-image/com.google.cloud/google-cloud-logging-logback/reflect-config.json @@ -0,0 +1,52 @@ +[ + { + "name":"ch.qos.logback.classic.Level", + "methods":[{"name":"valueOf","parameterTypes":["java.lang.String"] }] + }, + { + "name":"ch.qos.logback.classic.filter.ThresholdFilter", + "queryAllPublicMethods":true, + "methods":[ + {"name":"","parameterTypes":[] }, + {"name":"setLevel","parameterTypes":["java.lang.String"] } + ] + }, + { + "name":"ch.qos.logback.core.UnsynchronizedAppenderBase", + "methods":[{"name":"addFilter","parameterTypes":["ch.qos.logback.core.filter.Filter"] }] + }, + { + "name":"com.google.cloud.logging.logback.LogbackBatchingSettings", + "queryAllPublicMethods":true, + "methods":[ + {"name":"","parameterTypes":[] }, + {"name":"setDelayThreshold","parameterTypes":["java.lang.Long"] }, + {"name":"setElementCountThreshold","parameterTypes":["java.lang.Long"] }, + {"name":"setLimitExceededBehavior","parameterTypes":["com.google.api.gax.batching.FlowController$LimitExceededBehavior"] }, + {"name":"setMaxOutstandingElementCount","parameterTypes":["java.lang.Long"] }, + {"name":"setMaxOutstandingRequestBytes","parameterTypes":["java.lang.Long"] }, + {"name":"setRequestByteThreshold","parameterTypes":["java.lang.Long"] } + ] + }, + { + "name":"com.google.cloud.logging.logback.LoggingAppender", + "queryAllPublicMethods":true, + "methods":[ + {"name":"","parameterTypes":[] }, + {"name":"setAutoPopulateMetadata","parameterTypes":["boolean"] }, + {"name":"setCredentialsFile","parameterTypes":["java.lang.String"] }, + {"name":"setFlushLevel","parameterTypes":["ch.qos.logback.classic.Level"] }, + {"name":"setLog","parameterTypes":["java.lang.String"] }, + {"name":"setLogDestinationProjectId","parameterTypes":["java.lang.String"] }, + {"name":"setLogbackBatchingSettings","parameterTypes":["com.google.cloud.logging.logback.LogbackBatchingSettings"] }, + {"name":"setPartialSuccess","parameterTypes":["boolean"] }, + {"name":"setRedirectToStdout","parameterTypes":["boolean"] }, + {"name":"setResourceType","parameterTypes":["java.lang.String"] }, + {"name":"setWriteSynchronicity","parameterTypes":["com.google.cloud.logging.Synchronicity"] } + ] + }, + { + "name":"java.lang.Long", + "methods":[{"name":"valueOf","parameterTypes":["java.lang.String"] }] + } +] From 20e3e88dc88bf5bc0ab6fe4e3c05ab7087f1828f Mon Sep 17 00:00:00 2001 From: Mridula Peddada Date: Wed, 10 May 2023 23:52:16 -0400 Subject: [PATCH 2/2] add exclusion to build script --- .kokoro/build.sh | 6 +++--- owlbot.py | 1 + pom.xml | 14 -------------- 3 files changed, 4 insertions(+), 17 deletions(-) diff --git a/.kokoro/build.sh b/.kokoro/build.sh index 1104d1e36..8deb35478 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -70,13 +70,13 @@ integration) RETURN_CODE=$? ;; graalvm) - # Run Unit and Integration Tests with Native Image - mvn -B ${INTEGRATION_TEST_ARGS} -ntp -Pnative test + # Run Unit and Integration Tests with Native Image. Skip tests that use mocking libs + mvn -B ${INTEGRATION_TEST_ARGS} -ntp -Pnative test "-Dtest=!LoggingAppenderTest" RETURN_CODE=$? ;; graalvm17) # Run Unit and Integration Tests with Native Image - mvn -B ${INTEGRATION_TEST_ARGS} -ntp -Pnative test + mvn -B ${INTEGRATION_TEST_ARGS} -ntp -Pnative test "-Dtest=!LoggingAppenderTest" RETURN_CODE=$? ;; samples) diff --git a/owlbot.py b/owlbot.py index 58368fdda..52797fb5e 100644 --- a/owlbot.py +++ b/owlbot.py @@ -25,6 +25,7 @@ 'CONTRIBUTING.md', '.github/auto-label.yaml', ".github/release-please.yml", + ".kokoro/build.sh" ]) # -------------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 4baae2276..ce69462fa 100644 --- a/pom.xml +++ b/pom.xml @@ -224,20 +224,6 @@ org.codehaus.mojo flatten-maven-plugin - - org.apache.maven.plugins - maven-surefire-plugin - - - - - **/LoggingAppenderLogbackTest.java - **/MDCEventEnhancerTest.java - **/StackTraceTest.java - **/TraceLoggingEventEnhancerTest.java - - -