log4j日志管理

log4j.properties

  1、Log4j由三个重要的组件构成:

        1、1 日志信息的优先级(

          (1)off 最高等级,用于关闭所有日志记录。

          (2)fatal 指出每个严重的错误事件将会导致应用程序的退出。

          (3)error 指出虽然发生错误事件,但仍然不影响系统的继续运行。

          (4)warm 表明会出现潜在的错误情形。

          (5)info 一般和在粗粒度级别上,强调应用程序的运行全程。

          (6)debug 一般用于细粒度级别上,对调试应用程序非常有帮助。

          (7)all 最低等级,用于打开所有日志记录。

          补充:这些级别是定义在org.apache.log4j.Level类中,Log4j只建议使用4个级别,优先级从高到低分别是error,warn,info和debug。

             通过使用日志级别,可以控制应用程序中相应级别日志信息的输出。例如,如果使用了info级别,

             则应用程序中所有低于info级别的日志信息(如debug)将不会被打印出来。

        1、2 日志信息的输出目的地(指定日志将打印到控制台还是文件)

           1、3 日志信息的输出格式(控制日志信息的显示内容)

    2使用java特性文件作为配置文件

        2、1配置根Logger,语法为:     

      #level即日志的最低输出级别
      #appenderName指定日志记录输出到那个地方,可同时指定多个输出目的地
      log4j.rootLogger=【level】,appenderName,

        2、2配置日志信息输出目的地Appender,其语法为:       

      #设置日志输出的地方
      log4j.appender.appenderName=
      #以下为可输出的位置       org.apache.log4j.ConsoleAppender(控制台)       org.apache.log4j.FileAppender(文件)       org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)       org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)       org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

        2、3配置日志信息的格式,语法为      

      #设置日志输出的格式      
      log4j.appender.appenderName.layout
=       #日志输出的格式为以下几种       org.apache.log4j.HTMLLayout(以HTML表格形式布局)       org.apache.log4j.PatternLayout(可以灵活地指定布局模式)       org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)       org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)

      #设置自定义输出格式
      log4j.appender.appenderName.layout=org.apache.log4j.PatternLayout
      log4j.appender.appenderName.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
       %c 输出日志信息所属的类的全名
       %d 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss },输出类似:2020-04-17- 16:33:33
       %f 输出日志信息所属的类的类名
       %l 输出日志事件的发生位置,即输出日志信息的语句处于它所在的类的第几行
        %m 输出代码中指定的信息,如log(message)中的message
        %n 输出一个回车换行符,Windows平台为“rn”,Unix平台为“n”
       %p 输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL。如果是调用debug()输出的,则为DEBUG,依此类推
        %r 输出自应用启动到输出该日志信息所耗费的毫秒数
        %t 输出产生该日志事件的线程名
 
       例
       

        

      

 

    

  

原文地址:https://www.cnblogs.com/wongzzh/p/12721938.html