草庐IT

SLF4JLogFactory

全部标签

java - Log4j、SLF4J 和 Logback 有什么区别?

我对这三个记录器库有点困惑。似乎他们可以在Java日志记录中做类似的事情...... 最佳答案 查看他们的主页:SLF4J-Java的简单日志外观(SLF4J)用作各种日志框架(例如java.util.logging、logback、log4j)的简单外观或抽象1,允许最终用户在部署时插入所需的日志框架。1)它本身不是一个日志库,而是许多日志库之一的通用接口(interface)。Log4j1.2-欢迎使用Apachelog4j,这是一个用于Java的日志库。Logback-Logback旨在作为流行的log4j项目的继任者,在lo

java - 如何映射 java.util.logging 和 SLF4J 记录器的级别?

从java.util.logging到SLF4J的日志记录级别如何映射?SLF4J追踪调试信息警告错误致命的java.util.logging最好的更好很好配置信息警告严重 最佳答案 来自SLF4JBridgeHandler文档和测试(用括号注释):[ALL->TRACE]FINEST->TRACEFINER->DEBUGFINE->DEBUG[CONFIG->INFO]INFO->INFOWARNING->WARNSEVERE->ERROR[OFF->ERROR] 关于java-如何映

java - Maven SLF4J : Class path contains multiple SLF4J bindings

我在运行我的java代码时遇到了运行时异常。有人可以帮我解决绑定(bind)冲突。SLF4J:ClasspathcontainsmultipleSLF4Jbindings.SLF4J:Foundbindingin[jar:file:/C:/Users/Air/Desktop/sms/slf4j-1.7.7/slf4j-android-1.7.7.jar!/org/slf4j/impl/StaticLoggerBinder.class]SLF4J:Foundbindingin[jar:file:/C:/Users/Air/Desktop/sms/slf4j-1.7.7/slf4j-jcl

java - slf4j 是否有 Java 1.5 varargs API?

我想摆脱这一切......publicvoidinfo(Stringmsg);publicvoidinfo(Stringformat,Objectarg);publicvoidinfo(Stringformat,Objectarg1,Objectarg2);publicvoidinfo(Stringformat,Object[]argArray);...用这个替换它...publicvoidinfo(Stringformat,Object...args);...这样我的日志记录语法就不必根据我要记录的参数数量而改变。似乎有很多讨论和工作围绕它,但它在哪里?还是应该包装slf4j的包装器

java - 在静态与非静态上下文中创建 SLF4J 记录器的开销是多少?

我一直使用以下模式来构建(SLF4J)记录器:privatestaticfinalLoggerlog=LoggerFactory.getLogger(MyClass.class);到目前为止,这已经奏效了,但是我想知道static上下文在某些时候以及是否需要一直传入具体的类文字,而不是仅仅使用像这样的非静态记录器privatefinalLoggerlog=LoggerFactory.getLogger(getClass());在LOG4J之前,这基本上已经被问到(并得到了回答)Shouldloggerbeprivatestaticornot这里Shouldbeloggeralwaysf

java - Logback native VS 通过 SLF4J 的 Logback

我已经阅读了以下有关Java可用的日志记录框架的文章:http://michaelandrews.typepad.com/the_technical_times/2011/04/java-logging-reconsidered.html作者提到了将SLF4J与Logback结合使用。这与直接使用Logback有什么不同。如果直接使用Logback而不是使用SLF4J会不会更好,因为Logback是建立在SLF4J之上的。 最佳答案 SLF4J为Logback增加了零开销,因为它只是由Logback实现的接口(interface),

java - 如何让 liquibase 使用 slf4j 进行日志记录?

很多people不确定how至fix将liquibase记录到控制台或文件中。是否可以将liquibase记录到slf4j中? 最佳答案 有,但有点模糊。报价FixingliquibaseloggingwithSLF4JandLog4J:有简单的方法,通过加入一个依赖:org.slf4jslf4j-api1.7.5org.slf4jslf4j-log4j121.7.5com.mattbertoliniliquibase-slf4j1.2.1现在前两个是您的日常日志框架(slf4japi和log4j实现)。这些是您标准log4j依赖项

java - 即使使用 slf4j,您是否应该保护您的日志记录?

在这里帮助我进行辩论..:)这里的slf4j站点http://www.slf4j.org/faq.html#logging_performance表示由于参数化日志记录,日志保护不是必需的。IE。而不是写:if(logger.isDebugEnabled()){logger.debug("Entrynumber:"+i+"is"+String.valueOf(entry[i]));}你可以逃脱:Objectentry=newSomeObject();logger.debug("Theentryis{}.",entry);这真的没问题,还是会产生(尽管较低)创建传递给跟踪方法的静态字符串

java - SLF4J:加载类 "org.slf4j.impl.StaticLoggerBinder"失败。在一个 Maven 项目中

这个问题在这里已经有了答案:SLF4J:Failedtoloadclass"org.slf4j.impl.StaticLoggerBinder".error(12个回答)关闭9年前。我依赖于SLF4J。我收到此错误:SLF4J:Failedtoloadclass"org.slf4j.impl.StaticLoggerBinder".SLF4J:Defaultingtono-operation(NOP)loggerimplementationSLF4J:Seehttp://www.slf4j.org/codes.html#StaticLoggerBinderforfurtherdetai

java - 如何找到 slf4j 绑定(bind)到的库?

我正在使用slf4j登录我的应用程序。我明白了slf4j的目的。我想知道如何找出当前绑定(bind)的日志库slf4j。我在我引用的库中有log4j。我假设slf4j已将自身绑定(bind)到log4j。我想知道的是,有没有什么方法可以明确地确认这个绑定(bind)? 最佳答案 只需按照SLF4J的方式来发现绑定(bind)即可:finalStaticLoggerBinderbinder=StaticLoggerBinder.getSingleton();现在您可以尝试找出实际的实现是什么logback就我而言:System.out