一、maven 配置

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.</version>
</dependency>

二、 log4j 配置

log4j.rootLogger=INFO, console
# simple console log
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] %p ~ %m%n
## for jul logging
log4j.logger.org.zales.dmo.samples.logging=TRACE,julAppender
log4j.additivity.org.zales.dmo.samples.logging=false
log4j.appender.julAppender=org.apache.log4j.ConsoleAppender
log4j.appender.julAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.julAppender.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l - %m%n
## for daily rolling
log4j.logger.accesslog=INFO, accessRolling
log4j.additivity.accesslog=false
log4j.appender.accessRolling=org.apache.log4j.DailyRollingFileAppender
log4j.appender.accessRolling.File=logs/access.log
log4j.appender.accessRolling.DatePattern='.'yyyy-MM-dd
log4j.appender.accessRolling.layout=org.apache.log4j.PatternLayout
log4j.appender.accessRolling.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l - %m%n
## for file size rolling
log4j.logger.filemax=INFO, fileMaxRolling
log4j.additivity.filemax=false
log4j.appender.fileMaxRolling=org.apache.log4j.RollingFileAppender
log4j.appenile.fileMaxRolling.Append = true
log4j.appenile.fileMaxRolling.MaxFileSize = 5MB
log4j.appenile.fileMaxRolling.MaxBackupIndex =
log4j.appender.fileMaxRolling.File=logs/filemax.log
log4j.appender.fileMaxRolling.layout=org.apache.log4j.PatternLayout
log4j.appender.fileMaxRolling.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]--[%t] [%p] -%l - %m%n

配置说明

  1. 禁用上溯 
    log4j.additivity.org.zales.dmo.samples.logging=false

  2. 日志格式 
    简单输出 
    log4j.appender.console.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] %p ~ %m%n 
    详细输出 
    log4j.appender.julAppender.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}]–[%t] [%p] -%l - %m%n

3.Pattern说明

-X号: X信息输出时左对齐;
%p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL,
%d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 ::,
%r: 输出自应用启动到输出该log信息耗费的毫秒数
%c: 输出日志信息所属的类目,通常就是所在类的全名
%t: 输出产生该日志事件的线程名
%l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main (TestLog4.java:)
%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。
%%: 输出一个"%"字符
%F: 输出日志消息产生时所在的文件名称
%L: 输出代码中的行号
%m: 输出代码中指定的消息,产生的日志具体信息
%n: 输出一个回车换行符,Windows平台为"/r/n",Unix平台为"/n"输出日志信息换行

三、程序使用

private static final Logger logger = LoggerFactory.getLogger("xxx");
... logger.info("xxx:{}, xxx:{}", id, name);

最新文章

  1. indexOf 用法
  2. native vlan(本征VLAN)
  3. 移动混合开发之android文件管理新建文件和删除文件
  4. [嵌入式学习资料]ARM开发学习详解iTOP-4412开发板使用手册
  5. 洛谷 P1007 独木桥 Label:模拟
  6. Centos7 + Windows7 双系统
  7. Visual Studio 2012 使用SvcUtil在MVC4客户端引用WCF服务
  8. 【阿里云产品评测】小站长眼中的巅峰云PK
  9. lintcode:Plus One 加一
  10. linux-cat/less/more/tail
  11. 字符的截取方法使用的是Substring 和三目运算符
  12. checklistbox的使用
  13. MongoDB的C#驱动
  14. 使用Identity Server 4建立Authorization Server (2)
  15. js变量提升与函数提升
  16. hihocoder Challenge 29 A.序列的值
  17. bzoj 3196 &amp;&amp; luogu 3380 JoyOI 1730 二逼平衡树 (线段树套Treap)
  18. 初探系列 — Pharbers用于单点登录的权限架构
  19. [android] 手机卫士设备管理权限锁屏
  20. 教你一招:使用最快速的方式激活windows10专业版

热门文章

  1. telnet 的使用(ping 与 telnet)
  2. google地图API的简单使用
  3. WPF使用矢量字体图标(阿里巴巴iconfont)
  4. 在Docker中创建Mongo容器的后续设置
  5. WPF 调用资源图片
  6. postgresql 自带函数
  7. Adapter的泛型
  8. Selenium-基础操作
  9. C/C++ static用法
  10. cordova-plugin-local-notifications发送Android本地消息