• Log4j按级别输出日志到不同文件配置


    1、自定义LogFileAppender类,继承DailyRollingFileAppender,实现Log4j按级别输出日志到不同文件。

    package com.liying.mango.common.interceptor;
    
    import org.apache.log4j.DailyRollingFileAppender;
    import org.apache.log4j.Priority;
    
    public class LogFileAppender extends DailyRollingFileAppender {
        
        @Override
        public boolean isAsSevereAsThreshold(Priority priority) {
            return this.getThreshold().equals(priority);  
        }
    }

    2、log4j.properties配置文件

    log4j.rootLogger=info, stdout, info, error, fileout
    
    ## 定义控制台日志管理器
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    
    ## 定义INFO和ERROR级别文件输出日志管理器
    log4j.appender.fileout=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.fileout.File=/usr/logs/pear/all.log
    log4j.appender.fileout.layout=org.apache.log4j.PatternLayout
    log4j.appender.fileout.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    
    ## 定义INFO级别文件输出日志管理器
    log4j.logger.info=com.liying.mango.common.interceptor.LogFileAppender
    ## 每天产生一个日志文件,将日志信息输出到一个日志文件,并且每天输出到一个新的日志文件
    log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.info.layout=org.apache.log4j.PatternLayout
    log4j.appender.info.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    log4j.appender.info.datePattern='.'yyyy-MM-dd
    log4j.appender.info.Threshold = INFO 
    log4j.appender.info.append=true
    log4j.appender.info.File=/usr/logs/pear/info.log
    
    ## 定义ERROR级别文件输出日志管理器
    log4j.logger.error=com.liying.mango.common.interceptor.LogFileAppender
    log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.error.layout=org.apache.log4j.PatternLayout
    log4j.appender.error.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    log4j.appender.error.datePattern='.'yyyy-MM-dd
    log4j.appender.error.Threshold = ERROR 
    log4j.appender.error.append=true
    log4j.appender.error.File=/usr/logs/pear/error.log 

    3、log4j.properties配置文件--日志文件按固定大小自动分割

    log4j.rootLogger=info, stdout, info, error, fileout
    
    ## 定义控制台日志管理器
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    
    ## 定义INFO和ERROR级别文件输出日志管理器
    ##每一天产生1个日志文件
    ##log4j.appender.fileout=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.fileout=org.apache.log4j.RollingFileAppender
    log4j.appender.fileout.File=/home/liying/logs/pear/all.log
    log4j.appender.fileout.layout=org.apache.log4j.PatternLayout
    log4j.appender.fileout.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    ##当文件大小超过20MB时,将原来的文件名改为*.log.1,再使用*.log接收新的日志记录。此处保留10000个备份文件。
    log4j.appender.fileout.MaxFileSize=20MB
    log4j.appender.fileout.MaxBackupIndex=10000
    log4j.appender.fileout.Append=true
    
    ## 定义INFO级别文件输出日志管理器
    log4j.logger.info=com.liying.peach.common.interceptor.LogFileAppender
    ## 每天产生一个日志文件,将日志信息输出到一个日志文件,并且每天输出到一个新的日志文件
    log4j.appender.info=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.info.layout=org.apache.log4j.PatternLayout
    log4j.appender.info.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    log4j.appender.info.datePattern='.'yyyy-MM-dd
    log4j.appender.info.Threshold = INFO 
    log4j.appender.info.append=true
    log4j.appender.info.File=/home/liying/logs/peach/info.log
    
    ## 定义ERROR级别文件输出日志管理器
    log4j.logger.error=com.liying.peach.common.interceptor.LogFileAppender
    log4j.appender.error=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.error.layout=org.apache.log4j.PatternLayout
    log4j.appender.error.layout.ConversionPattern=[%-5p %d %t] %l **** %m%n
    log4j.appender.error.datePattern='.'yyyy-MM-dd
    log4j.appender.error.Threshold = ERROR 
    log4j.appender.error.append=true
    log4j.appender.error.File=/home/liying/logs/peach/error.log 

    本文整理自网络

  • 相关阅读:
    记录k8s:k8s1.8.4无坑离线安装
    Aspose.Words 16.8 破解版、添加自定义HTML导出Jpeg压缩质量配置
    Mint linux 自定义上下文菜单实现ZIP压缩文件无乱码解压
    Mint Linux 安装 DotnetCore 遭遇无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
    微信多开技巧
    Pycharm5注册方式
    控制Linux下 mono 服务的启动停止
    Cesium 源码笔记[2] CesiumWidget模块的实例化过程 ver1.67
    Cesium 源码打包入门 [ver1.69]
    Cesium 源码笔记[1] Viewer模块实例化的大致过程 ver1.67
  • 原文地址:https://www.cnblogs.com/linjiqin/p/7096023.html
Copyright © 2020-2023  润新知