(转)log4j(四)——如何控制不同风格的日志信息的输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述
1 老规矩,先来个栗子,然后再聊聊感受
import org.apache.log4j.*;
//by godtrue
public class UseLog4j {
//日志记录器
private static Logger LOGGER = LogManager.getLogger(UseLog4j.class);
//程序入口——主函数
public static void main(String[]args){
/**
* 设置日志信息输出的风格样式,日志输出的风格主要有以下几种,可以各自设置一下,看看对应的效果
*/ /**
* 1)org.apache.log4j.HTMLLayout ,以HTML表格形式布局,输出的信息为:
* 1:从layout(布局)的构建到日志事件创建所经过的毫秒数
* 2:生成该日志事件的线程的名称
* 3:日志事件的优先级,即DEBUG,INFO,WARN,ERROR
* 4:日志事件的category(类别),通常就是所在类的全名
* 5:代码中指定的消息
*/
// Layout layout = new HTMLLayout(); /**
* 2)org.apache.log4j.SimpleLayout,输出的信息为:
* 1:日志事件的优先级,即DEBUG,INFO,WARN,ERROR
* 2:代码中指定的消息
*/
// Layout layout = new SimpleLayout(); /**
* 3)org.apache.log4j.TTCCLayout,输出的信息为:
* 1:从layout(布局)的构建到日志事件创建所经过的毫秒数
* 2:生成该日志事件的线程的名称
* 3:日志事件的优先级,即DEBUG,INFO,WARN,ERROR
* 4:日志事件的category(类别),通常就是所在类的全名
* 5:代码中指定的消息
*/
// Layout layout = new TTCCLayout(); /**
* 4)org.apache.log4j.PatternLayout(可以灵活地指定布局模式),这是实际工作中我们最常用的一种,输出的信息是自定义的,比如:下面的设置
*/
//设置日志信息的格式化方式
String pattern = "%l - %p - %m%n";
Layout layout = new PatternLayout(pattern); //设置日志信息的输出目的地
Appender appender= new ConsoleAppender(layout);
//设置日志信息的输出配置
BasicConfigurator.configure(appender);
//输出日志信息
LOGGER.info(" my level is INFO");
}
}
ps:只有 PatternLayout 可以灵活指定布局模式,通过 PatternLayout(String pattern)
来进行配置。其它击中布局模式都是定义好的,不需要自己进行指定!
1.1 感受
1)上面的代码将几种常用的日志输出风格都列出来了,感兴趣的话,可以将注释解注,试验一下效果
2)通过试验,我也将每种风格的日志信息都是输出什么也简单的列举了一下,总的感觉自定义的风格是最好玩的一个,我们可以随便的定义自己想要的输出内容
3)log4j定义的日志输出风格不止这几个,还有别的只是这几个比较简单,介绍起来也方便,也能比较一下各种风格的异同,其中自定义的方式是最为常用的,非常的灵活方便
(转)log4j(四)——如何控制不同风格的日志信息的输出?的更多相关文章
- log4j(四)——如何控制不同风格的日志信息的输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受 import org.apache.log4j.*; //by godtrue p ...
- (转)log4j(三)——如何控制不同级别的日志信息的输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 1 老规矩,先来个栗子,然后再聊聊感受 package test.log4j.test3; import org.apac ...
- log4j(三)——如何控制不同级别的日志信息的输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受 import org.apache.log4j.*; //by godtrue p ...
- (转)log4j(二)——如何控制日志信息的输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 1 先看栗子再来下结论 import org.apache.log4j.*; import test.log4j.bean ...
- log4j(二)——如何控制日志信息的输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 二:先看栗子再来下结论 import org.apache.log4j.*; import test.log4j.bean ...
- mybatis 配置的log4j文件无效,不能正常显示日志信息
正在学习mybatis,配置好后log4j.properties文件后,日志信息不能正常显示,没有效果. 查看了一下mybatis的相关文档,在日志一栏找到问题愿意 原因是我们的mybatis选了其他 ...
- (转)log4j(五)——如何控制不同目的地的日志输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 1 老规矩,先来个栗子,然后再聊聊感受 package test.log4j.test5; /** * @author l ...
- log4j(五)——如何控制不同目的地的日志输出?
一:测试环境与log4j(一)——为什么要使用log4j?一样,这里不再重述 二:老规矩,先来个栗子,然后再聊聊感受 import org.apache.log4j.*; import java.io ...
- 一个轻巧高效的多线程c++stream风格异步日志(一)
一个轻巧高效的多线程c++stream风格异步日志 一个轻巧高效的多线程c++stream风格异步日志 前言 功能需求 性能需求 Logger实现 LogStream类 Logger类 LogStre ...
随机推荐
- 抓包工具-Wireshark(详细介绍与TCP三次握手数据分析)
功能使用的详细介绍 wireshark(官方下载网站: http://www.wireshark.org/),是用来获取网络数据封包,可以截取各种网络封包,显示网络封包的详细信息,包括http,TCP ...
- selenium+python等待时间
等待时间可以有多种 1.硬等待 import time time.sleep(x)#等待x秒 2.浏览器每次查找一个元素都进行等待 import time br.implicitly_wait(x)# ...
- EJB基础知识
本人博客文章网址:https://www.peretang.com/basic-knowledge-of-ejb/ 什么是EJB 可移植的, 可重用的, 可伸缩的业务应用程序的平台 为什么选择EJB ...
- php实现ppt转图片,php调用com组件问题
PHP 调用com组件将ppt转为图片. 需要在php.ini中开启 extension=php_com_dotnet.dllcom.allow_dcom = true 测试代码如下: < ...
- 我们为什么要使用AOP?
原文地址http://www.cnblogs.com/xrq730/p/7003082.html,转载请注明出处,谢谢 前言 一年半前写了一篇文章Spring3:AOP,是当时学习如何使用Spring ...
- openvpn配置注意事项
1.安装VPN安装结束后,需要配置CONFIG文件夹服务端及客户端的配置文件,建议从sample文件里直接拷贝修改,网上的一些案例会引起无法启动的问题,没仔细研究过是哪里错了,反正最后从sample里 ...
- 无法启动此程序因为计算机中丢失msvcr71
http://jingyan.baidu.com/article/25648fc1abc4d69190fd0077.html 下面是msvcr文件下载地址: 链接:http://pan.b ...
- 【知识整理】这可能是最好的RxJava 2.x 入门教程(四)
这可能是最好的RxJava 2.x入门教程系列专栏 文章链接: 这可能是最好的RxJava 2.x 入门教程(一) 这可能是最好的RxJava 2.x 入门教程(二) 这可能是最好的RxJava 2. ...
- PHP中小小的header函数
不废话,直接说功能 1.重定向,语法: header("location:http://www.lemon-x.ga"); file_put_contents("./te ...
- HBuilder使用方法
/*注:本教程针对HBuilder5.0.0,制作日期2014-12-31*/创建HTML结构: h 8 (敲h激活代码块列表,按8选择第8个项目,即HTML代码块,或者敲h t Enter)中途换行 ...