草庐IT

java - 如何纯粹以编程方式配置 log4j 2.x?

如何使用consoleappender配置log4j2.3纯编程(没有任何格式的配置文件)?基本上我正在寻找1.xcode的2.x版本.然后我会在我的类(class)中使用privatestaticfinalLoggerlogger=LogManager.getLogger();////somemethodlogger.debug(someString);没有任何配置我(如预期)面临ERRORStatusLoggerNolog4j2configurationfilefound.Usingdefaultconfiguration:loggingonlyerrorstotheconsole

java - 使用单个 log4j2 xml 文件配置 log4j2 和 log4j

我已将我的应用程序迁移到log4j2,并通过log4j2.xml对其进行配置但是,我使用的一些库依赖于log4j1。如果我使用以下方式运行应用程序:-Dlog4j.configurationFile=path/to/log4j2.xmllog4j1提示找不到配置文件。我使用的是log4j2提供的log4j1.x桥,log4j-1.2-api-2.0-rc1.jar。是否可以使用单个log4j2.xml来配置两者?我尝试过的另一种方法是同时配置log4j和log4j2:-Dlog4j.configurationFile=path/to/log4j2.xml-Dlog4j.configur

java - 混合 log4j 1.x 和 log4j 2

我有一个使用log4j2编写的新应用程序,以利用它的一些新功能。它使用的一个库有点老,是用log4j1.x构建的。我有一个问题,应用程序中的新代码写入日志,但旧库中的代码没有写入日志。我什至有一个类,它是旧库中某些东西的子类,也被旧库中的代码调用,并且该代码也不会写入日志。我已将应用程序配置为使用log4j2版本2.0.2,并且在将旧库作为maven依赖项引用时明确排除了log4j。如何让旧库中的代码登录到与新代码相同的文件中?重写旧库应该被视为最后的选择 最佳答案 您是否知道log4j2包含log4j-1.2的桥接器?您可以通过删

java - 请正确初始化log4j系统。在运行 Web 服务时

也许问这个看起来很傻,但我很困惑。我提到了ConfiguringLog4jproperty但这似乎没有帮助。我编写了一个简单的Web服务HelloWorld。在运行它时,我收到类似这样的错误:log4j:WARNNoappenderscouldbefoundforlogger(org.apache.axis.transport.http.AxisServlet).log4j:WARNPleaseinitializethelog4jsystemproperly.我不知道为什么会这样。我正在使用Eclipse生成Web服务并部署在Tomcat6.0中。我查看AxisDeveloper'sG

java - 获取异常 org.apache.logging.slf4j.SLF4JLoggerContext 无法转换为 org.apache.logging.log4j.core.LoggerContext

我的代码使用apache-log4j-2.0.2非常简单:importorg.apache.log4j.BasicConfigurator;importorg.apache.log4j.Logger;publicclassLog4jtest{staticLoggerlog=Logger.getLogger(Log4jtest.class);publicstaticvoidmain(String[]args){BasicConfigurator.configure();log.debug("Thisisdebugmessage");}}但是我遇到了这样的异常:Exceptioninthr

Java Logging - 我的日志文件在哪里?

我无法找到我的日志文件。我在WindowsXP上的Eclipse3.7.1中使用Java日志记录-java.util.logging。我的logging.properties文件的相关行是:handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler.level=INFOjava.util.logging.FileHandler.pattern=%h/java%u.logjava.util.logging.FileHandler.limit=50000java.util.logging.FileHandl

java - 带有 slf4j 和 log4j 的 hibernate 3.4

我正在尝试从Hibernate3.2升级到3.4,它显然使用了slf4j。我们的项目目前使用log4j。所以我的假设是我应该使用slf4j-log4j12包装的实现。Mavenslf4j依赖是:org.slf4jslf4j-log4j121.5.6虽然log4j依赖是:log4jlog4j1.2.15slf4j-log4j12和log4j都引用了最新版本(我可以在Maven存储库中找到)。当我运行我的应用程序时,Hibernate的日志记录失败:java.lang.NoSuchFieldError:nameatorg.slf4j.impl.Log4jLoggerAdapter.(Log

java - 使用 SL4J 进行日志记录、Jakarta Commons 日志记录、第三方库的 log4j 和我自己的代码

我有一些关于日志记录的问题,更具体地说是关于设置它并确保它工作的问题。我正在做的项目将使用Wicket,Spring和Hibernate.我知道Wicket和Hibernate使用Java的SimpleLoggingFacade(SL4J)并且Spring使用的是loggingcomponentfromApacheCommons.他们会幸福地共存吗?我以为我会使用log4j再加上SL4J和Apachecommons的日志组件,你认为这是个好主意吗?我可以将它们全部设置为将日志数据输出到一个通用文件中吗?或者我应该使用单独的文件?还是应该将日志消息存储在数据库中?(我宁愿不这样做,因为我

java - 设置 log4j 日志级别

我目前正在做一个使用log4j的项目。我正在运行一个测试用例(junit)并想将日志级别设置为跟踪,以便我可以查看所有值是否正确。项目中使用日志的类包含如下一行:privatestaticfinalLogLOG=LogFactory.getLog(MatchTaskTest.class);并使用类似这样的方式进行实际调试LOG.trace("value");我以前从未使用过log4j,有人知道我如何仅为测试用例更改日志级别,最好只需在eclipse的运行配置对话框中定义一个参数。 最佳答案 使用另一个配置文件也许你可以指向另一个配置

java - 如何使用 to log4j 写入文本文件?

我想知道如何将以下代码转换为将这些行输出到文本文件,而不是标准输出:importorg.apache.log4j.Logger;importorg.apache.log4j.PropertyConfigurator;publicclassHelloWorld{staticfinalLoggerlogger=Logger.getLogger(HelloWorld.class);publicstaticvoidmain(String[]args){PropertyConfigurator.configure("log4j.properties");logger.debug("Sampled