![](/img/trans.png)
[英]How do I add dependencies/3rd party java libraries into Maven for Intellij and/or VS Code?
[英]How do I control logging in 3rd party libraries
我有一個運行基於Spring的servlet的Tomcat服務器。
我已經設置了[project root]/src/log4j.properties
文件,如下所示:
# Root logger option
log4j.rootLogger=WARN, stdout
# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5p %d{HH:mm:ss} %m [%c{3}:%L]%n
log4j.logger.com.martincarney.bugTracker=DEBUG
log4j.logger.com.martincarney.bugTracker.controller=ERROR
這正確地記錄了我自己的代碼,但似乎對我正在使用的各種庫中的日志記錄沒有任何影響。 例如,即使我將log4j.logger.org.apache=WARN
添加到我的log4j.properties,我仍然會在Tomcat啟動期間從org.apache.*
獲取INFO日志到Eclipse控制台錯誤流。
我正在使用通過Maven獲得的slf4j-api
和slf4j-log4j
罐子。
如何控制我自己的代碼之外的日志記錄級別和目標?
一些庫使用其他日志框架,如java.util.logging
。
您可以使用SLF4J重定向日志記錄,請參閱SLF4J - 橋接舊版API :
Jakarta Commons Logging的重定向:
為了便於從JCL遷移到SLF4J,SLF4J發行版包括jar文件
jcl-over-slf4j.jar
。 此jar文件旨在作為JCL 1.1.1版的替代品。 它實現了JCL的公共API,但在下面使用了SLF4J,因此名稱為“JCL over SLF4J”。
java.util.Logging
重定向( SLF4J API ):
通過logging.properties配置文件安裝:
//將SLF4JBridgeHandler注冊為jul根記錄器的處理程序
handlers = org.slf4j.bridge.SLF4JBridgeHandler
有關java.util.Logging
配置,請參閱JUL API 。
Apache CXF等一些庫支持多個日志框架,請參閱Apache CXF - 調試和日志記錄 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.