zoukankan      html  css  js  c++  java
  • log4j 知识点

    • Log4j中有三个主要组成部分:
      loggers: 负责捕获记录信息。
      appenders : 负责发布日志信息,以不同的首选目的地。
      layouts: 负责格式化不同风格的日志信息。

    • 默认情况下,日志管理在CLASSPATH 查找一个名为 log4j.properties 的文件。

    • log4j可以发布在不同的地方,如数据库,文件,控制台,UNIX系统日志等。

    • Logger类不允许实例化一个新的Logger实例,但它提供了两个静态方法获得一个 Logger 对象:

    public static Logger getRootLogger();
    public static Logger getLogger(String name);
    
    • org.apache.log4j.Level类提供以下级别,但也可以通过Level类的子类自定义级别。
    Level 描述
    OFF 这是最高等级,为了关闭日志记录
    ALL 各级包括自定义级别
    TRACE 指定细粒度比DEBUG更低的信息事件
    DEBUG 指定细粒度信息事件是最有用的应用程序调试
    INFO 指定能够突出在粗粒度级别的应用程序运行情况的信息的消息
    WARN 指定具有潜在危害的情况
    ERROR 错误事件可能仍然允许应用程序继续运行
    FATAL 指定非常严重的错误事件,这可能导致应用程序中止
    • Layout 所有的选项有:
      DateLayout
      HTMLLayout
      PatternLayout
      SimpleLayout
      XMLLayout

    • 使用HTMLLayout和XMLLayout,可以在HTML和XML文件中生成日志。
      注意:使用HTMLLayout时,html日志文件中,</ HTML>、</ body>标记是没有的,需要自己补充。

    • PatternLayout 转换字符:

    转换字符 表示的意思
    c 用于输出的记录事件的类别。例如,对于类别名称"a.b.c" 模式 %c{2} 会输出 "b.c",
    C 用于输出呼叫者发出日志请求的完全限定类名。例如,对于类名 "org.apache.xyz.SomeClass", 模式 %C{1} 会输出 "SomeClass".
    d 用于输出的记录事件的日期。例如, %d{HH:mm:ss,SSS} 或 %d{dd MMM yyyy HH:mm:ss,SSS}。date
    F 用于输出被发出日志记录请求,其中的文件名,file
    l 用于将产生的日志事件调用者输出位置信息,location
    L 用于输出从被发出日志记录请求的行号,line number
    m 用于输出使用日志事件相关联的应用程序提供的消息,message
    M 用于输出发出日志请求所在的方法名称,method
    n 输出平台相关的行分隔符或文字,换行
    p 用于输出的记录事件的优先级,priority
    r 用于输出毫秒从布局的结构经过直到创建日志记录事件的数目
    t 用于输出生成的日志记录事件的线程的名称,thread
    x 用于与产生该日志事件的线程相关联输出的NDC(嵌套诊断上下文)
    X 在X转换字符后面是键为的MDC。例如 X{clientIP} 将打印存储在MDC对键clientIP的信息
    % 文字百分号 %%将打印%标志
    • PatternLayout 格式修饰符:
      默认情况下,相关资料原样输出。然而,在格式修饰符的帮助下,可以改变最小字段宽度,最大字段宽度和对齐。
      下表涵盖了各种各样的修饰符的情况:
    Format modifier left justify minimum width maximum width 注释
    %20c false 20 none 用空格左垫,如果类别名称少于20个字符长
    %-20c true 20 none 用空格右垫,如果类别名称少于20个字符长
    %.30c NA none 30 从开始截断,如果类别名称超过30个字符长
    %20.30c false 20 30 用空格左侧垫,如果类别名称短于20个字符。但是,如果类别名称长度超过30个字符,那么从开始截断。
    %-20.30c true 20 30 用空格右侧垫,如果类别名称短于20个字符。但是,如果类别名称长度超过30个字符,那么从开始截断。
    • Appender 所有的选项有:
      AppenderSkeleton
      AsyncAppender
      ConsoleAppender
      DailyRollingFileAppender
      ExternallyRolledFileAppender
      FileAppender
      JDBCAppender
      JMSAppender
      LF5Appender
      NTEventLogAppender
      NullAppender
      RollingFileAppender
      SMTPAppender
      SocketAppender
      SocketHubAppender
      SyslogAppender
      TelnetAppender
      WriterAppender
  • 相关阅读:
    Hadoop编译源码
    大数据生态体系
    crontab任务调度
    yum概述配置
    如何识别图像边缘
    神经网络入门
    Linux命令locate
    B1299 [LLH邀请赛]巧克力棒 博弈论
    B1090 [SCOI2003]字符串折叠 区间dp
    B1068 [SCOI2007]压缩 区间dp
  • 原文地址:https://www.cnblogs.com/cag2050/p/7675683.html
Copyright © 2011-2022 走看看