2012-09-16 34 views
6

Tôi đang cố thiết lập trình ghi nhật ký với logback trong slf4j. Cấu hình đăng nhập của tôi như sau:Logback.xml không đăng nhập vào 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> 

Mặc dù Logback có vẻ không có vấn đề gì nhưng dường như tôi không nhận được kết quả từ bất kỳ logger nào vào bảng điều khiển của mình. Tôi đã thử nghiệm rằng LOGGER.isInfoEnabled() trả về true trong ứng dụng của tôi.

Kết quả của StatusPrinter Logback của:

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] 

ý tưởng Bất kỳ những gì có thể xảy ra ở đây, và làm thế nào để sửa chữa nó và nhận làm việc dữ liệu ghi nhận?

Trả lời

3

Từ đầu ra trạng thái, có vẻ như bạn đang sử dụng phiên bản logback 0.9.18 hoặc cũ hơn. Bạn nên thử với phiên bản mới nhất.

+1

Tôi chấp nhận điều này vì nó đưa cho tôi trên đường mòn của vấn đề thực tế - các thư viện video Xuggler (mà khăng khăng đang được cài đặt vào/usr/và đi trong classpath toàn cầu) đã được cung cấp một cũ Logback jar, mà đã gây nhầm lẫn slf4j. Sau khi tôi cập nhật Logback và SLF4J mới nhất bên trong dự án của mình, tôi đã có thể ép buộc slf4j liên kết với Logback chính xác, và tất cả đều tốt. – Alterscape

+0

Tôi đang sử dụng phiên bản đăng nhập mới nhất (1.0.9) và tôi vẫn thấy các thông báo L ERI này. Bất kỳ ý tưởng tại sao có thể? Cảm ơn. Eugen. – Eugen

+0

Phiên bản logback-classic.jar và logback-core.jar phải khớp với nhau. – Ceki

1

Đối với những người cần sử dụng đăng nhập 0.9.18 do phụ thuộc của bên thứ ba, hãy xem câu trả lời này để biết ví dụ về cách định cấu hình ứng dụng.

logback with EJB3.1

Các vấn đề liên quan