通过log4j2进行Tomcat访问日志记录?

时间:2020-02-06 18:43:56

标签: tomcat logging log4j2 access-log tomcat-valve

我正在尝试在使用tomcat的Web应用程序中使用log4j2日志记录框架进行访问日志记录的配置。 虽然我看到有一个可用于logback的Access日志阀,但我根本没有找到任何可覆盖log4j2框架的Access日志阀。

Tomcat版本:9

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

直接从http://logging.apache.org/log4j/2.x/log4j-appserver/index.html报价。请注意,下面的大多数步骤都是为了使log4j替代项与标准tomcat内容分开。

Log4j可用作Apache Tomcat的日志记录框架。通过在引导类路径中包含log4j-api,log4j-core和log4j-appserver jar,可以自动实现此支持。还必须将名为log4j2-tomcat.xml,log4j2-tomcat.json,log4j2-tomcat.yaml,log4j2-tomcat.yml或log4j2-tomcat.properties的文件放置在引导类路径中。这很容易做到:

  1. 在catalina主页中创建一组名为log4j2 / lib的目录,并 log4j2 / conf。
  2. 放置log4j2-api-2.13.0.jar,log4j2-core-2.13.0.jar, 和log4j2 / lib目录中的log4j2-appserver-2.13.0.jar。
  3. 创建一个名为log4j2-tomcat.xml,log4j2-tomcat.json的文件, 的log4j2-tomcat.yaml,log4j2-tomcat.yml或log4j2-tomcat.properties log4j2 / conf目录。
  4. 在tomcat bin目录中创建或修改setenv.sh以包括 CLASSPATH = $ CATALINA_HOME / log4j2 / lib / *:$ CATALINA_HOME / log4j2 / conf