zoukankan      html  css  js  c++  java
  • log log4j配置

        log4j配置

    日志路径:

     web方式:
    web.xml

    <context-param>    
            <param-name>log4jConfigLocation</param-name>    
            <param-value>webapp.root</param-value>    
    
    </context-param>       
    <context-param>    
            <param-name>log4jRefreshInterval</param-name>    
            <param-value>60000</param-value>    
    </context-param> 
            <listener>    
            <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>    
    
    </listener>

    log4j.properites

    log4j.rootCategory=INFO,stdout,R
    
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}  %p %t %c - %m%n
    
    log4j.appender.R=org.apache.log4j.RollingFileAppender
    log4j.appender.R.File=${webapp.root}/logs/log.log
    
    log4j.appender.R.MaxFileSize=10000KB
    log4j.appender.R.MaxBackupIndex=100
    log4j.appender.R.layout=org.apache.log4j.PatternLayout
    log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}  %p %t %c - %m%n
    
    #log4j.logger.org.hibernate=INFO
    log4j.logger.com.sohu.fortune.talk=DEBUG
    log4j.logger.org.apache.commons.httpclient=ERRORf

     

     

    Log4j支持两种配置文件格式,一种是XML格式的文件,一种是properties格式的文件。

     获取路径:

    String rootPath=this.getClass().getClassLoader().getResource("").getPath();

    1.log4j.properties配置方法:

    步骤:

    0.下载log4j的jar包;

    1.新建java项目;

    2.新建包:

    3.新建类:

    4.在src下新建log4J.properties文本文件【日志配置文件】

    5.新建lib文件夹:【存放第三方jar包】

    6.新建bin文件夹:【存放生成的.class文件】

     

     

    如下图:

     

     

    package com.loveryw;
    
    import org.apache.log4j.Logger; 
    
    import org.apache.log4j.PropertyConfigurator;
    
    public class log4Test {
     private static Logger loger;
    
     //测试函数
     public static void main(String args[])
     {
         String filePath="C:\workspace\Log4jTest\src\";
         PropertyConfigurator.configure(filePath+"log4j.properties");

    //获取路径,并加载log4j的配置文件
    /*
    roperties properties=new Properties();
    InputStream inStream =inStream = Launcher.class.getClassLoader().getResourceAsStream("conf/log4j.properties");
      try {
      properties.load(inStream);
      }catch (IOException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }
      PropertyConfigurator.configure(properties);
      log.info("start...");
    */ loger=Logger.getLogger("log4Test"); loger.debug("我是个bug"); loger.info("我是个info"); loger.error("我是个erro"); } }

     配置文件内容:log4J.properites

    log4j.rootLogger=info,stdout,info,debug,error
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
     
    log4j.logger.info=info
    log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.info.layout=org.apache.log4j.PatternLayout
    log4j.appender.info.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
    log4j.appender.info.datePattern='.'yyyy-MM-dd
    log4j.appender.info.Threshold = INFO 
    log4j.appender.info.append=true
    log4j.appender.info.File=C:\workspace\Log4jTest\logs\info.log
     
    log4j.logger.debug=debug
    log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.debug.layout=org.apache.log4j.PatternLayout
    log4j.appender.debug.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
    log4j.appender.debug.datePattern='.'yyyy-MM-dd
    log4j.appender.debug.Threshold = DEBUG 
    log4j.appender.debug.append=true
    log4j.appender.debug.File=C:\workspace\Log4jTest\logs\debug.log
    
    log4j.logger.error=error
    log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.error.layout=org.apache.log4j.PatternLayout
    log4j.appender.error.layout.ConversionPattern=[%-5p] [%d{HH:mm:ss}] %c - %m%n
    log4j.appender.error.datePattern='.'yyyy-MM-dd
    log4j.appender.error.Threshold = ERROR 
    log4j.appender.error.append=true
    log4j.appender.error.File=C:\workspace\Log4jTest\logs\error.log 

    2.xml配置方法:【主要用于web的配置】

    常用参数说明:

    1.log4j有三种主要组件:logger、appender and layout
      2.Log4j提供的appender有以下几种:
      org.apache.log4j.ConsoleAppender(控制台)
      org.apache.log4j.FileAppender(文件)
      org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
      org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
      org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
      3.Log4j提供的layout有以下几种:
      org.apache.log4j.HTMLLayout(以HTML表格形式布局)
      org.apache.log4j.PatternLayout(可以灵活地指定布局模式)
      org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串)
      org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
      4.Log4j提供的几种输出格式:
      %M:Used to output the method name where the logging request was issued.
      %m:Used to output the application supplied message associated with the logging event.
      %l:Used to output location information of the caller which generated the logging event
      %L:Used to output the line number from where the logging request was issued.
      %p:Used to output the priority of the logging event.
      %n:Outputs the platform dependent line separator character or characters.
      %r:Used to output the number of milliseconds elapsed since the start of the application until the creation of the logging event.
      %F:Used to output the file name where the logging request was issued.
      %d:Used to output the date of the logging event.
      %c:Used to output the category of the logging event
      %C:Used to output the fully qualified class name of the caller issuing the logging request
      5.如果是对于效率要求比较高的话,要在log.debug()之前加上log.isDebugEnabled()进行判断,这样能够大大减少执行时间
      6.对于各个appenders,共有的属性是layout(一般设置为org.apache.log4j.PatternLayout),Threshold(Log的级别)
      (1)ConsoleAppender:Target(System.out和System.err)
      (2)FileAppender:File(定义输出的文件名),Append(定义是否为追加)
      (3)DailyRollingFileAppender(除FileAppender属性外):MaxFileSize(最大文件大小),MaxBackupIndex()

  • 相关阅读:
    oracle中获取当前整点和上一个小时整点,日期类型
    MYSQL中替换oracle中runum用法
    oracle 中备份表
    發生了不愉快的事情
    今年下雪了。。。
    VB.net下非常好用的实现FTP的类
    今年過節不回家了
    焕肤:不要暗沉
    不要打梦到的电话号码。。。
    關於IT職業的思考
  • 原文地址:https://www.cnblogs.com/zlp520/p/4603564.html
Copyright © 2011-2022 走看看