转载自:https://blog.csdn.net/reserved_person/article/details/52849505

做项目被log4j的输出格式化参数搞烦了,索性把API的相关部分大致翻译一下,原文参见http://logging.apache.org/log4j/docs/api/org/apache/log4j/PatternLayout.html

 
参数 说明 例子
%c 列出logger名字空间的全称,如果加上{<层数>}表示列出从最内层算起的指定层数的名字空间 log4j配置文件参数举例 输出显示媒介
假设当前logger名字空间是"a.b.c"
%c a.b.c
%c{2} b.c
%20c (若名字空间长度小于20,则左边用空格填充)
%-20c (若名字空间长度小于20,则右边用空格填充)
%.30c (若名字空间长度超过30,截去多余字符)
%20.30c (若名字空间长度小于20,则左边用空格填充;若名字空间长度超过30,截去多余字符)
%-20.30c (若名字空间长度小于20,则右边用空格填充;若名字空间长度超过30,截去多余字符)
%C 列出调用logger的类的全名(包含包路径) 假设当前类是"org.apache.xyz.SomeClass"
%C org.apache.xyz.SomeClass
%C{1} SomeClass
%d 显示日志记录时间,{<日期格式>}使用ISO8601定义的日期格式 %d{yyyy/MM/dd HH:mm:ss,SSS} 2005/10/12 22:23:30,117
%d{ABSOLUTE} 22:23:30,117
%d{DATE} 12 Oct 2005 22:23:30,117
%d{ISO8601} 2005-10-12 22:23:30,117
%F 显示调用logger的源文件名 %F MyClass.java
%l 输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数 %l MyClass.main(MyClass.java:129)
%L 显示调用logger的代码行 %L 129
%m 显示输出消息 %m This is a message for debug.
%M 显示调用logger的方法名 %M main
%n 当前平台下的换行符 %n Windows平台下表示rn
UNIX平台下表示n
%p 显示该条日志的优先级 %p INFO
%r 显示从程序启动时到记录该条日志时已经经过的毫秒数 %r 1215
%t 输出产生该日志事件的线程名 %t MyClass
%x 按NDC(Nested Diagnostic Context,线程堆栈)顺序输出日志 假设某程序调用顺序是MyApp调用com.foo.Bar
%c %x - %m%n MyApp - Call com.foo.Bar.
com.foo.Bar - Log in Bar
MyApp - Return to MyApp.
%X 按MDC(Mapped Diagnostic Context,线程映射表)输出日志。通常用于多个客户端连接同一台服务器,方便服务器区分是那个客户端访问留下来的日志。 %X{5} (记录代号为5的客户端的日志)
%% 显示一个百分号 %% %

列了这么多,举几个实际的例子吧,比如log4j.properties的内容为:

#log4j config
log4j.rootLogger=DEBUG,OUTPUT

log4j.appender.OUTPUT.layout=org.apache.log4j.PatternLayout
log4j.appender.OUTPUT.layout.ConversionPattern=%d{DATE} %-4r [%t] %-5p %c %x - %m%n
……

那么一个可能的输出是:

12 Oct 2005 22:23:30,117 0 [main] INFO MyApp - Entering application.
…… 
12 Oct 2005 22:23:30,162 45 [main] INFO MyApp - Exiting application.

摘自:http://blog.gceclub.sun.com.cn/index.php?op=ViewArticle&articleId=734&blogId=6

log4j - 输出格式控制, PatternLayout参数含义以及详细配置的更多相关文章

  1. Log4j输出格式控制--log4j的PatternLayout参数含义

      参数 说明 例子 %c 列出logger名字空间的全称,如果加上{<层数>}表示列出从最内层算起的指定层数的名字空间 log4j配置文件参数举例 输出显示媒介 假设当前logger名字 ...

  2. Log4j输出格式log4j的PatternLayout参数含义

    摘自:http://logging.apache.org/log4j/docs/api/org/apache/log4j/PatternLayout.html 参数 说明 例子 %c 列出logger ...

  3. log4j的PatternLayout参数含义

    参数 说明 例子 %c 列出logger名字空间的全称,如果加上{<层数>}表示列出从最内层算起的指定层数的名字空间 log4j配置文件参数举例 输出显示媒介 假设当前logger名字空间 ...

  4. Log4j输出格式控制

    参数说明例子 %c 列出logger名字空间的全称,如果加上{<层数>}表示列出从最内层算起的指定层数的名字空间 log4j配置文件参数举例 输出显示媒介 假设当前logger名字空间是& ...

  5. rabbitmq.config详细配置参数

    原文:rabbitmq.config详细配置参数 rabbitmq.config详细配置参数 详细使用方法请点击:http://blog.csdn.net/Super_RD/article/detai ...

  6. log4j.properties详细配置

    转自:http://blog.sina.com.cn/s/blog_5ed94d710101go3u.html ①配置根Logger,其语法为: #log4j.rootLogger = [level] ...

  7. Maven项目引入log4j的详细配置

    注:本文来源于 _xiaoxiong  <Maven项目引入log4j的详细配置> 引入log4j pom.xml <dependency> <groupId>lo ...

  8. C语言的printf输出格式控制

    C语言的printf输出格式控制 printf大家都耳熟能详,但是能真正将其用法弄透的估计很少见. 转一篇,改天整理. 1.转换说明符 %a(%A)     浮点数.十六进制数字和p-(P-)记数法( ...

  9. log4j详细配置解析

    出自:http://www.blogjava.net/zJun/archive/2006/06/28/55511.html Log4J的配置文件(Configuration File)就是用来设置记录 ...

随机推荐

  1. 冒泡排序Java版

    package dataStructureAlgorithmReview.day01; import java.util.Arrays; /** * 冒泡 * @author shundong * * ...

  2. Hbase balancer RSgroup shell 脚本

    #!/bin/bashTMP_FILE=tmp_groupsGROUPS_FILE=groups.txtecho "list_groups" | hbase shell > ...

  3. Android开发入门经典实例

    开发实例概述 今天带大家做一个简单的Android App,这个App会显示创新工程实践老师们的照片和信息,不妨先看一看效果: 虽然这个App非常简单,但是涉及到了Android开发中的一些关键知识, ...

  4. Spring Boot 启动:No active profile set, falling back to default profiles: default

    启动 Spring Boot 失败,但是没有出现多余的异常信息: 检查之后发现是依赖的问题(之前依赖的是 spring-boot-starter),修改即可: 方法二: pom.xml加上下面两个依赖 ...

  5. Jquery weui显示右箭头

    <div class='weui_cells weui_cells_access'> <div class='weui_cell'> <div class='weui_c ...

  6. 回顾一下C++ 编写DLL

    项目模版使用Win32工程创建的dll项目 一.原始代码 使用depends查看导出函数 二.不同编译方式区别 C方式编译(extern "C"): __stdcall调用约定:输 ...

  7. 最棒的 JavaScript 学习指南(2018版)

    译者注:原文作者研究了近2.4万篇 JavaScript 文章得出这篇总结,全文包含学习指南.新人上手.Webpack.性能.基础概念.函数式编程.面试.教程案例.Async Await.并发.V8. ...

  8. [译]MediatR, FluentValidation, and Ninject using Decorators

    原文 CQRS 我是CQRS模式的粉丝.对我来说CQRS能让我有更优雅的实现.它同样也有一些缺点:通常需要更多的类,workflow不总是清晰的. MediatR MediatR的文档非常不错,在这就 ...

  9. 【python小练】0020

    第 0020 题: 登陆中国联通网上营业厅 后选择「自助服务」 --> 「详单查询」,然后选择你要查询的时间段,点击「查询」按钮,查询结果页面的最下方,点击「导出」,就会生成类似于 2014年1 ...

  10. Flink 学习(一)

    摘自Flink官网https://flink.apache.org/ 最近看到公司有Flink平台,正好做过storm和spark streaming上的业务,借着这个机会把flink也学了.正好比较 ...