【问题标题】:Spring Loggers implementationSpring Loggers 实现
【发布时间】:2015-03-05 14:47:51
【问题描述】:

我在我的 Spring Web 应用程序中使用记录器。但是,当我在 Debug/Info 级别启用记录器时,Spring Jars 中的日志也会打印在日志文件中。请告诉我如何阻止显示内部日志。

我的记录器实现:

import org.apache.log4j.Logger;
static Logger log = Logger.getLogger(ClassName.class);

Log4j.properties

log4j.rootLogger=INFO, stdout, file


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{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n


log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File="location"
log4j.appender.file.MaxFileSize=5MB
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

这些是不需要的日志,还有更多类似的......

2015-03-05 20:16:02 INFO  DispatcherServlet:444 - FrameworkServlet 'SpringApp': initialization started
2015-03-05 20:16:02 INFO  XmlWebApplicationContext:495 - Refreshing WebApplicationContext for namespace 'SpringApp-servlet': startup date [Thu Mar 05 20:16:02 IST 2015]; root of context hierarchy
2015-03-05 20:16:02 INFO  XmlBeanDefinitionReader:315 - Loading XML bean definitions from ServletContext resource [/WEB-INF/SpringApp-servlet.xml]
2015-03-05 20:16:02 INFO  ClassPathBeanDefinitionScanner:202 - JSR-250 'javax.annotation.ManagedBean' found and supported for component scanning
2015-03-05 20:16:02 INFO  ClassPathBeanDefinitionScanner:210 - JSR-330 'javax.inject.Named' annotation found and supported for component scanning
2015-03-05 20:16:02 INFO  AutowiredAnnotationBeanPostProcessor:139 - JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2015-03-05 20:16:02 INFO  DefaultListableBeanFactory:557 - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1a5e65f: defining beans [loadController,org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframework.context.annotation.internalRequiredAnnotationProcessor,org.springframework.context.annotation.internalCommonAnnotationProcessor,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping#0,org.springframework.format.support.FormattingConversionServiceFactoryBean#0,org.springframework.validation.beanvalidation.LocalValidatorFactoryBean#0,org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter#0,org.springframework.web.servlet.handler.MappedInterceptor#0,org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver#0,org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver#0,org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver#0,org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping,org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter,org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter,org.springframework.web.servlet.view.InternalResourceViewResolver#0,org.springframework.context.annotation.ConfigurationClassPostProcessor$ImportAwareBeanPostProcessor#0]; root of factory hierarchy
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/logout],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.logout(javax.servlet.http.HttpSession)
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/login],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.loginUI()
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/loginAction],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.loginClicked(java.lang.String,java.lang.String)
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/loadLop],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.loadLop()
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/loadOthers],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.loadOthers()
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/jobStatus],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.getJobStatus(javax.servlet.http.HttpSession)
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/error],methods=[],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.errorHandling()
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/LOPAction],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.LOPAction(java.lang.String,java.lang.String,java.lang.String,javax.servlet.http.HttpSession)
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/PartsAction],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.partsAction(java.lang.String,javax.servlet.http.HttpSession)
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/LoadOthersAction],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.loadOthersAction(java.lang.String,java.lang.String,java.lang.String,java.lang.String,javax.servlet.http.HttpSession)
2015-03-05 20:16:02 INFO  RequestMappingHandlerMapping:190 - Mapped "{[/LoadOthersAction2],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public org.springframework.web.servlet.ModelAndView com.nagesh.testLoad.Controller.LoadController.loadOthersAction2(java.lang.String,java.lang.String,java.lang.String,java.lang.String,javax.servlet.http.HttpSession)
2015-03-05 20:16:02 INFO  Version:17 - HV000001: Hibernate Validator 5.2.0.Alpha1
2015-03-05 20:16:03 INFO  DispatcherServlet:463 - FrameworkServlet 'SpringApp': initialization completed in 1399 ms

【问题讨论】:

    标签: spring logging


    【解决方案1】:

    尝试根据您的需要将 spring 日志记录级别设置为错误或警告,如下所示。

    log4j.logger.org.springframework=ERROR

    【讨论】:

      【解决方案2】:

      如果您使用多个记录器(log4j、springs commons-logging、javautil's logging),您可以使用 SLF4J 作为外观。更多详情slf4j explanation

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-05-27
        • 2017-03-08
        • 1970-01-01
        • 1970-01-01
        • 2020-03-16
        • 2014-11-20
        • 2018-08-09
        相关资源
        最近更新 更多