zoukankan      html  css  js  c++  java
  • Log4j日志根据配置输出到多个自定义文件

      最近工作中遇到所有日志需要记录到一个文件,而错误的sql执行记录到另一个文件中,查询了一些资料搞定,记录下来。顺便吐槽下公司限制印象笔记的使用。

    ##log4j.rootLogger=INFO, CONSOLE, FILE
    
    ##deployment project Change
    log4j.rootLogger=CONSOLE,DEBUG
    
    ## to console
    log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
    log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
    log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyyMMdd HH:mm:ss} - %m%n
    ## to file
    log4j.logger.allLog =ERROR,FILE
    log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.FILE.File=/mnt/disk1/tomcat/tomcat1/logs/logstat.log
    log4j.appender.FILE.DatePattern = '.'yyyy-MM-dd'.log'
    log4j.appender.FILE.Append = true
    log4j.appender.FILE.encoding = UTF-8
    log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
    log4j.appender.FILE.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} - %m%n
    
    log4j.logger.errSql =ERROR,A1
    log4j.appender.A1=org.apache.log4j.RollingFileAppender
    log4j.appender.A1.File=/mnt/disk1/tomcat/tomcat1/logs/errsql.log
    log4j.appender.A1.MaxFileSize= 2MB
    log4j.appender.A1.MaxBackupIndex=1000
    log4j.appender.A1.Threshold = ERROR 
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    log4j.appender.A1.layout.ConversionPattern=%5p [%d{yyyy-MM-dd HH:mm:ss,SSS}] (%F:%L) - %m%n
    private static Logger logger = Logger.getLogger("errSql");
    private static Logger logger = Logger.getLogger("allLog");

    说明:

    log4j.rootLogger//==配置跟logger日志级别及日志输出位置,如:

    log4j.rootLogger=ERROR,file,stdout表示,日志级别为ERROR的日志输出到控制台和file中。

    但如果日志要分别输出到不同的文件中,如根据功能模块输出到不同文件,则无需将不同位置在此设置,否则在无法按照功能模块输出日志,导致不同文件记录相同的日志。

     

    log4j.additivity是子Logger是否继承父Logger  输出源(appender)的标志位。具体说,默认情况下子Logger会继承父Loggerappender,也就是说子Logger 会在父Loggerappender里输出。若是additivity设为false,则子Logger只会在自己的appender里输出,而不会在父Loggerappender里输出。

      

  • 相关阅读:
    pipelinewise 学习二 创建一个简单的pipeline
    pipelinewise 学习一 docker方式安装
    Supercharging your ETL with Airflow and Singer
    ubuntu中使用 alien安装rpm包
    PipelineWise illustrates the power of Singer
    pipelinewise 基于singer 指南的的数据pipeline 工具
    关于singer elt 的几篇很不错的文章
    npkill 一个方便的npm 包清理工具
    kuma docker-compose 环境试用
    kuma 学习四 策略
  • 原文地址:https://www.cnblogs.com/lcxdever/p/3711070.html
Copyright © 2011-2022 走看看