zoukankan      html  css  js  c++  java
  • log4j 注意事项

    因为项目是 ssm+maven

    所以有关log4j的注意事项记录一下

    首先,需要在web.xml里配置spring的拦截器用于支持在项目下生成log4j日志文件

        <!-- 配置log4j输出日志文件的相对路径的spring监听器 -->
        <listener>
            <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
        </listener>

    因为默认项目目录就是 webapp.root ,所以直接这样配置即可

    参考:https://blog.csdn.net/dahongwudi/article/details/17302211

    ### 设置###
    log4j.rootLogger = debug,stdout,D,E
    
    ### 输出信息到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 = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
    
    ### 输出DEBUG 级别以上的日志到 ${webapp.root}/WEB-INF/logs/debug/DEBUG.log ###
    log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.D.File = ${webapp.root}/WEB-INF/logs/debug/DEBUG.log
    log4j.appender.D.Append = true
    log4j.appender.D.Threshold = DEBUG 
    log4j.appender.D.layout = org.apache.log4j.PatternLayout
    log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n
    
    ### 输出ERROR 级别以上的日志到 ${webapp.root}/WEB-INF/logs/error/ERROR.log ###
    log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.E.File = ${webapp.root}/WEB-INF/logs/error/ERROR.log
    log4j.appender.E.Append = true
    log4j.appender.E.Threshold = ERROR 
    log4j.appender.E.layout = org.apache.log4j.PatternLayout
    log4j.appender.E.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n

    还有,如果要想成功使用log4j把日志记录进文件,就必须使用log4j专用的记录器:

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

    参考:

    log4j中Logger.getLogger与LogFactory.getLog的区别

    log4j优先级:

    日志信息的优先级

    org.apache.log4j.Level类提供以下级别,但也可以通过Level类的子类自定义级别。

    Level描述
    ALL 各级包括自定义级别
    DEBUG 指定细粒度信息事件是最有用的应用程序调试
    ERROR 错误事件可能仍然允许应用程序继续运行
    FATAL 指定非常严重的错误事件,这可能导致应用程序中止
    INFO 指定能够突出在粗粒度级别的应用程序运行情况的信息的消息
    OFF 这是最高等级,为了关闭日志记录
    TRACE 指定细粒度比DEBUG更低的信息事件
    WARN 指定具有潜在危害的情况
    
    

    对于标准级别它们关系如下:ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF

    log4j详细讲解:

    https://blog.csdn.net/u012422446/article/details/51199724

  • 相关阅读:
    心态--编程+成长
    【Oracle】容易犯的错误和技巧集合
    【WPF】DataGrid的Row样式设置
    【WPF】给TextBox添上Label
    【Oracle】异常信息的加工处理
    【.Net 】Json和Xml解析
    【Win32 API】利用SendMessage实现winform与wpf之间的消息传递
    【WCF】利用WCF实现上传下载文件服务
    【Oracle】实现Oracle数据库对象的一键升级
    感触
  • 原文地址:https://www.cnblogs.com/kinome/p/9579285.html
Copyright © 2011-2022 走看看