Log4j2 - 配置

Ibo*_*lit 28 java configuration logging log4j log4j2

我正在尝试在我的新项目中采用Log4j2,但我得到了我的日志catalina.out,第一个始终是:ERROR StatusLogger Unable to locate a logging implementation, using SimpleLogger.看来我已根据Log4j2文档完成了所有工作,但仍然如此.

这是我实际做的:

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

我使用的是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>

小智 36

我有同样的问题.将log4j-core-2.0-beta3.jar添加到它运行的类路径之后.


Vla*_*cea 15

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>
Run Code Online (Sandbox Code Playgroud)

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

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

    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j2-version}</version>
    </dependency>
    
    Run Code Online (Sandbox Code Playgroud)


Pau*_*gas 5

新图标 已更新至2.7版

将下一个罐子添加到您的项目中:

如果您使用的是Maven,请添加依赖项:

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.7</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)