Someone know if that's possible to make a listener on the log4j for catching every log from a named method/class ? The finality is to add the retrieved log into a JPanel.
log4j2.xml
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="ERROR" name="config">
<Properties>
<Property name="LOG_DIR">logs</Property>
<Property name="ARCHIVE">logs/archive</Property>
<Property name="PATTERN">%-5level %d [%t] %c:%M(%L): %m%n</Property>
</Properties>
<Appenders>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="${PATTERN}"/>
</Console>
<RollingFile name="fileWriter"
fileName="${LOG_DIR}/logs.log"
filePattern="${ARCHIVE}/logs.log.%d{yyyy-MM-dd-hh-mm}.gz">
<PatternLayout pattern="${PATTERN}"/>
<TimeBasedTriggeringPolicy/>
</RollingFile>
</Appenders>
<Loggers>
<Root level="INFO">
<AppenderRef ref="fileWriter"/>
</Root>
</Loggers>
</Configuration>
Log example
public class MyClass() {
private final static Logger logger = LogManager.getLogger();
public void method() {
logger.info("Some text...");
logger.info("More text...");
}
}
Thanks!