Я прочитал несколько тем об отключении ведения журнала. Я использую dbunit в моих тестовых случаях, и там происходит огромное количество журналирования, и он терпит неудачу при сборках Travis CI, потому что журнал слишком большой.

Проще говоря, как отключить вход в систему Maven?

У меня есть это для моего верного плагина:

        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.15</version>
        <configuration>
          <systemProperties>
            <property> 
              <name>java.util.logging.config.file</name>
              <value>src/test/resources/logging.properties</value>
            </property>
          </systemProperties>

Я положил файл в src / test / resources / logging.properties

Это содержание:

org.dbunit.level=OFF

Но когда я запускаю mvn, проверьте:

18:57:06.121 [main] DEBUG org.dbunit.dataset.AbstractTable - getColumnIndex(columnName=cohort_definition_id) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.AbstractTableMetaData - getColumnIndex(columnName=cohort_definition_id) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.datatype.IntegerDataType - getSqlValue(column=1, resultSet=org.postgresql.jdbc.PgResultSet@3ad98a3) - start
18:57:06.121 [main] DEBUG org.dbunit.database.ForwardOnlyResultSetTable - getValue(row=4, columnName=subject_id) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.AbstractTable - getColumnIndex(columnName=subject_id) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.AbstractTableMetaData - getColumnIndex(columnName=subject_id) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.datatype.BigIntegerDataType - getSqlValue(column=2, resultSet=org.postgresql.jdbc.PgResultSet@3ad98a3) - start
18:57:06.121 [main] DEBUG org.dbunit.database.ForwardOnlyResultSetTable - getValue(row=4, columnName=cohort_start_date) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.AbstractTable - getColumnIndex(columnName=cohort_start_date) - start
18:57:06.121 [main] DEBUG org.dbunit.dataset.AbstractTableMetaData - getColumnIndex(columnName=cohort_start_date) - start
18:57:06.122 [main] DEBUG org.dbunit.dataset.datatype.DateDataType - getSqlValue(column=3, resultSet=org.postgresql.jdbc.PgResultSet@3ad98a3) - start
18:57:06.122 [main] DEBUG org.dbunit.database.ForwardOnlyResultSetTable - getValue(row=4, columnName=cohort_end_date) - start
18:57:06.122 [main] DEBUG org.dbunit.dataset.AbstractTable - getColumnIndex(columnName=cohort_end_date) - start
18:57:06.122 [main] DEBUG org.dbunit.dataset.AbstractTableMetaData - getColumnIndex(columnName=cohort_end_date) - start
18:57:06.122 [main] DEBUG org.dbunit.dataset.datatype.DateDataType - getSqlValue(column=4, resultSet=org.postgresql.jdbc.PgResultSet@3ad98a3) - start
18:57:06.122 [main] DEBUG org.dbunit.database.ForwardOnlyResultSetTable - getValue(row=5, columnName=cohort_definition_id) - start

Я не использую никаких других специальных библиотек в моем pom для регистрации. Это общая кодовая база, так что из «соглашения» у нее действительно есть весенние артефакты, я не знаю, «парят» ли эти парни логирование без моего ведома:

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-test</artifactId>
      <version>1.5.20.RELEASE</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-jdbc</artifactId>
      <version>1.5.20.RELEASE</version>
      <scope>test</scope>
    </dependency>

Любая помощь была бы признательна.

Спасибо!

Обновление 2019-12-20: я установил точку останова внутри классов в dbunit, которые вели протоколирование, и он, похоже, использует logback (LoggerContext - ch.qos.logback.classic). Итак, я думаю, что решение здесь состоит в том, чтобы выяснить, как указать конфигурацию для входа в систему ...

0
Chris Knoll 21 Дек 2019 в 03:03

1 ответ

Хорошо, решение состояло в том, чтобы понять, какой регистратор использовался, и затем предоставить правильную конфигурацию для него.

В моем случае это был выход из системы.

Я поместил файл logback-test.xml в мою папку test / resources:

<configuration>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type
         ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>

  <root level="info">
    <appender-ref ref="STDOUT" />
  </root>
</configuration>

Все отладочные сообщения исчезли! Мне нужно узнать, как указать явную реализацию ведения журнала для моей сборки, но я надеюсь, что эта информация будет полезна для других.

Спасибо всем, кто предложил комментарии и идеи. Очень признателен.

0
Chris Knoll 21 Дек 2019 в 01:09