(转)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 ...
随机推荐
- python基础操作
1.打印操作 print('2222') 2.接收用户输入 name=input('name') 3.if else判断 name='qiao'name2='师弟'username=input('输入 ...
- 邪恶改装:TPYBoard制作廉价WIFI干扰器
转载请注明:@小五义http://www.cnblogs.com/xiaowuyi 0X01 引言 想不想搞个WIFI干扰器?网上搜集了一下资料,发现用esp8266可以实现简单的干扰功能,包括断网. ...
- github pages部署静态网页
如果你的项目只是一个静态网站,就没有必要再去整什么服务器,github pages 提供了搭建静态网站的功能: 为什么使用Github Pages 1. 搭建简单而且免费: 2. 支持静态脚本: 3. ...
- Java基础——多态
多态性是指允许不同类型的对象对同一消息做出相应.具有灵活性.抽象.行为共享.代码共享的优势,共享就意味着最大化利用和简洁,还有就是加载速度. 一.多态的作用 消除类型之间的耦合关系.即同一事件发生在不 ...
- ionic 的缓存 和局部刷新
最近两天在做项目时,发现ionic的缓存功能非常方便好用,提高了再低端手机特别是android比较低版本上的流畅性!可是,后来发现,整体的缓存整个页面并不是一个一劳永逸的办法,结合局部刷新功能,感觉就 ...
- 通过 itms:services://? 在线安装ipa ,跨过app-store
1.需要一个html文件,引导下载用户在线安装ipa <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN&quo ...
- ubuntu 16.04.2 源码安装gitlab并且利用runner持续集成
参考原档:https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/install/installation.md#using-https 本章只 ...
- JSONArray用法jquery循环list<Map>对象
controoler中 List<Map<String,Object>> resList =(List<Map<String,Object>>)resM ...
- 简单的视频采集demo
打算做个简单的聊天软件,其中一个我没做过的,就是视频采集. 在网上查了许久资料,终于搞清楚了dshow采集视频的流程 参考资料如下: https://msdn.microsoft.com/en-us/ ...
- 【LeetCode】141. Linked List Cycle
题目: Given a linked list, determine if it has a cycle in it. Follow up:Can you solve it without using ...