diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index c707358..ed8d009 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -19,7 +19,7 @@ jobs:
- uses: actions/setup-java@v3
with:
distribution: temurin
- java-version: 11
+ java-version: 17
cache: maven
- run: mvn $MAVEN_ARGS dependency:go-offline
- run: mvn $MAVEN_ARGS deploy
diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml
index 2034d14..f50580b 100644
--- a/.github/workflows/pr.yaml
+++ b/.github/workflows/pr.yaml
@@ -30,7 +30,7 @@ jobs:
- uses: actions/setup-java@v3
with:
distribution: temurin
- java-version: 11
+ java-version: 17
cache: maven
- run: mvn $MAVEN_ARGS dependency:go-offline
- run: mvn $MAVEN_ARGS verify
diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml
index 22c372f..4c719f1 100644
--- a/.github/workflows/release.yaml
+++ b/.github/workflows/release.yaml
@@ -22,7 +22,7 @@ jobs:
- uses: actions/setup-java@v3
with:
distribution: temurin
- java-version: 11
+ java-version: 17
cache: maven
server-id: sonatype-nexus
server-username: SERVER_USERNAME
diff --git a/pom.xml b/pom.xml
index 940c33a..e305f70 100644
--- a/pom.xml
+++ b/pom.xml
@@ -62,8 +62,8 @@
- 11
- 11
+ 17
+ 17
diff --git a/src/main/java/io/kokuwa/micronaut/logging/configurator/RootAutoSelectAppenderAction.java b/src/main/java/io/kokuwa/micronaut/logging/configurator/RootAutoSelectAppenderAction.java
index 1353690..1d0db03 100644
--- a/src/main/java/io/kokuwa/micronaut/logging/configurator/RootAutoSelectAppenderAction.java
+++ b/src/main/java/io/kokuwa/micronaut/logging/configurator/RootAutoSelectAppenderAction.java
@@ -30,12 +30,13 @@ public class RootAutoSelectAppenderAction extends Action {
private static final String APPENDER_GCP = "GCP";
private static final String LOGBACK_APPENDER = "LOGBACK_APPENDER";
private static final String LOGBACK_PATTERN = "LOGBACK_PATTERN";
- private static final String LOGBACK_PATTERN_DEFAULT = "%cyan(%d{HH:mm:ss.SSS})"
- + " %gray(%-6.6thread)"
- + " %highlight(%-5level)"
- + " %magenta(%32logger{32})"
- + " %mdc"
- + " %msg%n";
+ private static final String LOGBACK_PATTERN_DEFAULT = """
+ %cyan(%d{HH:mm:ss.SSS}) \
+ %gray(%-6.6thread) \
+ %highlight(%-5level) \
+ %magenta(%32logger{32}) \
+ %mdc \
+ %msg%n""";
@Override
public void begin(SaxEventInterpretationContext ic, String name, org.xml.sax.Attributes attributes) {
@@ -70,21 +71,15 @@ public class RootAutoSelectAppenderAction extends Action {
private void setAppender(Logger rootLogger, String appenderName) {
addInfo("Use appender: " + appenderName);
- Layout layout;
- switch (appenderName) {
- case APPENDER_JSON:
- layout = json();
- break;
- case APPENDER_GCP:
- layout = gcp();
- break;
- case APPENDER_CONSOLE:
- layout = console();
- break;
- default:
+ var layout = switch (appenderName) {
+ case APPENDER_JSON -> json();
+ case APPENDER_GCP -> gcp();
+ case APPENDER_CONSOLE -> console();
+ default -> {
addError("Appender " + appenderName + " not found. Using console ...");
- layout = console();
- }
+ yield console();
+ }
+ };
layout.start();
var encoder = new LayoutWrappingEncoder();
diff --git a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java
index a59b425..a5a8b85 100644
--- a/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java
+++ b/src/main/java/io/kokuwa/micronaut/logging/http/mdc/HeaderMdcFilter.java
@@ -3,8 +3,6 @@ package io.kokuwa.micronaut.logging.http.mdc;
import java.util.HashMap;
import java.util.List;
import java.util.Optional;
-import java.util.Set;
-import java.util.stream.Collectors;
import org.reactivestreams.Publisher;
@@ -33,14 +31,14 @@ public class HeaderMdcFilter extends AbstractMdcFilter {
public static final String PREFIX = "logger.http.header";
public static final int DEFAULT_ORDER = ServerFilterPhase.FIRST.before();
- private final Set headers;
+ private final List headers;
public HeaderMdcFilter(
@Value("${" + PREFIX + ".names}") List headers,
@Value("${" + PREFIX + ".prefix}") Optional prefix,
@Value("${" + PREFIX + ".order}") Optional order) {
super(order.orElse(DEFAULT_ORDER), prefix.orElse(null));
- this.headers = headers.stream().map(String::toLowerCase).collect(Collectors.toSet());
+ this.headers = headers.stream().map(String::toLowerCase).toList();
log.info("Configured with header names {}", headers);
}
@@ -48,9 +46,7 @@ public class HeaderMdcFilter extends AbstractMdcFilter {
public Publisher> doFilter(HttpRequest> request, ServerFilterChain chain) {
var mdc = new HashMap();
for (var header : headers) {
- request.getHeaders()
- .getFirst(header)
- .ifPresent(value -> mdc.put(header, String.valueOf(value)));
+ request.getHeaders().getFirst(header).ifPresent(value -> mdc.put(header, String.valueOf(value)));
}
return doFilter(request, chain, mdc);
}
diff --git a/src/main/java/io/kokuwa/micronaut/logging/layout/JsonLayout.java b/src/main/java/io/kokuwa/micronaut/logging/layout/JsonLayout.java
index 9617549..48677e2 100644
--- a/src/main/java/io/kokuwa/micronaut/logging/layout/JsonLayout.java
+++ b/src/main/java/io/kokuwa/micronaut/logging/layout/JsonLayout.java
@@ -90,7 +90,7 @@ public class JsonLayout extends LayoutBase {
var throwableProxy = value.getThrowableProxy();
if (throwableProxy != null) {
var ex = throwableHandlingConverter.convert(value);
- if (ex != null && !ex.equals("")) {
+ if (ex != null && !ex.isEmpty()) {
map.put(fieldName, ex);
}
}
diff --git a/src/test/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilterTest.java b/src/test/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilterTest.java
index 3654d4d..3b7ac78 100644
--- a/src/test/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilterTest.java
+++ b/src/test/java/io/kokuwa/micronaut/logging/http/mdc/PathMdcFilterTest.java
@@ -89,9 +89,9 @@ public class PathMdcFilterTest extends AbstractFilterTest {
@DisplayName("mdc: test for documentation example")
@Test
- @Property(name = "logger.http.path.patterns", value = ""
- + "\\/gateway\\/(?[a-f0-9\\-]{36}),"
- + "\\/gateway\\/(?[a-f0-9\\-]{36})\\/configuration\\/(?[a-z]+)")
+ @Property(name = "logger.http.path.patterns", value = """
+ \\/gateway\\/(?[a-f0-9\\-]{36}),\
+ \\/gateway\\/(?[a-f0-9\\-]{36})\\/configuration\\/(?[a-z]+)""")
void mdcMatchExample() {
var uuid = UUID.randomUUID().toString();
assertContext(Map.of("gatewayId", uuid), "/gateway/" + uuid);