使用Log4j来记录日志-PatternLayout和格式修饰符
来源:互联网 发布:淘宝标题优化时间 编辑:程序博客网 时间:2024/04/29 22:50
1.PatternLayout
使用log4j总是被他的PatternLayout给吓傻了,以前总是拿着一个可以用的配置到处搬而不太懂什么意思~给大家整理下各个字符表达的什么意思。
官方API地址(看起来也比较简单易懂):
http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
1.1 %m和%n
%m用于输出应用指定的输出内容,%n是一个换行符。
如上所示,log4j输出了程序的info内容,并且进行了换行
1.2 %d
用于打印日志记录的时间。可以省去括号里面的内容。可以按照给定的格式输出时间
格式和SimpleDateFormat一致,但是官方API说SimpleDateFormat是很低效的,建议使用Log4j自己的日期格式器,使用%d{ABSOLUTE}、%d{DATE}或%d{ISO8601}(默认不写就是这个ISO8601)
我的理解就是直接%d就好了。
1.3 %p
用于输入日志打印的优先级[ERROR、WARN、INFO、DEBUG]
1.4 %F
用于输出调用日志记录的文件的名称。
官方api提醒说获取这个文件位置的信息是很慢的,应该尽量避免使用。
1.5 %c和%C(不太清楚有什么区别)
我自己也不太清楚,就只能看图说话了,感觉用c和C效果是一样的。作用是打印了类的路径。觉得可以替代上面的%F
后面可以跟个花括号进行截取
1.6 %L
用于输出文件的哪一行记录的这个日志。
上图可以看到,是UserController.java的第28行记录了这个日志。官方api也提醒说这个方法会很慢。
其它的以后再补充
2.格式修饰符
2.1 %20p
如果字符串长度少于20个,则在左侧进行空格填充,保证右侧对齐(超过20个就对不齐了)。这里的p可以换成其它的字符
2.2 %-20p
作用同上,但是空格填充在右侧、
2.3 %.3p
如果字符串长度超过3,则对字符串进行截取。从左侧开始截取,不知道怎样才能从右侧开始截取。
2.4 %20.30c
常见用法:如果字符串长度超过30则进行截取,如果低于20则在左侧补充空格
- 使用Log4j来记录日志-PatternLayout和格式修饰符
- log4j日志扩展---自定义PatternLayout
- 使用commons-logging和log4j记录日志
- 使用commons-logging和log4j记录日志
- 使用commons-logging和log4j记录日志
- 使用slf4j和log4j记录日志
- 使用log4j记录日志
- 使用log4j记录日志
- 使用log4j记录日志
- 使用Log4j记录日志
- 使用log4j记录日志
- 使用Log4j记录日志
- 使用log4j记录日志
- LOG4J日志使用记录
- 何时使用log4j的isDebugEnabled属性来进行日志记录?
- log4j输出格式PatternLayout参数定义
- org.apache.log4j.PatternLayout的输出格式
- Log4j输出格式控制---PatternLayout参数含义
- YV12转为I420
- 数据结构和算法系列 - 跳跃表 SkipList
- 通过银行卡号解析银行名称和卡别
- C++ Primer学习5:vector使用下标操作元素注意
- 【主席树】 SPOJ Count on a tree
- 使用Log4j来记录日志-PatternLayout和格式修饰符
- 【Selenium】PARTI selenium IDE
- MapReduce中作业调度器
- Android Material Design 5.0 PickerDialog
- 合体冰冰及文字水印
- git常见问题处理
- 代理模式与动态代理模式
- C++ Primer学习6:const指针 和 指针与const限定符区别
- wget下载深圳大学毕业生照片