Log4j2 - 配置

2022-09-01 10:29:32

我正在尝试在我的新项目中采用Log4j2,但我得到了我的日志,第一个总是:。似乎我已经根据Log4j2文档完成了所有操作,但仍然如此。catalina.outERROR StatusLogger Unable to locate a logging implementation, using SimpleLogger

以下是我实际所做的:

  1. 已添加到我的项目中log4j-api-2.0-beta3.jar
  2. 创建了一个文件,并将其放在类路径上的位置(当前在 .事实上,我从Log4J2网页上取了一个示例文件。log4j2.xml/usr/local/tomcat/home/lib
  3. 重新启动了雄猫。

我使用的是Tomcat 7,MacOS X 10.8,Java 7。

我错过了什么?

为了以防万一,这是我正在使用的log4j2.xml:

<?xml version="1.0" encoding="UTF-8"?>
<configuration status="warn" name="MyApp" packages="">
  <appenders>
    <File name="MyFile" fileName="logs/app.log">
      <PatternLayout>
        <pattern>%d %p %C{1.} [%t] %m%n</pattern>
      </PatternLayout>
    </File>
  </appenders>
  <loggers>
    <root level="trace">
      <appender-ref ref="MyFile"/>
    </root>
  </loggers>
</configuration>


答案 1

我遇到了同样的问题。在将log4j-core-2.0-beta3添加到它工作的类路径之后.jar。


答案 2

Maven 中,您通常具有以下日志记录配置:

<properties>    
    <slf4j-version>1.7.7</slf4j-version>
    <slf4j-log4j2-version>2.0.1</slf4j-log4j2-version>
</properties>

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>${slf4j-version}</version>
</dependency>

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>${slf4j-log4j2-version}</version>
</dependency>

要添加日志核心库,您必须:

  1. 将 2.0.1 添加到属性部分
  2. 添加日志核心依赖项:

    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j2-version}</version>
    </dependency>
    

推荐