当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

log4j 入门实例 (三) 输出布局(layout)

发表于: 2013-12-12   作者:alleni123   来源:转载   浏览次数:
摘要: log4j提供了以下几种layout - org.apache.log4j.HTMLLayout (以HTML表格形式布局) - org.apache.log4j.SimpleLayout (包含日志信息的级别和信息字符串) - org.apache.log4j.TTCCLayout (包含日志产生的时间,执行绪,类别等信息。) - org.apache.log4j.PatternLayo
log4j提供了以下几种layout
- org.apache.log4j.HTMLLayout (以HTML表格形式布局)
- org.apache.log4j.SimpleLayout (包含日志信息的级别和信息字符串)
- org.apache.log4j.TTCCLayout (包含日志产生的时间,执行绪,类别等信息。)
- org.apache.log4j.PatternLayout (可以灵活的指定布局模式)


这里看一下SimpleLayout的输出:

DEBUG - In the main method
INFO - This is info message
ERROR - This is error message
FATAL - This is fatal message

只有级别和信息被显示了出来

这里的难点是日志信息的样式的自定义。
自定义是通过log4j的转换字符实现的。具体信息在 http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html

自定义实例1:
log4j.appender.appender2=org.apache.log4j.ConsoleAppender
log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
log4j.appender.appender2.layout.ConversionPattern=%r [%t] %p %c %l %m%n
这个设定会输出以下的console信息:
0 [main] DEBUG com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:12) In the main method
4 [main] INFO com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:13) This is info message
5 [main] ERROR com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:14) This is error message
5 [main] FATAL com.lj.log4j.HelloLog4J com.lj.log4j.HelloLog4J.main(HelloLog4J.java:15) This is fatal message

%r -表示从创建该layout到该事件发生之间所经过的时间
[%t] -中括号没有特殊意义,表示就那么放在信息中。 %t表示执行该事件的线程的名称
%p -表示该日志事件的优先级, 比如INFO ,DEBUG
%c -表示该事件所在的完整类别名。 这里如果写%c{1},就会显示为HelloLog4J,就没有包名了。
%m -输出日志信息
%n -换行符



自定义实例2:
log4j.appender.appender2=org.apache.log4j.ConsoleAppender
log4j.appender.appender2.layout=org.apache.log4j.PatternLayout
log4j.appender.appender2.layout.ConversionPattern=[%d{yy/MM/dd HH:mm:ss:SSS}][%C-%M]%m%n

上面的代码会生成以下的log信息:
hello log4j
[13/12/12 19:20:17:802][com.lj.log4j.HelloLog4J-main]In the main method
[13/12/12 19:20:17:807][com.lj.log4j.HelloLog4J-main]This is info message
[13/12/12 19:20:17:807][com.lj.log4j.HelloLog4J-main]This is error message
[13/12/12 19:20:17:807][com.lj.log4j.HelloLog4J-main]This is fatal message

前面的是日期格式, 是由%d{}设定的。

log4j 入门实例 (三) 输出布局(layout)

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
版本:easyui1.4.2 下载:http://www.jeasyui.com/download/downloads/jquery-easyui-1.4.3.zip 以
这里先讲如何将log4j的日志信息输出到文本文件。 1. 修改log4j.properties文件: #set log level to
1、创建布局面板第一种方式(div中添加class="easyui-layout"),需要指定div层的高与宽: <div
<b>http://blog.html.it/layoutgala/#details Layout Gala: a collection of 40 CSS layouts
extjs技术交流,欢迎加群(338456177): 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 b
在2月份实习的时候,公司给我们的第一个任务就是阅读开源项目的源代码,我选择的是dwr。由于刚开始
1、card 1 var navigate = function (panel, direction) { 2 var layout = panel.getLayout(); 3 la
布局Layout管理   布局即是指Activity中组件的呈现方式,即组件大小、间距和对齐方式等。   And
概述 layout是对ViewGroup类的扩展,它是用来控制子控件在UI中的位置的。同时,布局是可嵌套的,因
对于LinearLayout的layout_weight属性,很多人都很了解,今天我把我的一本android书又从第一页开始翻,
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号