log4j无法创建日志文件

时间:2012-08-27 22:46:37

标签: eclipse log4j

我正在尝试在我的Java Web应用程序中使用log4j。我正在使用Tomcat 6。 问题是永远不会创建日志文件。

log4j.properties位于类路径中,这意味着:

  • My_Project名称
  • Java资源
    • SRC
    • log4j.properties

在我使用的源代码中:

private static Logger log = Logger.getLogger(myclass.class);

然后当我想写一行时:

log.error("here the error message", e);

此处还有我的log4j.properties文件:

 log4j.rootLogger=A1,file

log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{ISO8601} %5p [%t] %c{1}:%L - %m%n

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.maxFileSize=5000KB
log4j.appender.file.maxBackupIndex=20
log4j.appender.file.File=URLFILE/file.log
log4j.appender.file.threshold=DEBUG
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ISO8601} %5p [%t] %c{1}:%L - %m%n

为什么当我运行它时,永远不会创建日志文件?

3 个答案:

答案 0 :(得分:1)

我无法帮助您处理log4j.properties文件,但我可以为您提供我使用的log4j.xml文件:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

  <appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="${catalina.home}/logs/Log.log"/>
    <param name="DatePattern" value="'.'yyyy-MM-dd"/>
    <param name="Append" value="true"/>
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %p - %m%n"/>
    </layout>
  </appender>

    <!--                           -->
    <!-- setup log4j's root logger -->
    <!--                           -->
    <root>
        <level value="DEBUG" />
        <appender-ref ref="FILE"/>
    </root>

</log4j:configuration>

我相信xml配置无论如何都是配置log4j的首选方式。

答案 1 :(得分:0)

你已经在src中放了一个log4J.property文件,那就是gud ..只需在lib中放一个log4J.jar文件......

答案 2 :(得分:0)

你的类路径中是否有log4j.jar?

也许您还必须设置根记录器级别。 log4j.rootLogger= DEBUG, A1,file