2012-09-16 6 views
6

私はslf4jでログバックを使用してコンソールロガーを設定しようとしています。次のように私のlogbackの構成は次のとおりです。Logback.xmlはConsoleAppenderにログを記録していませんか?

<configuration> 

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 
    <!-- encoders are assigned the type 
     ch.qos.logback.classic.encoder.PatternLayoutEncoder by default --> 
    <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> 
     <pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern> 
    </encoder> 
    </appender> 

    <logger name="org.hibernate" level="INFO" /> 
    <logger name="com.myapp" level="TRACE" /> 

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

Logbackは問題なく設定するようだにもかかわらず、私は私のコンソールに任意のロガーからの出力を得るように見えることはできません。私はLOGGER.isInfoEnabled()が私のアプリでtrueを返すことをテストしました。

LogbackのStatusPrinterの出力:

17:25:11,736 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml] 
17:25:11,737 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/Users/ryanspicer/NetBeansProjects/Oncewhen/build/classes/logback.xml] 
17:25:11,996 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set 
17:25:11,996 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender] 
17:25:12,000 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT] 
17:25:12,038 |-ERROR in [email protected]:74 - no applicable action for [encoder], current pattern is [[configuration][appender][encoder]] 
17:25:12,038 |-ERROR in [email protected]:16 - no applicable action for [pattern], current pattern is [[configuration][appender][encoder][pattern]] 
17:25:12,038 |-ERROR in ch.qos.logback.core.ConsoleAppender[STDOUT] - No layout set for the appender named "STDOUT". 
17:25:12,038 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Popping appender named [STDOUT] from the object stack 
17:25:12,038 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate] to INFO 
17:25:12,038 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.hibernate] to true 
17:25:12,038 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [com.myapp] to TRACE 
17:25:12,038 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [com.myapp] to true 
17:25:12,038 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to DEBUG 
17:25:12,038 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[root] 

ここで起こっかもしれないものの任意のアイデア、そしてどのようにそれを修正し、作業ログ出力を取得しますか?

答えて

3

ステータス出力からは、logback 0.9.18以前のバージョンを使用しているようです。あなたは最新バージョンで試してみるべきです。

+1

それは実際の問題の道に私を置くので、私はこれを受け入れるよ - (は/ usr /及びグローバルクラスパスに行くにインストールされていることを主張)Xugglerビデオライブラリーは、ANを提供していました古いLogback jarファイルで、slf4jが混乱していました。私のプロジェクトの中で最新のLogbackとSLF4Jに更新した後、slf4jが正しいLogbackにバインドするように強制することができ、すべてうまくいきました。 – Alterscape

+0

最新版のlogback(1.0.9)を使用していますが、まだこれらのエラーメッセージが表示されています。それが何であるか、どんな考えですか?ありがとう。 Eugen。 – Eugen

+0

logback-classic.jarとlogback-core.jarのバージョンが一致する必要があります。 – Ceki

1

サードパーティの依存関係のためにlogback 0.9.18を使用する必要がある方は、この回答を参照して、アペンダの設定方法の例を参照してください。

logback with EJB3.1