log4j2 标签解析

时间:2024-07-23 22:36:08
  • 根节点Configuration有两个属性:status和monitorinterval,有两个子节点:Appenders和Loggers.
    status用来指定log4j本身的打印日志的级别.
    monitorinterval用于指定log4j自动重新配置的监测间隔时间,单位是s,最小是5s.
  • Appenders节点,常见的有三种子节点:Console、RollingFile、File.
    * Console节点用来定义输出到控制台的Appender.
       name:指定Appender的名字.
       target:SYSTEM_OUT 或 SYSTEM_ERR,一般只设置默认:SYSTEM_OUT.
       PatternLayout:输出格式,不设置默认为:%m%n.
    * File节点用来定义输出到指定位置的文件的Appender.
      name:指定Appender的名字.
      fileName:指定输出日志的目的文件带全路径的文件名.
      PatternLayout:输出格式,不设置默认为:%m%n.
    * RollingFile节点用来定义超过指定大小自动删除旧的创建新的的Appender.
      name:指定Appender的名字.
      fileName:指定输出日志的目的文件带全路径的文件名.
      PatternLayout:输出格式,不设置默认为:%m%n.
      filePattern:指定新建日志文件的名称格式.
      Policies:指定滚动日志的策略,就是什么时候进行新建日志文件输出日志.
      TimeBasedTriggeringPolicy:Policies子节点,基于时间的滚动策略,interval属性用来指定多久滚动一次.
      SizeBasedTriggeringPolicy:Policies子节点,基于指定文件大小的滚动策略,size属性用来定义
      每个日志文件的大小.
      DefaultRolloverStrategy:用来指定同一个文件夹下最多有几个日志文件时开始删除最旧的,
      如果不做配置,默认是7
     
  • Loggers节点,常见的有两种:Root和Logger.
    * Root节点用来指定项目的根日志,如果没有单独指定Logger,那么就会默认使用该Root日志输出
      AppenderRef:Root的子节点,用来指定该日志输出到哪个Appender.
    * Logger节点用来单独指定日志的形式,比如要为指定包下的class指定不同的日志级别等。
      name:用来指定该Logger所适用的类或者类所在的包全路径,继承自Root节点.