private void setLevelToOff(Level globalLogLevel) { Properties properties = new Properties(); properties.setProperty("sonar.log.level", globalLogLevel.toString()); LoggerContext context = underTest.apply(newLogLevelConfig().offUnlessTrace("fii").build(), new Props(properties)); assertThat(context.getLogger("fii").getLevel()).isEqualTo(Level.OFF); }
@Test public void apply_set_level_to_OFF_if_sonar_global_level_is_not_set() { LoggerContext context = underTest.apply(newLogLevelConfig().offUnlessTrace("fii").build(), new Props(new Properties())); assertThat(context.getLogger("fii").getLevel()).isEqualTo(Level.OFF); }
@Override protected void extendLogLevelConfiguration(LogLevelConfig.Builder logLevelConfigBuilder) { logLevelConfigBuilder.levelByDomain("sql", ProcessId.WEB_SERVER, LogDomain.SQL); logLevelConfigBuilder.levelByDomain("es", ProcessId.WEB_SERVER, LogDomain.ES); logLevelConfigBuilder.levelByDomain("auth.event", ProcessId.WEB_SERVER, LogDomain.AUTH_EVENT); JMX_RMI_LOGGER_NAMES.forEach(loggerName -> logLevelConfigBuilder.levelByDomain(loggerName, ProcessId.WEB_SERVER, LogDomain.JMX)); logLevelConfigBuilder.offUnlessTrace("org.apache.catalina.core.ContainerBase"); logLevelConfigBuilder.offUnlessTrace("org.apache.catalina.core.StandardContext"); logLevelConfigBuilder.offUnlessTrace("org.apache.catalina.core.StandardService"); LOGGER_NAMES_TO_TURN_OFF.forEach(loggerName -> logLevelConfigBuilder.immutableLevel(loggerName, Level.OFF)); }
@Override protected void extendLogLevelConfiguration(LogLevelConfig.Builder logLevelConfigBuilder) { logLevelConfigBuilder.levelByDomain("sql", ProcessId.WEB_SERVER, LogDomain.SQL); logLevelConfigBuilder.levelByDomain("es", ProcessId.WEB_SERVER, LogDomain.ES); logLevelConfigBuilder.levelByDomain("auth.event", ProcessId.WEB_SERVER, LogDomain.AUTH_EVENT); JMX_RMI_LOGGER_NAMES.forEach(loggerName -> logLevelConfigBuilder.levelByDomain(loggerName, ProcessId.WEB_SERVER, LogDomain.JMX)); logLevelConfigBuilder.offUnlessTrace("org.apache.catalina.core.ContainerBase"); logLevelConfigBuilder.offUnlessTrace("org.apache.catalina.core.StandardContext"); logLevelConfigBuilder.offUnlessTrace("org.apache.catalina.core.StandardService"); LOGGER_NAMES_TO_TURN_OFF.forEach(loggerName -> logLevelConfigBuilder.immutableLevel(loggerName, Level.OFF)); }
@Test public void apply_set_level_to_OFF_if_sonar_global_level_is_not_set() { underTest.apply(newLogLevelConfig().offUnlessTrace("fii").build()); verifyLoggerProperties(underTest.get(), "fii", Level.OFF); }
@Test public void apply_creates_loggers_property_with_logger_names_ordered_but_root() { LogLevelConfig config = newLogLevelConfig() .rootLevelFor(ProcessId.WEB_SERVER) .levelByDomain("foo", ProcessId.WEB_SERVER, LogDomain.JMX) .levelByDomain("bar", ProcessId.COMPUTE_ENGINE, LogDomain.ES) .immutableLevel("doh", Level.ERROR) .immutableLevel("pif", Level.TRACE) .offUnlessTrace("fii") .build(); underTest.apply(config); assertThat(underTest.get().getProperty("loggers")).isEqualTo("bar,doh,fii,foo,pif"); }
@Test public void apply_does_not_set_level_if_sonar_global_level_is_TRACE() { Log4JPropertiesBuilder underTest = newLog4JPropertiesBuilder("sonar.log.level", Level.TRACE.toString()); underTest.apply(newLogLevelConfig().offUnlessTrace("fii").build()); verifyNoLoggerProperties(underTest.get(), "fii"); }
@Test public void apply_does_not_set_level_if_sonar_global_level_is_TRACE() { Properties properties = new Properties(); properties.setProperty("sonar.log.level", Level.TRACE.toString()); assertThat(underTest.getRootContext().getLogger("fii").getLevel()).isNull(); LoggerContext context = underTest.apply(newLogLevelConfig().offUnlessTrace("fii").build(), new Props(properties)); assertThat(context.getLogger("fii").getLevel()).isNull(); }
private void setLevelToOff(Level globalLogLevel) { Log4JPropertiesBuilder underTest = newLog4JPropertiesBuilder("sonar.log.level", globalLogLevel.toString()); underTest.apply(newLogLevelConfig().offUnlessTrace("fii").build()); verifyLoggerProperties(underTest.get(), "fii", Level.OFF); }