当前位置: 首页 > 知识库问答 >
问题:

从log4j-1.2.17迁移到Log4j2.17.1后未打印的日志

赫连靖琪
2023-03-14

我正试图从log4j-1.2.17迁移到log4j-api-2.17.1,但在所有更改之后,日志没有打印出来。我使用的“选项2”是https://logging.apache.org/log4j/2.x/manual/migration.html .

我添加了lo4j-api-2.17.1。jar和log4j-core-2.17.1。jar在我的libs文件夹中,并正确配置了log4j2。xmlsrc/resources/ 文件夹。

当我运行我的Weblogic 12c服务器时,我的控制台中没有生成错误,也没有任何错误或警告。它是一个jdk 1.6struts 2java web应用程序

日志打印罚款时,我使用下面的VM args:

-Dlog4j2.configurationFile=%LOG_PATH% -Dlogpath=%LOGS%
set LOG_PATH=C:\bea\user_projects\domains\app_domain\conf\log4j2.xml
set LOGS=C:\bea\user_projects\domains\app_domain\logs

但由于业务需求,此方法不适用于Prod env。有没有其他方法可以通过java代码执行VM args的任务而不使用VM args?


共有1个答案

齐建安
2023-03-14
匿名用户

另一种方法是使用系统属性。然后以编程方式添加属性:

System.setProperty("log4j2.configurationFile", "/path/to/log4j2.xml");

您可以将此代码添加到调度程序侦听器。请参阅应如何使用调度程序侦听器。

参考:

  • 系统属性教程。
  • System.set属性的javadoc(字符串键,字符串值)。

 类似资料:
  • 当出现此错误时,我没有记录任何内容。log的最后一行正确显示在其相应的日志中。 2015-04-02 13:58:51正在启动消息服务... ^[[?1;2C^[[?1;2C2015-04-02 13:59:06消息服务已成功启动。

  • 我正在从log4j1迁移。由于最近的漏洞,x到log4j2。另一个依赖项似乎引用了旧的log4j1。x文件。 除了删除旧的log4j1. x文件之外,我还添加了log4j-core、log4j-api和log4j-1.2-api所有2.16版本。我查阅了迁移的留档https://logging.apache.org/log4j/2.x/manual/migration.html,并认为最后一个ja

  • 当我在Wildfly10上部署war时,Log4j日志不会打印。1.0.最终的不过,它与Tomcat配合得很好。 我在网上发现Wildfly使用log4j,所以我在jboss部署结构中排除了log4j。下面的xml避免了依赖冲突,但没有运气。 下面是我log4.properties档案 下面是我的pom。xml依赖关系 下面是我部署战争时得到的错误日志。 我正在尝试运行独立的完整ha。xml

  • 声明 接受LoggerFactory的对org.apache.Log4j.logger.getLogger的调用必须删除org.apache.Log4j.spi.LoggerFactory并使用Log4J2的其他扩展机制之一。 log4j2中有哪些扩展机制,以及如何在log4j2中最好地迁移如下所示的方法

  • 下面的方法已经使用了一段时间,当时我正在处理的系统有log4j。现在我们正在从Log4j转移到Log4j2,我会遇到编译问题。 Log4j2 jar:log4j-api-2.12.1.jar,log4j-core-2.12.1.jar 有没有人可以提供一些帮助,以解决上述问题的正确方法是什么?

  • 我有一个使用log4j的java应用程序,配置如下。 log4j.properties 我想使用与上面相同的配置迁移到log4j2。尚未找到任何与log4j2属性配置文件相关的内容,因为最近包含了此支持。 谁能帮我弄清楚我的log4j2怎么样。属性文件是否具有上述相同的配置?