Skip to content

Commit c4cace3

Browse files
committed
Upgrade to Log4j2 2.25.2
See gh-46334
1 parent b769520 commit c4cace3

File tree

2 files changed

+8
-36
lines changed

2 files changed

+8
-36
lines changed

core/spring-boot/src/main/java/org/springframework/boot/logging/log4j2/WhitespaceThrowablePatternConverter.java

Lines changed: 7 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,13 @@
1616

1717
package org.springframework.boot.logging.log4j2;
1818

19-
import org.apache.logging.log4j.core.LogEvent;
2019
import org.apache.logging.log4j.core.config.Configuration;
2120
import org.apache.logging.log4j.core.config.plugins.Plugin;
2221
import org.apache.logging.log4j.core.pattern.ConverterKeys;
23-
import org.apache.logging.log4j.core.pattern.ExtendedThrowablePatternConverter;
2422
import org.apache.logging.log4j.core.pattern.LogEventPatternConverter;
2523
import org.apache.logging.log4j.core.pattern.PatternConverter;
2624
import org.apache.logging.log4j.core.pattern.ThrowablePatternConverter;
25+
import org.apache.logging.log4j.core.pattern.VariablesNotEmptyReplacementConverter;
2726
import org.jspecify.annotations.Nullable;
2827

2928
/**
@@ -35,42 +34,15 @@
3534
*/
3635
@Plugin(name = "WhitespaceThrowablePatternConverter", category = PatternConverter.CATEGORY)
3736
@ConverterKeys({ "wEx", "wThrowable", "wException" })
38-
public final class WhitespaceThrowablePatternConverter extends LogEventPatternConverter {
37+
public final class WhitespaceThrowablePatternConverter {
3938

40-
private final ExtendedThrowablePatternConverter delegate;
41-
42-
private final String separator;
43-
44-
private WhitespaceThrowablePatternConverter(Configuration configuration, @Nullable String[] options) {
45-
super("WhitespaceThrowable", "throwable");
46-
this.delegate = ExtendedThrowablePatternConverter.newInstance(configuration, options);
47-
this.separator = this.delegate.getOptions().getSeparator();
48-
}
49-
50-
@Override
51-
public void format(LogEvent event, StringBuilder buffer) {
52-
if (event.getThrown() != null) {
53-
buffer.append(this.separator);
54-
this.delegate.format(event, buffer);
55-
buffer.append(this.separator);
56-
}
57-
}
58-
59-
@Override
60-
public boolean handlesThrowable() {
61-
return true;
39+
private WhitespaceThrowablePatternConverter() {
6240
}
6341

64-
/**
65-
* Creates a new instance of the class. Required by Log4J2.
66-
* @param configuration current configuration
67-
* @param options pattern options, may be null. If first element is "short", only the
68-
* first line of the throwable will be formatted.
69-
* @return a new {@code WhitespaceThrowablePatternConverter}
70-
*/
71-
public static WhitespaceThrowablePatternConverter newInstance(Configuration configuration,
72-
@Nullable String[] options) {
73-
return new WhitespaceThrowablePatternConverter(configuration, options);
42+
public static LogEventPatternConverter newInstance(Configuration configuration, String @Nullable [] options) {
43+
final String nested = (options != null && options.length > 0) ? "{" + String.join("}{", options) + "}" : "";
44+
final String pattern = "%notEmpty{%n%ex" + nested + "%n}";
45+
return VariablesNotEmptyReplacementConverter.newInstance(configuration, new String[] { pattern });
7446
}
7547

7648
}

platform/spring-boot-dependencies/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1252,7 +1252,7 @@ bom {
12521252
releaseNotes("https://github.com/liquibase/liquibase/releases/tag/v{version}")
12531253
}
12541254
}
1255-
library("Log4j2", "2.25.1") {
1255+
library("Log4j2", "2.25.2") {
12561256
prohibit {
12571257
contains "-alpha"
12581258
contains "-beta"

0 commit comments

Comments
 (0)