新手看Java日志框架工具----log4j(一)

版权声明:随意转载 https://blog.csdn.net/bigcupwater/article/details/78032031

什么是日志?

  日志,记录下程序运行过程中产生的相关信息,比如错误信息,执行时间、状态信息等。它方便写程序的人调试程序,了解程序运行情况。就好比一个人的日记,记录下他一天都干了些什么事一样。
  写程序的时候,或多或少会出现问题。有时候发现这些错误最简单暴力的方法就是使用"System.out.print()、printStrackTrace()“打印相关的错误信息。这种方法固然直观有效,但是一旦输出多了起来,无法找到输出的位置,再加上最后这些话都需要注释掉,找个错就搞得会很麻烦。这个时候,我们就需要使用相关的日志工具辅助我们去生成这些信息,为自己调试、维护程序提供方便。
  

日志工具—-log4j

  log4j 辅助我们生成日志,使用它我们可以控制日志信息输送的目的地、输出格式。定义每一条日志信息的级别,我们可以更细致的控制日志的生成过程。而这些控制的实现仅仅需要你去修改配置文件而已,而不需要修改代码。
  log4j 就是一个相关包,使用它值需要把包导入到我们的项目里,然后就像使用Java类库一样直接使用。

使用方法

  • 新建项目,项目名称随意,我这里使用的是 TestLog4j
  • 导入相关包

    • 右键新建的项目,选择 Build Path—>Configure Build Path—>选择 Libraries—>选择 Add External JARS…
      这里写图片描述
    • 在弹出的文件选择对话框中双击自己下载的 .jar 文件,点OK。
    • 分别在 src 文件夹下面生成一个 log4j.properties 文件,右键 src 文件夹,new—>file—>在file name一栏输入 log4j.properties —>Finish
    • 在工程根目录下,新建一个 log 文件夹,右键项目,new—>folder—>在folder name一栏输入 log —>Finish。再在该文件夹下面新建 log.log 文件和 errorlog.log 文件。
    • 文件目录:
      这里写图片描述
  • 测试程序

    • 双击 log4j.properties 文件,添加代码

      log4j.rootLogger=info, stdout, log, errorlog  
      log4j.Logger=search,Test  
      
      
      ###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 =  %d{ABSOLUTE} [ %t ] [ %p ]:%L - %m%n  
      
      
      ### Log ###    
      
      log4j.appender.log = org.apache.log4j.DailyRollingFileAppender  
      log4j.appender.log.File = log/log.log  
      log4j.appender.log.Append = true  
      log4j.appender.log.Threshold = INFO  
      log4j.appender.log.DatePattern='.'yyyy-MM-dd  
      log4j.appender.log.layout = org.apache.log4j.PatternLayout  
      log4j.appender.log.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t ] %m%n  
      
      
      ### Error ###  
      
      log4j.appender.errorlog = org.apache.log4j.DailyRollingFileAppender  
      log4j.appender.errorlog.File = log/errorlog.log  
      log4j.appender.errorlog.Append = true  
      log4j.appender.errorlog.Threshold = ERROR   
      log4j.appender.errorlog.DatePattern='.'yyyy-MM-dd  
      log4j.appender.errorlog.layout = org.apache.log4j.PatternLayout  
      log4j.appender.errorlog.layout.ConversionPattern =%-d{yyyy-MM-dd HH:mm:ss} [ %t ] %m%n
      
    • 新建测试类,并添加代码

      import org.apache.log4j.Logger;  
      
      public class TestLog4j {  
          public static void main(String[] args) {  
              Logger logger = Logger.getLogger(TestLog4j.class);  
              logger.info("Myname");  
          }  
      }  
      
    • 控制台输出16:49:27,541 [ main ] [ INFO ]:6 - Myname

    • log.log 文件有文字信息 2017-09-19 16:49:27 [ main ] Myname

总结

  如果成功出现上诉两段文字,说明 log4j 可以正常使用。从开始希望通过编译,到希望不出现异常,不出BUG,我们越走越远…..

猜你喜欢

转载自blog.csdn.net/bigcupwater/article/details/78032031