diff options
author | Simon Brandhof <simon.brandhof@sonarsource.com> | 2014-09-24 14:35:43 +0200 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@sonarsource.com> | 2014-09-24 14:36:00 +0200 |
commit | 410c98978ca7ee3c667dcbcffe4d3ec085c6e517 (patch) | |
tree | 7e1d65c2fbf679592506ab302011053e55a3f322 | |
parent | 3bd213ad94caa90487e03c6e3444a7d3d8e40fee (diff) | |
download | sonarqube-410c98978ca7ee3c667dcbcffe4d3ec085c6e517.tar.gz sonarqube-410c98978ca7ee3c667dcbcffe4d3ec085c6e517.zip |
SONAR-5621 merge log files
5 files changed, 41 insertions, 43 deletions
diff --git a/server/sonar-process/src/main/java/org/sonar/process/ProcessLogging.java b/server/sonar-process/src/main/java/org/sonar/process/ProcessLogging.java index c0909a93fb5..18893090bf3 100644 --- a/server/sonar-process/src/main/java/org/sonar/process/ProcessLogging.java +++ b/server/sonar-process/src/main/java/org/sonar/process/ProcessLogging.java @@ -19,8 +19,11 @@ */ package org.sonar.process; +import ch.qos.logback.classic.Logger; import ch.qos.logback.classic.LoggerContext; import ch.qos.logback.classic.joran.JoranConfigurator; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.Appender; import ch.qos.logback.core.joran.spi.JoranException; import ch.qos.logback.core.util.StatusPrinter; import org.slf4j.LoggerFactory; @@ -43,6 +46,14 @@ public class ProcessLogging { StatusPrinter.printInCaseOfErrorsOrWarnings(context); } + public void addConsoleAppender() { + Logger consoleLogger = (Logger) LoggerFactory.getLogger("console"); + Appender<ILoggingEvent> consoleAppender = consoleLogger.getAppender("CONSOLE"); + + Logger rootLogger = (Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME); + rootLogger.addAppender(consoleAppender); + } + /** * Extracted only for unit testing */ diff --git a/server/sonar-search/src/main/resources/org/sonar/search/logback.xml b/server/sonar-search/src/main/resources/org/sonar/search/logback.xml index 648ece82e28..d10553b643b 100644 --- a/server/sonar-search/src/main/resources/org/sonar/search/logback.xml +++ b/server/sonar-search/src/main/resources/org/sonar/search/logback.xml @@ -9,18 +9,8 @@ <configuration debug="false"> <contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator"/> - <appender name="LOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <File>${sonar.path.logs}/search.log</File> - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <param name="FileNamePattern" value="${sonar.path.logs}/search.%i.log"/> - <param name="MinIndex" value="1"/> - <param name="MaxIndex" value="3"/> - </rollingPolicy> - <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <param name="MaxFileSize" value="5MB"/> - </triggeringPolicy> + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> - <!-- Use %d{yyyy.MM.dd HH:mm:ss.SSS} to display milliseconds --> <pattern> %d{yyyy.MM.dd HH:mm:ss} %-5level [%logger{20}] %X %msg%n </pattern> @@ -29,7 +19,7 @@ <root> <level value="INFO"/> - <appender-ref ref="LOGFILE"/> + <appender-ref ref="CONSOLE"/> </root> </configuration> diff --git a/server/sonar-server/src/main/resources/org/sonar/server/platform/logback.xml b/server/sonar-server/src/main/resources/org/sonar/server/platform/logback.xml index 4607ddb23bf..84ce76baece 100644 --- a/server/sonar-server/src/main/resources/org/sonar/server/platform/logback.xml +++ b/server/sonar-server/src/main/resources/org/sonar/server/platform/logback.xml @@ -9,40 +9,14 @@ <configuration debug="false"> <contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator"/> - <appender name="LOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> - <File>${sonar.path.logs}/sonar.log</File> - <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> - <param name="FileNamePattern" value="${sonar.path.logs}/sonar.%i.log"/> - <param name="MinIndex" value="1"/> - <param name="MaxIndex" value="3"/> - </rollingPolicy> - <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> - <param name="MaxFileSize" value="5MB"/> - </triggeringPolicy> - <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> - <!-- Use %d{yyyy.MM.dd HH:mm:ss.SSS} to display milliseconds --> - <pattern> - ${LOGFILE_LOGGING_FORMAT} - </pattern> - </encoder> - </appender> - <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> - <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> - <level>WARN</level> - </filter> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern> - ${CONSOLE_LOGGING_FORMAT} + ${LOGFILE_LOGGING_FORMAT} </pattern> </encoder> </appender> - <logger name="console" additivity="false"> - <level value="INFO"/> - <appender-ref ref="CONSOLE"/> - </logger> - <!-- Display Rails warnings and errors --> <logger name="rails"> <level value="WARN"/> @@ -93,7 +67,7 @@ <root> <level value="INFO"/> - <appender-ref ref="LOGFILE"/> + <appender-ref ref="CONSOLE"/> </root> </configuration> diff --git a/sonar-application/src/main/java/org/sonar/application/App.java b/sonar-application/src/main/java/org/sonar/application/App.java index bba2dd73069..502cf561394 100644 --- a/sonar-application/src/main/java/org/sonar/application/App.java +++ b/sonar-application/src/main/java/org/sonar/application/App.java @@ -109,7 +109,11 @@ public class App implements Stoppable { CommandLineParser cli = new CommandLineParser(); Properties rawProperties = cli.parseArguments(args); Props props = new PropsBuilder(rawProperties, new JdbcSettings()).build(); - new ProcessLogging().configure(props, "/org/sonar/application/logback.xml"); + ProcessLogging logging = new ProcessLogging(); + logging.configure(props, "/org/sonar/application/logback.xml"); + if (props.valueAsBoolean("sonar.log.console", false)) { + logging.addConsoleAppender(); + } App app = new App(); app.start(props); diff --git a/sonar-application/src/main/resources/org/sonar/application/logback.xml b/sonar-application/src/main/resources/org/sonar/application/logback.xml index 246afdf89f3..e34156819f0 100644 --- a/sonar-application/src/main/resources/org/sonar/application/logback.xml +++ b/sonar-application/src/main/resources/org/sonar/application/logback.xml @@ -3,17 +3,36 @@ <configuration debug="false"> <contextListener class="ch.qos.logback.classic.jul.LevelChangePropagator"/> + <appender name="LOGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> + <File>${sonar.path.logs}/sonar.log</File> + <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> + <param name="FileNamePattern" value="${sonar.path.logs}/sonar.%i.log"/> + <param name="MinIndex" value="1"/> + <param name="MaxIndex" value="5"/> + </rollingPolicy> + <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> + <param name="MaxFileSize" value="10MB"/> + </triggeringPolicy> + <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> + <pattern>%3.3logger %msg%n</pattern> + </encoder> + </appender> + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <pattern> - %d{yyyy.MM.dd HH:mm:ss} %-5level %msg%n + app %d{yyyy.MM.dd HH:mm:ss} %-5level [%logger{20}] %msg%n </pattern> </encoder> </appender> + <logger name="console"> + <appender-ref ref="CONSOLE"/> + </logger> + <root> <level value="INFO"/> - <appender-ref ref="CONSOLE"/> + <appender-ref ref="LOGFILE"/> </root> </configuration> |