繁体   English   中英

Web应用程序中的Log4j2配置

[英]Log4j2 configuration in web application

我的类路径中有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指定一个位置,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM