1
0
mirror of https://github.com/sismics/docs.git synced 2025-12-16 11:15:07 +00:00

log4j -> logback

This commit is contained in:
bgamard
2023-04-12 12:16:04 +02:00
parent 95e0b870f6
commit 97d6e8f528
18 changed files with 180 additions and 169 deletions

View File

@@ -62,16 +62,6 @@
<artifactId>jsoup</artifactId>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
@@ -82,6 +72,21 @@
<artifactId>jcl-over-slf4j</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
<dependency>
<groupId>at.favre.lib</groupId>
<artifactId>bcrypt</artifactId>

View File

@@ -1,7 +1,8 @@
package com.sismics.util.io;
import com.google.common.io.Closer;
import org.apache.log4j.Logger;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.BufferedReader;
import java.io.IOException;
@@ -15,7 +16,7 @@ import java.io.InputStreamReader;
*/
public class InputStreamReaderThread extends Thread {
private static final Logger logger = Logger.getLogger(InputStreamReaderThread.class);
private static final Logger logger = LoggerFactory.getLogger(InputStreamReaderThread.class);
private InputStream is;

View File

@@ -1,7 +1,7 @@
package com.sismics.util.log4j;
package com.sismics.util.logback;
import ch.qos.logback.classic.Level;
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Level;
/**
* Log search criteria.

View File

@@ -1,6 +1,7 @@
package com.sismics.util.log4j;
package com.sismics.util.logback;
import org.apache.log4j.Level;
import ch.qos.logback.classic.Level;
/**
* Log entry.

View File

@@ -1,25 +1,22 @@
package com.sismics.util.log4j;
package com.sismics.util.logback;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.AppenderBase;
import com.google.common.collect.Lists;
import com.sismics.docs.core.util.jpa.PaginatedList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
import java.util.concurrent.ConcurrentLinkedQueue;
import org.apache.log4j.AppenderSkeleton;
import org.apache.log4j.Level;
import org.apache.log4j.helpers.LogLog;
import org.apache.log4j.spi.LoggingEvent;
import com.google.common.collect.Lists;
import com.sismics.docs.core.util.jpa.PaginatedList;
/**
* Memory appender for Log4J.
* Memory appender for Logback.
*
* @author jtremeaux
*/
public class MemoryAppender extends AppenderSkeleton {
public class MemoryAppender extends AppenderBase<ILoggingEvent> {
/**
* Maximum size of the queue.
@@ -29,34 +26,18 @@ public class MemoryAppender extends AppenderSkeleton {
/**
* Queue of log entries.
*/
private final Queue<LogEntry> logQueue = new ConcurrentLinkedQueue<LogEntry>();
private static final Queue<LogEntry> logQueue = new ConcurrentLinkedQueue<>();
@Override
public boolean requiresLayout() {
return false;
}
@Override
public synchronized void close() {
if (closed) {
return;
}
closed = true;
}
@Override
public synchronized void append(LoggingEvent event) {
protected void append(ILoggingEvent event) {
while (logQueue.size() > size) {
logQueue.remove();
}
if (closed) {
LogLog.warn("This appender is already closed, cannot append event.");
return;
}
String loggerName = getLoggerName(event);
LogEntry logEntry = new LogEntry(System.currentTimeMillis(), event.getLevel(), loggerName, event.getMessage().toString());
LogEntry logEntry = new LogEntry(System.currentTimeMillis(), event.getLevel(), loggerName, event.getMessage());
logQueue.add(logEntry);
}
@@ -66,7 +47,7 @@ public class MemoryAppender extends AppenderSkeleton {
* @param event Event
* @return Class name
*/
private String getLoggerName(LoggingEvent event) {
private String getLoggerName(ILoggingEvent event) {
int index = event.getLoggerName().lastIndexOf('.');
return (index > -1) ?
@@ -75,12 +56,12 @@ public class MemoryAppender extends AppenderSkeleton {
}
/**
* Getter of logList.
* Getter of size.
*
* @return logList
* @return size
*/
public Queue<LogEntry> getLogList() {
return logQueue;
public int getSize() {
return size;
}
/**
@@ -98,15 +79,14 @@ public class MemoryAppender extends AppenderSkeleton {
* @param criteria Search criteria
* @param list Paginated list (modified by side effect)
*/
public void find(LogCriteria criteria, PaginatedList<LogEntry> list) {
public static void find(LogCriteria criteria, PaginatedList<LogEntry> list) {
List<LogEntry> logEntryList = new LinkedList<LogEntry>();
final Level minLevel = criteria.getMinLevel();
final String tag = criteria.getTag();
final String message = criteria.getMessage();
int resultCount = 0;
for (Iterator<LogEntry> it = logQueue.iterator(); it.hasNext();) {
LogEntry logEntry = it.next();
if ((minLevel == null || Integer.compare(logEntry.getLevel().toInt(), minLevel.toInt()) >= 0) &&
for (LogEntry logEntry : logQueue) {
if ((minLevel == null || logEntry.getLevel().toInt() >= minLevel.toInt()) &&
(tag == null || logEntry.getTag().toLowerCase().equals(tag)) &&
(message == null || logEntry.getMessage().toLowerCase().contains(message))) {
logEntryList.add(logEntry);

View File

@@ -1,10 +0,0 @@
log4j.rootCategory=DEBUG, CONSOLE, MEMORY
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{DATE} %p %l %m %n
log4j.appender.MEMORY=com.sismics.util.log4j.MemoryAppender
log4j.appender.MEMORY.size=1000
log4j.logger.com.sismics=INFO
log4j.logger.org.hibernate=ERROR
log4j.logger.org.apache.directory=ERROR

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%date [%t] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<appender name="MEMORY" class="com.sismics.util.logback.MemoryAppender">
<size>1000</size>
</appender>
<logger name="org.apache.directory" level="ERROR"/>
<logger name="com.sismics" level="INFO"/>
<logger name="org.hibernate" level="ERROR"/>
<root level="DEBUG">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="MEMORY"/>
</root>
</configuration>