Skip to content

Commit cc863c4

Browse files
committed
Debug not found appender on Linux.
1 parent f3cfd5d commit cc863c4

3 files changed

Lines changed: 11 additions & 36 deletions

File tree

powertools-logging/powertools-logging-log4j/src/main/java/software/amazon/lambda/powertools/logging/log4j/BufferingAppender.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414

1515
package software.amazon.lambda.powertools.logging.log4j;
1616

17-
import static software.amazon.lambda.powertools.logging.log4j.Log4jConstants.BUFFERING_APPENDER_PLUGIN_NAME;
18-
1917
import java.io.Serializable;
2018
import java.util.Deque;
2119

@@ -83,7 +81,7 @@
8381
*
8482
* @see software.amazon.lambda.powertools.logging.PowertoolsLogging#flushBuffer()
8583
*/
86-
@Plugin(name = BUFFERING_APPENDER_PLUGIN_NAME, category = Core.CATEGORY_NAME, elementType = Appender.ELEMENT_TYPE)
84+
@Plugin(name = "BufferingAppender", category = Core.CATEGORY_NAME, elementType = Appender.ELEMENT_TYPE)
8785
public class BufferingAppender extends AbstractAppender implements BufferManager {
8886

8987
private final AppenderRef[] appenderRefs;

powertools-logging/powertools-logging-log4j/src/main/java/software/amazon/lambda/powertools/logging/log4j/Log4jConstants.java

Lines changed: 0 additions & 30 deletions
This file was deleted.

powertools-logging/powertools-logging-log4j/src/test/java/software/amazon/lambda/powertools/logging/log4j/BufferingAppenderTest.java

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212

1313
import org.apache.logging.log4j.LogManager;
1414
import org.apache.logging.log4j.Logger;
15+
import org.apache.logging.log4j.core.Appender;
16+
import org.apache.logging.log4j.core.LoggerContext;
1517
import org.junit.jupiter.api.AfterEach;
1618
import org.junit.jupiter.api.BeforeEach;
1719
import org.junit.jupiter.api.Test;
@@ -116,7 +118,7 @@ void shouldLogOverflowWarningWhenBufferOverflows() {
116118
for (int i = 0; i < 100; i++) {
117119
logger.debug("Debug message " + i);
118120
}
119-
121+
120122
// When - flush buffer to trigger overflow warning
121123
BufferingAppender appender = getBufferingAppender();
122124
appender.flushBuffer();
@@ -128,7 +130,12 @@ void shouldLogOverflowWarningWhenBufferOverflows() {
128130
}
129131

130132
private BufferingAppender getBufferingAppender() {
131-
return (BufferingAppender) ((org.apache.logging.log4j.core.LoggerContext) LogManager.getContext(false))
132-
.getConfiguration().getAppender(Log4jConstants.BUFFERING_APPENDER_PLUGIN_NAME);
133+
LoggerContext context = (LoggerContext) LogManager.getContext(false);
134+
Appender appender = context.getConfiguration().getAppender("BufferingAppender");
135+
if (appender == null) {
136+
throw new IllegalStateException("BufferingAppender not found in configuration. Available appenders: " +
137+
context.getConfiguration().getAppenders().keySet());
138+
}
139+
return (BufferingAppender) appender;
133140
}
134141
}

0 commit comments

Comments
 (0)