zoukankan      html  css  js  c++  java
  • log4j使用细节

    问题一:打印不同类的类名信息?

    在log4j中通常是通过Logger.getLogger(class)指定所打印的类名,但是当我们需要打印不同类信息时,目前只能这样做,在不同的类文件中构建不同的logger,比如:

    类1:

       1: public class Water
       2: {
       3:     private static Logger LOGGER = Logger.getLogger(Water.class);
       4:     // 流水的方法
       5:     public synchronized void flowWater(String studentName)
       6:     {
       7:          LOGGER.debug("结束为"+studentName+"流水");
       8:     }
       9: }

    类2:

       1: public class Student
       2: {
       3:    private static Logger LOGGER = Logger.getLogger(Student.class);
       4:        // 学生接水的全过程
       5:     public void receiveWater()
       6:     {
       7:         LOGGER.info("从教室跑向饮水机");
       8:         LOGGER.info("跑回教室");
       9:     }
      10: }
     
    另一种更简洁的方式,比如
    类1:
    public class Water
    {
        public synchronized void flowWater(String studentName)       
        {               
            Logger.getLogger(Water.class).debug("结束为"+studentName+"流水");      
        }
    }
    类2:
    public class Student
    {
        public void receiveWater()       
        {      
            Logger.getLogger(Student.class).debug("从教室跑向饮水机");       
            Logger.getLogger(Student.class).debug("跑回教室");       
        }
    }


    问题二:怎样每小时生成一个文件?

    为文件输出模式设置参数即可,
    比如:
    # 输出源file将日志输出到文件 
    log4j.appender.file = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.file.DatePattern = ’.’yyyy-MM-dd-HH
    # 日志输出的文件
    log4j.appender.file.File = mylog.log

    #是否在原有文件中添加日志
    # log4j.appender.file.Append=false
    log4j.appender.file.layout=org.apache.log4j.PatternLayout
    log4j.appender.file.layout.ConversionPattern =%d{yyyy-MM-dd HH:mm:ss} [%-5p]  %t (%F:%L) -%m%n
    DatePattern控制,具体对应格式如下:

    1)’.’yyyy-MM: 每月
    2)’.’yyyy-ww: 每周
    3)’.’yyyy-MM-dd: 每天
    4)’.’yyyy-MM-dd-a: 每天两次
    5)’.’yyyy-MM-dd-HH: 每小时
    6)’.’yyyy-MM-dd-HH-mm: 每分钟

     
     
    主要信息,可以查看官方的API文档:
     
     

     
     
  • 相关阅读:
    Thinking Clearly about Performance
    国家统计局2018-10-30统计的最新的省市区
    Java 返回字符串中第一个不重复字符的下标 下标从0开始
    国际象棋的游戏规则
    Python语言之requests库
    VBS 自动发消息给对方
    Windows
    上海合计共有16个区一个县
    @RequestMapping中的注解
    Linux 中 /proc/kcore为啥如此之大
  • 原文地址:https://www.cnblogs.com/aoguren/p/4705879.html
Copyright © 2011-2022 走看看