log4j.properties:

BASE_DIR= /home/admin/preprocess-tmc-city/logs

log4j.rootLogger=debug,stdout,debug,info,warn,error  
log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c:%L] %t - <%m>%n
   
log4j.logger.debug=debug  
log4j.appender.debug=com.autonavi.tinfo.traffic.tmc.config.TMCRollingAppender  
log4j.appender.debug.layout=org.apache.log4j.PatternLayout  
log4j.appender.debug.layout.ConversionPattern=%d %p [%c:%L] %t - <%m>%n
#log4j.appender.debug.datePattern='.'yyyy-MM-dd  
log4j.appender.debug.Threshold = DEBUG   
log4j.appender.debug.append=true  
log4j.appender.debug.MaxBackupIndex=10
log4j.appender.debug.MaxFileSize=500MB
log4j.appender.debug.File=${BASE_DIR}/debug/debug.log  
 
log4j.logger.info=info  
log4j.appender.info=com.autonavi.tinfo.traffic.tmc.config.TMCRollingAppender
log4j.appender.info.layout=org.apache.log4j.PatternLayout  
log4j.appender.info.layout.ConversionPattern=%d %p [%c:%L] %t - <%m>%n
#log4j.appender.info.datePattern='.'yyyy-MM-dd  
log4j.appender.info.Threshold = INFO   
log4j.appender.info.append=true  
log4j.appender.info.MaxBackupIndex=10
log4j.appender.info.MaxFileSize=500MB
log4j.appender.info.File=${BASE_DIR}/info/info.log

log4j.logger.warn=warn
log4j.appender.warn=com.autonavi.tinfo.traffic.tmc.config.TMCRollingAppender
log4j.appender.warn.layout=org.apache.log4j.PatternLayout
log4j.appender.warn.layout.ConversionPattern=%d %p [%c:%L] %t - <%m>%n
#log4j.appender.warn.datePattern='.'yyyy-MM-dd
log4j.appender.warn.Threshold = WARN
log4j.appender.warn.append=true
log4j.appender.warn.MaxBackupIndex=10
log4j.appender.warn.MaxFileSize=500MB
log4j.appender.warn.File=${BASE_DIR}/warn/warn.log

log4j.logger.error=error  
log4j.appender.error=com.autonavi.tinfo.traffic.tmc.config.TMCRollingAppender  
log4j.appender.error.layout=org.apache.log4j.PatternLayout  
log4j.appender.error.layout.ConversionPattern=%d %p [%c:%L] %t - <%m>%n
#log4j.appender.error.datePattern='.'yyyy-MM-dd  
log4j.appender.error.Threshold = ERROR   
log4j.appender.error.append=true  
log4j.appender.error.MaxBackupIndex=10
log4j.appender.error.MaxFileSize=500MB
log4j.appender.error.File=${BASE_DIR}/error/error.log

定义自己的Appender类,继承DailyRollingFileAppender,改写针对Threshold 的设置说明。

重写 isAsSevereAsThreshold(Priority priority)方法

package com.autonavi.tinfo.traffic.tmc.config;

import org.apache.log4j.Priority;
import org.apache.log4j.RollingFileAppender; public class TMCRollingAppender extends RollingFileAppender {
@Override
public boolean isAsSevereAsThreshold(Priority priority) {
//只判断是否相等,而不判断优先级
return this.getThreshold().equals(priority);
}
}

log4j按级别输出日志文件的更多相关文章

  1. Log4j按级别输出日志到不同文件配置分析 (转:projava)

    关于LOG4J 按照级别输出日志,并按照级别输出到不同文件中的说法有很多, 网上贴的最多的log4j.properties的设置是这样的 log4j.rootLogger=info,stdout,in ...

  2. Log4j按级别输出日志到不同文件配置分析

    关于LOG4J 按照级别输出日志,并按照级别输出到不同文件中的说法有很多, 网上贴的最多的log4j.properties的设置是这样的 log4j.rootLogger=info,stdout,in ...

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

    1.自定义LogFileAppender类,继承DailyRollingFileAppender,实现Log4j按级别输出日志到不同文件. package com.liying.mango.commo ...

  4. Log4j按级别输出到不同文件

    log4j.properties 文件: log4j.logger.net.sf.hibernate.cache=debug log4j.rootLogger = error,portal_log,s ...

  5. log4j配置输出日志文件

    在测试程序时,有时候运行一次可能需要很久,把日志文件保存下来是很有必要的,本文给出了scala程序输出日志文件的方式,同时使用本人的另一篇博客中介绍的将log4j.properties放到程序jar包 ...

  6. Linux nohup不输出日志文件的方法

    引用:https://blog.csdn.net/guotao15285007494/article/details/84136234 最近在Linux上部署视频流推送应用时,由于网络不稳定等原因程序 ...

  7. Tomcat7下使用Log4j接管catalina.out日志文件

    Tomcat7下使用Log4j接管catalina.out日志文件    摘要 Tomcat7下使用Log4j接管catalina.out日志文件生成方式,按天存放,解决catalina.out日志文 ...

  8. Log4j分级别保存日志到单个文件中,并记录IP和用户信息

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration S ...

  9. log4j的properties详细配置,分级输出日志文件

            log4j是很常用的日志类包,在此做一下配置的记录 加载jar包和properities配置文件             将commons-logging.jar和logging-lo ...

随机推荐

  1. Android中SQLite下 Cursor的使用。

    引自博客大神一篇文   地址:  http://blog.sina.com.cn/s/blog_15e2abdd90102wcdu.html rawQuery()方法用于执行select语句.  /* ...

  2. mysql alter 语句用法,添加、修改、删除字段等

    2013-05-03 17:13 39459人阅读 评论(1) 收藏 举报  分类: Mysql(9)  修改表名: ALTER  TABLE admin_user RENAME TO a_use / ...

  3. 网页版电子表格控件tmlxSpreadsheet免费下载地址

    tmlxSpreadsheet 是一个由JavaScript 和 PHP 写成的电子表格控件(包含WP插件, Joomla插件等等).. 程序员可以容易的添加一个类似Excel功能的,可编辑的表格功能 ...

  4. iOS 10 UserNotifications 框架解析

    摘自:https://onevcat.com/2016/08/notification/ iOS 10 中以前杂乱的和通知相关的 API 都被统一了,现在开发者可以使用独立的 UserNotifica ...

  5. import和from import陷阱一

    #from datetime import datetime import datetime format="output-%Y-%m-%d-%H%M%S.txt" str=&qu ...

  6. 无法建立SSL连接

    在使用wget工具的过程中,当URL使用HTTPS协议时,经常出现如下错误:“无法建立SSL连接”. 这是因为wget在使用HTTPS协议时,默认会去验证网站的证书,而这个证书验证经常会失败.加上&q ...

  7. Svn服务器的安装和配置

    1.安装svn服务器端软件 从镜像服务器或者YUM源下载安装SVN服务器软件:yum install subversion mkdir /usr/local/svn     //创建SVN安装目录 c ...

  8. Erlang 104 OTP

    笔记系列 Erlang环境和顺序编程Erlang并发编程Erlang分布式编程YawsErlang/OTP 日期              变更说明 2014-12-21 A Outline, 1 A ...

  9. kuangbin_MST C (POJ 2031)

    全程double精度就能过了 间接0距离不用管 prim自动连起来的 G++交的话只能用%f输出 C++的话加不加l都可以 (这么说以后用%f肯定不会错咯) 不过我不懂为什么他们的空间时间差了好多倍. ...

  10. (转)【重磅】无监督学习生成式对抗网络突破,OpenAI 5大项目落地

    [重磅]无监督学习生成式对抗网络突破,OpenAI 5大项目落地 [新智元导读]"生成对抗网络是切片面包发明以来最令人激动的事情!"LeCun前不久在Quroa答问时毫不加掩饰对生 ...