Log4j写入应用程序日志文件而不是自己的日志文件

时间:2016-07-13 08:34:22

标签: java log4j

Log4j写入应用程序日志文件而不是我自己的日志文件。 我试图在不编辑log4j.properties的情况下找到解决方案。我是否必须编辑配置文件?为什么没有创建lg文件。

该应用程序作为tomcat Web应用程序运行。

import org.apache.log4j.Logger;
import org.apache.log4j.FileAppender;
import org.apache.log4j.Level;
import org.apache.log4j.SimpleLayout;


public class ArchiveJanitor extends SecureResource {

private static final Logger logger =  org.apache.log4j.Logger.getRootLogger();

public ArchiveJanitor(Context context, Request request, Response response) {
        super(context, request, response);
        try {
            SimpleLayout layout = new SimpleLayout();
            FileAppender fileAppender = new FileAppender( layout, "logs/Janitor.log", false );
            logger.addAppender(fileAppender);
            logger.setLevel((Level) Level.ALL);
        }catch (IOException e){
            logger.error(e.toString());
        }
    }
   public void doSmth(){
      logger.error("error ....")
   }

}

1 个答案:

答案 0 :(得分:0)

而不是private static final Logger logger = org.apache.log4j.Logger.getRootLogger();尝试使用public static final Logger logger = LogManager.getLogger(ArchiveJanitor.class); 但最好在.properties file

中配置它