[BAEL-1300] Custom Logback Appender (#3193)
* BAEL-1300 Custom logback appender * BAEL-1300 fix to logback module * relativePath
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
package com.baeldung.logback;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
public class Example {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(Example.class);
|
||||
|
||||
public static void main(String[] args) {
|
||||
logger.info("Example log from {}", Example.class.getSimpleName());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.baeldung.logback;
|
||||
|
||||
import ch.qos.logback.classic.spi.ILoggingEvent;
|
||||
import ch.qos.logback.core.AppenderBase;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class MapAppender extends AppenderBase<ILoggingEvent> {
|
||||
|
||||
private final Map<String, ILoggingEvent> eventMap = new HashMap<>();
|
||||
|
||||
private String prefix;
|
||||
|
||||
@Override
|
||||
protected void append(final ILoggingEvent event) {
|
||||
if (prefix == null || "".equals(prefix)) {
|
||||
addError("Prefix is not set for MapAppender.");
|
||||
return;
|
||||
}
|
||||
|
||||
eventMap.put(prefix + System.currentTimeMillis(), event);
|
||||
}
|
||||
|
||||
public String getPrefix() {
|
||||
return prefix;
|
||||
}
|
||||
|
||||
public void setPrefix(final String prefix) {
|
||||
this.prefix = prefix;
|
||||
}
|
||||
|
||||
public Map<String, ILoggingEvent> getEventMap() {
|
||||
return eventMap;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
<configuration>
|
||||
|
||||
<appender name="map" class="com.baeldung.logback.MapAppender">
|
||||
<prefix>test</prefix>
|
||||
</appender>
|
||||
|
||||
<appender name="out" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<root level="info">
|
||||
<appender-ref ref="map"/>
|
||||
<appender-ref ref="out"/>
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
Reference in New Issue
Block a user