From abb3f6eb18e209e9477e0b569b3346c795da4ac8 Mon Sep 17 00:00:00 2001 From: Shinsuke Sugaya <shinsuke@yahoo.co.jp> Date: Thu, 19 Jan 2017 21:39:52 +0900 Subject: [PATCH] fix #838 replace with log4j2 --- pom.xml | 55 +++++++++++++--------- src/main/resources/log4j2.xml | 81 ++++++++++++++++++++++++++++++++ src/main/resources/logback.xml | 85 ---------------------------------- 3 files changed, 115 insertions(+), 106 deletions(-) create mode 100644 src/main/resources/log4j2.xml delete mode 100644 src/main/resources/logback.xml diff --git a/pom.xml b/pom.xml index bbcda53ab..d18461a55 100644 --- a/pom.xml +++ b/pom.xml @@ -47,9 +47,8 @@ <!-- Partner Library --> <slf4j.version>1.7.21</slf4j.version> - <logback.version>1.1.7</logback.version> - - <!-- GoodNeighbor Library --> + <log4j.version>2.7</log4j.version> + <jackson.version>2.8.6</jackson.version> <commons.fileupload.version>1.3.2</commons.fileupload.version> <!-- Testing --> @@ -1027,24 +1026,34 @@ <version>${slf4j.version}</version> </dependency> <dependency> - <groupId>ch.qos.logback</groupId> - <artifactId>logback-classic</artifactId> - <version>${logback.version}</version> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-api</artifactId> + <version>${log4j.version}</version> </dependency> <dependency> - <groupId>org.codehaus.janino</groupId> - <artifactId>janino</artifactId> - <version>3.0.1</version> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-core</artifactId> + <version>${log4j.version}</version> </dependency> <dependency> - <groupId>org.slf4j</groupId> - <artifactId>jcl-over-slf4j</artifactId> - <version>${slf4j.version}</version> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-jcl</artifactId> + <version>${log4j.version}</version> </dependency> <dependency> - <groupId>org.slf4j</groupId> - <artifactId>log4j-over-slf4j</artifactId> - <version>${slf4j.version}</version> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-1.2-api</artifactId> + <version>${log4j.version}</version> + </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-slf4j-impl</artifactId> + <version>${log4j.version}</version> + </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-jul</artifactId> + <version>${log4j.version}</version> </dependency> <!-- servlet --> @@ -1113,7 +1122,7 @@ <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> - <version>19.0</version> + <version>21.0</version> </dependency> <dependency> <groupId>com.google.oauth-client</groupId> @@ -1149,12 +1158,12 @@ <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> - <version>3.4</version> + <version>3.5</version> </dependency> <dependency> <groupId>com.ibm.icu</groupId> <artifactId>icu4j</artifactId> - <version>57.1</version> + <version>58.2</version> </dependency> <!-- suggest library --> @@ -1166,7 +1175,6 @@ <!-- fileupload --> <dependency> - <!-- TODO remove? --> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>${commons.fileupload.version}</version> @@ -1217,10 +1225,15 @@ </dependency> <!-- json --> + <dependency> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-core</artifactId> + <version>${jackson.version}</version> + </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> - <version>2.8.2</version> + <version>${jackson.version}</version> </dependency> <!-- template --> @@ -1234,7 +1247,7 @@ <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> - <version>2.4.7</version> + <version>2.4.8</version> </dependency> <!-- phantomjsdriver --> diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml new file mode 100644 index 000000000..7e1ca2ed8 --- /dev/null +++ b/src/main/resources/log4j2.xml @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Configuration status="WARN"> + + <Properties> + <Property name="domain.name" value="${sys:fess.log.name:-fess}" /> + <Property name="log.level" value="${sys:fess.log.level:-debug}" /> + <Property name="root.log.level" value="${sys:fess.log.level:-info}" /> + <Property name="log.pattern" value="%d [%t] %-5p %msg%n" /> + <Property name="log.file.basedir" value="${sys:fess.log.path:-target/logs}" /> + <Property name="backup.date.suffix" value="_%d{yyyyMMdd}" /> + <Property name="backup.max.history" value="90" /> + <Property name="audit.log.pattern" value="%msg%n" /> + </Properties> + + <Appenders> + <Routing name="Console"> + <Script name="RoutingInit" language="JavaScript"><![CDATA[ + java.lang.System.getProperty("lasta.env") == null ? "Output" : "NoOutput";]]> + </Script> + <Routes> + <Route key="Output"> + <Console name="OutputConsole" target="SYSTEM_OUT"> + <PatternLayout pattern="${log.pattern}" /> + </Console> + </Route> + <Route key="NoOutput"> + <CountingNoOp name="DevNull" /> + </Route> + </Routes> + </Routing> + <RollingFile name="AppFile" fileName="${log.file.basedir}/${domain.name}.log" + filePattern="${log.file.basedir}/backup/${domain.name}${backup.date.suffix}-%i.log.gz"> + <PatternLayout> + <Pattern>${log.pattern}</Pattern> + </PatternLayout> + <Policies> + <OnStartupTriggeringPolicy /> + <TimeBasedTriggeringPolicy /> + <SizeBasedTriggeringPolicy size="100 MB" /> + </Policies> + <DefaultRolloverStrategy fileIndex="max" min="1" + max="${backup.max.history}" compressionLevel="9" /> + </RollingFile> + <RollingFile name="AuditFile" fileName="${log.file.basedir}/audit.log" + filePattern="${log.file.basedir}/backup/audit${backup.date.suffix}-%i.log.gz"> + <PatternLayout> + <Pattern>${audit.log.pattern}</Pattern> + </PatternLayout> + <Policies> + <OnStartupTriggeringPolicy /> + <TimeBasedTriggeringPolicy /> + <SizeBasedTriggeringPolicy size="100 MB" /> + </Policies> + <DefaultRolloverStrategy fileIndex="max" min="1" + max="${backup.max.history}" compressionLevel="9" /> + </RollingFile> + </Appenders> + + <Loggers> + <Logger name="org.codelibs.fess" additivity="false" level="${log.level}"> + <AppenderRef ref="Console" /> + <AppenderRef ref="AppFile" /> + </Logger> + <Logger name="org.dbflute" additivity="false" level="${log.level}"> + <AppenderRef ref="Console" /> + <AppenderRef ref="AppFile" /> + </Logger> + <Logger name="org.lastaflute" additivity="false" level="${log.level}"> + <AppenderRef ref="Console" /> + <AppenderRef ref="AppFile" /> + </Logger> + <Logger name="fess.log.audit" additivity="false" level="info"> + <AppenderRef ref="Console" /> + <AppenderRef ref="AuditFile" /> + </Logger> + <Root level="${root.log.level}"> + <AppenderRef ref="Console" /> + <AppenderRef ref="AppFile" /> + </Root> + </Loggers> +</Configuration> diff --git a/src/main/resources/logback.xml b/src/main/resources/logback.xml deleted file mode 100644 index 583530deb..000000000 --- a/src/main/resources/logback.xml +++ /dev/null @@ -1,85 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<configuration> - <property name="domain.name" value="${fess.log.name:-fess}" /> - <property name="log.level" value="${fess.log.level:-debug}" /> - <property name="root.log.level" value="${fess.log.level:-info}" /> - <property name="log.pattern" value="%d [%t] %-5p %msg%n" /> - <!-- <property name="log.pattern" value="%d [%t] %-5p \\(%C{0}@%M\\(\\):%L\\) - %msg%n" /> --> - <property name="log.file.basedir" value="${fess.log.path:-target/logs}" /> - <property name="backup.date.suffix" value="_%d{yyyyMMdd}" /> - <property name="backup.max.history" value="90" /> - <property name="audit.log.pattern" value="%msg%n" /> - - <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - </appender> - <appender name="appfile" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - <File>${log.file.basedir}/${domain.name}.log</File> - <Append>true</Append> - <encoder> - <pattern>${log.pattern}</pattern> - </encoder> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <fileNamePattern>${log.file.basedir}/backup/${domain.name}${backup.date.suffix}.log - </fileNamePattern> - <maxHistory>${backup.max.history}</maxHistory> - </rollingPolicy> - </appender> - <appender name="auditfile" - class="ch.qos.logback.core.rolling.RollingFileAppender"> - <File>${log.file.basedir}/audit.log</File> - <Append>true</Append> - <encoder> - <pattern>${audit.log.pattern}</pattern> - </encoder> - <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> - <fileNamePattern>${log.file.basedir}/backup/audit${backup.date.suffix}.log - </fileNamePattern> - <maxHistory>${backup.max.history}</maxHistory> - </rollingPolicy> - </appender> - - <logger name="org.codelibs.fess" additivity="false" level="${log.level}"> - <if condition='isNull("lasta.env")'> - <then> - <appender-ref ref="console" /> - </then> - </if> - <appender-ref ref="appfile" /> - </logger> - <logger name="org.dbflute" additivity="false" level="${log.level}"> - <if condition='isNull("lasta.env")'> - <then> - <appender-ref ref="console" /> - </then> - </if> - <appender-ref ref="appfile" /> - </logger> - <logger name="org.lastaflute" additivity="false" level="${log.level}"> - <if condition='isNull("lasta.env")'> - <then> - <appender-ref ref="console" /> - </then> - </if> - <appender-ref ref="appfile" /> - </logger> - <logger name="fess.log.audit" additivity="false" level="info"> - <if condition='isNull("lasta.env")'> - <then> - <appender-ref ref="console" /> - </then> - </if> - <appender-ref ref="auditfile" /> - </logger> - <root level="${root.log.level}"> - <if condition='isNull("lasta.env")'> - <then> - <appender-ref ref="console" /> - </then> - </if> - <appender-ref ref="appfile" /> - </root> -</configuration> -- GitLab