gpt4 book ai didi

java - Web 应用程序中的 Log4j2 配置

转载 作者:行者123 更新时间:2023-11-28 22:08:33 26 4
gpt4 key购买 nike

我的类路径中有 log4j2 jar 文件。下面是我的 Log4j2.xml。我想将日志写入我的本地文件“G:/test/apps.log”,但我有两个问题:

  1. 当我运行 Web 应用程序时,输出仅打印到控制台而不是文件。
  2. 我看到一些建议将 Log4j2.xml 放在 WEB-INF/classes 中的答案。但是,当我进行干净构建时,该文件将被删除,那么我应该将配置文件放在哪里?

    注意:我使用 Tomcat:7.0.34,Servlet 3。我已经删除了 Cantalina 属性中对 Log4J 的引用。

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration status="warn">
    <appenders>

    <Console name="Console" target="SYSTEM_OUT">
    <PatternLayout pattern="%d{HH:mm:ss} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>

    <File name="MyFile" fileName="G:/test/apps.log">
    <PatternLayout pattern="%d{yyyy-mm-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </File>

    </appenders>

    <loggers>

    <root level="trace">
    <appender-ref ref="MyFile" level="trace" additivity="true"/>
    </root>

    </loggers>
    </configuration>

最佳答案

您需要类路径中的 log4j-api-2.0 和 log4j-core-2.0 jar 文件。如果未找到核心 jar,则 api jar 回退到 SimpleLogger(控制台)实现。

通过将配置更改为 <configuration status="trace">您可以查看 log4j2 内部日志记录,这可能有助于解决配置问题。 (不过这也需要 log4j-core-2.0 jar。)

log4j2.xml 文件可以在类路径中,或者您可以使用系统属性-Dlog4j.configurationFile=/path/to/log4j2.xml 指定一个位置。 ,

关于java - Web 应用程序中的 Log4j2 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21373549/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com