Java 在我的应用程序中添加简单的log4j

Java 在我的应用程序中添加简单的log4j,java,Java,我正在尝试将log4j添加到我的应用程序中,但它没有在文件或控制台中打印警告消息 我需要能够在我的atp.log和控制台输出(intellij)中打印信息、错误、警告 我的配置 # Root logger option log4j.rootLogger= stdout, file # Avoid spam from hibernate log4j.logger.org.hibernate=info # Redirect log messages to console log4j.ap

我正在尝试将log4j添加到我的应用程序中,但它没有在文件或控制台中打印警告消息

我需要能够在我的atp.log和控制台输出(intellij)中打印信息、错误、警告

我的配置

    # Root logger option
log4j.rootLogger= stdout, file

# Avoid spam from hibernate
log4j.logger.org.hibernate=info

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{dd-MM-yyyy HH:mm:ss} %-5p %c{1}:%L - %m%n

# Redirect log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender

#outputs to Tomcat home
log4j.appender.file.File=${catalina.home}/logs/atp.log
log4j.appender.file.MaxFileSize=200MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
代码

它进入这个记录器,但不打印任何内容

@Component("accessDeniedHandler")
公共类MyCustomAccessDeniedHandler实现AccessDeniedHandler{

private static final Logger logger = LoggerFactory.getLogger(MyCustomAccessDeniedHandler.class);

@Override
public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException exc) throws IOException {
    Authentication auth = SecurityContextHolder.getContext().getAuthentication();
    if (auth != null) {
        logger.info("User: " + auth.getName()
                + " attempted to access the protected URL: "
                + request.getRequestURI());
    }

    response.sendRedirect(request.getContextPath() + "/error403");
}
}


此外,您的配置文件必须名为log4j.properties

您应该阅读下面的链接,并且还应该是log4j.rootLogger=debug(例如),stdout,file