Вход в приложение dropwizard - PullRequest
0 голосов
/ 06 июля 2018
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for 
more info.

Я новичок в создании микросервисов dropwizard. Получение этого предупреждения при запуске моего приложения dropwizard без SLF4j, и я не знаю, где создаются журналы.

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>${slf4j-log4j12}</version>
        </dependency>

когда я включаю это в мой файл pom, я получаю это предупреждение:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in         
[jar:file:/Users/Deadpool/.m2/repository/ch/qos/logback/logback- 
classic/1.2.3/logback-classic- 
1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in 
[jar:file:/Users/Deadpool/.m2/repository/org/slf4j/slf4j- 
log4j12/1.7.25/slf4j-log4j12- 
1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an 
explanation.
SLF4J: Actual binding is of type 
[ch.qos.logback.classic.util.ContextSelectorStaticBinder]
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for 
more info.

Моя настоящая проблема заключается в том, как я могу использовать Slf4j для входа в файл, а также для консоли. У меня также был файл log4j.yaml в моей папке src / main / resources.

Configuration:
 status: INFO
 monitorInterval: "5"


Appenders:
 RollingFile:
  - name: fkbossaLog
    bufferedIO: true
    immediateFlush: true
    fileName: /tmp/fkbossa.log
    filePattern: fkbossa-%d{yyyy-MM-dd-HH}-%i.log.gz
    PatternLayout:
      Pattern: '%highlight{%-5level}{STYLE=Logback} [%d{ISO8601}] [%t] %logger{36}.%M(%F:%L): %msg%n'
    Policies:
      SizeBasedTriggeringPolicy:
        size: "20 MB"
    DefaultRollOverStrategy:
      max: 5
 Console:
  - name: console
    PatternLayout:
      Pattern: '%highlight{%-5level}{STYLE=Logback} [%d{ISO8601}] [%t] %c [%X{RequestTrackerId}]: %msg%n'

Loggers:
 Root:
  level: info
  AppenderRef:
    - ref: console
 logger:
  -
    name: org.hibernate
    level: error
    additivity: false
  -
    name: org.eclipse.jetty
    level: info

У меня также есть lombok и dropwizard-logging, и я не знаю, какую платформу журналирования он использует для регистрации

1 Ответ

0 голосов
/ 20 июля 2018
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for 
more info.

Это предупреждение не исчезло, поскольку ваше приложение не знает, какого поставщика журналов использовать для ошибок гибернации. Для установки этого вы должны включить `

static {
    System.setProperty("org.jboss.logging.provider", "slf4j");
}

в вашем MainApplication. Это установит в качестве поставщика журналирования jboss значение slf4j (которое я использую в качестве каркаса журналирования.

Произошло предупреждение о множественных привязках slf4j из-за множественных зависимостей slf4j-api, доступных в пути к классам. так что вы можете решить эту проблему, исключив любую, которую вы не хотите.

Ваш файл журнала будет находиться в вашей папке tmp (mac) или в папке var / log / tmp (debian dist)

...