1
0
mirror of https://github.com/sismics/docs.git synced 2025-12-15 10:46:26 +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

@@ -48,11 +48,6 @@
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
@@ -64,11 +59,6 @@
<artifactId>joda-time</artifactId>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
</dependency>
<!-- Test dependencies -->
<dependency>
<groupId>junit</groupId>

View File

@@ -1,23 +1,26 @@
package com.sismics.util.filter;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.classic.encoder.PatternLayoutEncoder;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.rolling.RollingFileAppender;
import ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy;
import ch.qos.logback.core.util.FileSize;
import com.sismics.docs.core.model.context.AppContext;
import com.sismics.docs.core.util.DirectoryUtil;
import com.sismics.docs.core.util.TransactionUtil;
import com.sismics.util.EnvironmentUtil;
import com.sismics.util.context.ThreadLocalContext;
import com.sismics.util.jpa.EMF;
import jakarta.persistence.EntityManager;
import jakarta.persistence.EntityTransaction;
import jakarta.servlet.*;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.ws.rs.core.HttpHeaders;
import org.apache.log4j.Level;
import org.apache.log4j.PatternLayout;
import org.apache.log4j.RollingFileAppender;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.slf4j.bridge.SLF4JBridgeHandler;
import jakarta.persistence.EntityManager;
import jakarta.persistence.EntityTransaction;
import java.io.IOException;
import java.text.MessageFormat;
@@ -48,18 +51,30 @@ public class RequestContextFilter implements Filter {
// Initialize file logger
RollingFileAppender fileAppender = new RollingFileAppender();
fileAppender.setName("FILE");
fileAppender.setFile(DirectoryUtil.getLogDirectory().resolve("docs.log").toString());
fileAppender.setLayout(new PatternLayout("%d{DATE} %p %l %m %n"));
fileAppender.setThreshold(Level.INFO);
fileAppender.setAppend(true);
fileAppender.setMaxFileSize("5MB");
fileAppender.setMaxBackupIndex(5);
fileAppender.activateOptions();
org.apache.log4j.Logger.getRootLogger().addAppender(fileAppender);
SLF4JBridgeHandler.removeHandlersForRootLogger();
SLF4JBridgeHandler.install();
LoggerContext logContext = (LoggerContext) LoggerFactory.getILoggerFactory();
RollingFileAppender<ILoggingEvent> appender = new RollingFileAppender<>();
PatternLayoutEncoder encoder = new PatternLayoutEncoder();
encoder.setContext(logContext);
encoder.setPattern("%date [%t] %-5level %logger{36} - %msg%n");
encoder.start();
SizeAndTimeBasedRollingPolicy<ILoggingEvent> rollingPolicy = new SizeAndTimeBasedRollingPolicy<>();
rollingPolicy.setMaxFileSize(FileSize.valueOf("5MB"));
rollingPolicy.setFileNamePattern("docs.%d{yyyy-MM-dd_HH}.log");
rollingPolicy.setMaxHistory(5);
rollingPolicy.setContext(logContext);
rollingPolicy.setParent(appender);
rollingPolicy.start();
appender.setContext(logContext);
appender.setName("FILE");
appender.setFile(DirectoryUtil.getLogDirectory().resolve("docs.log").toString());
appender.setEncoder(encoder);
appender.setRollingPolicy(rollingPolicy);
appender.setAppend(true);
appender.start();
ch.qos.logback.classic.Logger logger = logContext.getLogger(Logger.ROOT_LOGGER_NAME);
logger.setAdditive(false);
logger.setLevel(Level.INFO);
logger.addAppender(appender);
// Initialize the application context
TransactionUtil.handle(AppContext::getInstance);