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 ....")
}
}
答案 0 :(得分:0)
而不是private static final Logger logger = org.apache.log4j.Logger.getRootLogger();
尝试使用public static final Logger logger = LogManager.getLogger(ArchiveJanitor.class);
但最好在.properties
file