Как включить вход в систему в slf4j, используя только командную строку (Нет файла свойств) - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь выяснить, как включить детальный уровень ведения журнала, используя версию slf4j-jdk14:1.7.25.До сих пор я пробовал многочисленные способы его включения, но почему-то ни один из них не перекрывает уровень ведения журнала по умолчанию.

Этот вопрос объединяет два подвопроса :

  1. Как определить, какой logging.properties используется?если у нас его нет (ИЛИ Как я могу перечислить, какие все свойства подразумеваются для моего пакета)?
  2. Как установить определенный уровень журнала для пакета, если у нас нет файла logging.properties?(Я не хочу добавлять его, поскольку я не являюсь владельцем репо)

Добавление примера тестовой программы для простого тестирования:

package com.learning.examples;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class LogTest {
  private static final Logger LOG = LoggerFactory.getLogger(LogTest.class);

  public static void main(String[] args) {
    LOG.trace("This is trace level");
    LOG.debug("This is debug level");
    LOG.info("This is info level");
    LOG.warn("This is warn level");
    LOG.error("This is error level");
  }
}

На данный момент мое приложение имеетэти две зависимости:

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.25</version>
    </dependency>

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-jdk14</artifactId>
      <version>1.7.25</version>
      <scope>runtime</scope>
    </dependency>

До сих пор я пробовал эти комбинации:


mvn compile exec:java -Dexec.mainClass=com.learning.examples.LogTest \
  -Dsl4j.rootLogger=DEBUG

mvn compile exec:java -Dexec.mainClass=com.learning.examples.LogTest \
  -Djava.util.logging.ConsoleHandler.level=ALL/FINEST/FINE/DEBUG

mvn compile exec:java -Dexec.mainClass=com.learning.examples.LogTest \
  -Dhandlers=java.util.logging.ConsoleHandler \
  -Dcom.learning.examples.level=DEBUG

mvn compile exec:java -Dexec.mainClass=com.learning.examples.LogTest \
  -Dcom.learning.examples.level=DEBUG

mvn compile exec:java -Dexec.mainClass=com.learning.examples.LogTest \
  -Dlogging.level.com.learning.examples=DEBUG

mvn compile exec:java -Dexec.mainClass=com.learning.examples.LogTest \
  -Dlog.level.com.learning.examples=DEBUG

Я просто хочу видеть журналы различного уровня без внесения каких-либо файлов в мой репозиторий или без изменениязависимости.

...