mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-07 20:31:06 -05:00
Use logback so we can use two log streams
We want all logs on stdout, for debugging, and warnings and errors on stderr, for remote monitoring. The SLF4J SimpleLogger can't seem to do this, but logback does, and we can still use the same SLF4J interface.
This commit is contained in:
parent
4bd4ef47af
commit
64b49904e4
4 changed files with 43 additions and 22 deletions
|
@ -119,21 +119,15 @@
|
||||||
<version>2.6</version>
|
<version>2.6</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.slf4j</groupId>
|
<groupId>ch.qos.logback</groupId>
|
||||||
<artifactId>slf4j-api</artifactId>
|
<artifactId>logback-classic</artifactId>
|
||||||
<version>1.7.13</version>
|
<version>1.1.7</version>
|
||||||
</dependency>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.slf4j</groupId>
|
|
||||||
<artifactId>slf4j-simple</artifactId>
|
|
||||||
<version>1.7.13</version>
|
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.google.guava</groupId>
|
<groupId>com.google.guava</groupId>
|
||||||
<artifactId>guava</artifactId>
|
<artifactId>guava</artifactId>
|
||||||
<version>19.0</version>
|
<version>19.0</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.mock-server</groupId>
|
<groupId>org.mock-server</groupId>
|
||||||
<artifactId>mockserver-netty</artifactId>
|
<artifactId>mockserver-netty</artifactId>
|
||||||
|
@ -141,5 +135,4 @@
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
</project>
|
</project>
|
|
@ -2,7 +2,6 @@ package uk.ac.ic.wlgitbridge.util;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.slf4j.impl.SimpleLogger;
|
|
||||||
import uk.ac.ic.wlgitbridge.application.GitBridgeApp;
|
import uk.ac.ic.wlgitbridge.application.GitBridgeApp;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -10,12 +9,6 @@ import uk.ac.ic.wlgitbridge.application.GitBridgeApp;
|
||||||
*/
|
*/
|
||||||
public class Log {
|
public class Log {
|
||||||
|
|
||||||
static {
|
|
||||||
System.setProperty(SimpleLogger.SHOW_DATE_TIME_KEY, "true");
|
|
||||||
System.setProperty(SimpleLogger.DATE_TIME_FORMAT_KEY, "yyyy-MM-dd HH:mm:ss:SSS Z");
|
|
||||||
System.setProperty(SimpleLogger.SHOW_SHORT_LOG_NAME_KEY, "true");
|
|
||||||
}
|
|
||||||
|
|
||||||
private static Logger logger = LoggerFactory.getLogger(GitBridgeApp.class);
|
private static Logger logger = LoggerFactory.getLogger(GitBridgeApp.class);
|
||||||
|
|
||||||
public static void trace(String msg) {
|
public static void trace(String msg) {
|
||||||
|
|
32
services/git-bridge/src/main/resources/logback.xml
Normal file
32
services/git-bridge/src/main/resources/logback.xml
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
<configuration>
|
||||||
|
<!-- Log everything (subject to logger and root levels set below) to stdout. -->
|
||||||
|
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
|
<target>System.out</target>
|
||||||
|
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
||||||
|
<level>TRACE</level>
|
||||||
|
</filter>
|
||||||
|
<encoder>
|
||||||
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger{0}: %msg%n</pattern>
|
||||||
|
</encoder>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<!-- Log warnings and errors to stderr. We send them to a log aggregation service for monitoring. -->
|
||||||
|
<appender name="stderr" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
|
<target>System.err</target>
|
||||||
|
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
|
||||||
|
<level>WARN</level>
|
||||||
|
</filter>
|
||||||
|
<encoder>
|
||||||
|
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level [%thread] %logger{0}: %msg%n</pattern>
|
||||||
|
</encoder>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
<!-- Set log levels for the application (or parts of the application). -->
|
||||||
|
<logger name="uk.ac.ic.wlgitbridge" level="INFO" />
|
||||||
|
|
||||||
|
<!-- The root log level determines how much our dependencies put in the logs. -->
|
||||||
|
<root level="WARN">
|
||||||
|
<appender-ref ref="stdout" />
|
||||||
|
<appender-ref ref="stderr" />
|
||||||
|
</root>
|
||||||
|
</configuration>
|
|
@ -7,10 +7,14 @@
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/target" />
|
<excludeFolder url="file://$MODULE_DIR$/target" />
|
||||||
</content>
|
</content>
|
||||||
<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
|
<orderEntry type="jdk" jdkName="1.8" jdkType="JavaSDK" />
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.12" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.1.7" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.1.7" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: org.jmock:jmock-junit4:2.8.2" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: org.jmock:jmock-junit4:2.8.2" level="project" />
|
||||||
|
@ -32,6 +36,7 @@
|
||||||
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.6.2" level="project" />
|
<orderEntry type="library" name="Maven: com.google.code.gson:gson:2.6.2" level="project" />
|
||||||
<orderEntry type="library" name="Maven: com.ning:async-http-client:1.9.38" level="project" />
|
<orderEntry type="library" name="Maven: com.ning:async-http-client:1.9.38" level="project" />
|
||||||
<orderEntry type="library" name="Maven: io.netty:netty:3.10.5.Final" level="project" />
|
<orderEntry type="library" name="Maven: io.netty:netty:3.10.5.Final" level="project" />
|
||||||
|
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.12" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.eclipse.jgit:org.eclipse.jgit:3.6.0.201412230720-r" level="project" />
|
<orderEntry type="library" name="Maven: org.eclipse.jgit:org.eclipse.jgit:3.6.0.201412230720-r" level="project" />
|
||||||
<orderEntry type="library" name="Maven: com.jcraft:jsch:0.1.50" level="project" />
|
<orderEntry type="library" name="Maven: com.jcraft:jsch:0.1.50" level="project" />
|
||||||
<orderEntry type="library" name="Maven: com.googlecode.javaewah:JavaEWAH:0.7.9" level="project" />
|
<orderEntry type="library" name="Maven: com.googlecode.javaewah:JavaEWAH:0.7.9" level="project" />
|
||||||
|
@ -47,8 +52,8 @@
|
||||||
<orderEntry type="library" name="Maven: com.google.http-client:google-http-client:1.22.0" level="project" />
|
<orderEntry type="library" name="Maven: com.google.http-client:google-http-client:1.22.0" level="project" />
|
||||||
<orderEntry type="library" name="Maven: com.google.http-client:google-http-client-gson:1.22.0" level="project" />
|
<orderEntry type="library" name="Maven: com.google.http-client:google-http-client-gson:1.22.0" level="project" />
|
||||||
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
|
<orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.13" level="project" />
|
<orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.1.7" level="project" />
|
||||||
<orderEntry type="library" name="Maven: org.slf4j:slf4j-simple:1.7.13" level="project" />
|
<orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.1.7" level="project" />
|
||||||
<orderEntry type="library" name="Maven: com.google.guava:guava:19.0" level="project" />
|
<orderEntry type="library" name="Maven: com.google.guava:guava:19.0" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: org.mock-server:mockserver-netty:3.10.4" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: org.mock-server:mockserver-netty:3.10.4" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: org.mock-server:mockserver-client-java:3.10.4" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: org.mock-server:mockserver-client-java:3.10.4" level="project" />
|
||||||
|
@ -103,8 +108,6 @@
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: io.netty:netty-handler:4.0.34.Final" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: io.netty:netty-handler:4.0.34.Final" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: io.netty:netty-transport:4.0.34.Final" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: io.netty:netty-transport:4.0.34.Final" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: org.bouncycastle:bcprov-jdk15on:1.52" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: org.bouncycastle:bcprov-jdk15on:1.52" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: ch.qos.logback:logback-classic:1.1.3" level="project" />
|
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: ch.qos.logback:logback-core:1.1.3" level="project" />
|
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: janino:janino:2.5.10" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: janino:janino:2.5.10" level="project" />
|
||||||
<orderEntry type="library" scope="TEST" name="Maven: org.mock-server:mockserver-logging:3.10.4" level="project" />
|
<orderEntry type="library" scope="TEST" name="Maven: org.mock-server:mockserver-logging:3.10.4" level="project" />
|
||||||
</component>
|
</component>
|
||||||
|
|
Loading…
Reference in a new issue