Log4j 2.0在开发中的高级使用具体解释—介绍篇(一)
Log4j最终迎来了首个apache版本号。Log4j 2 是 Log4j 的升级版本号,该版本号比起其前任来说有着显著的改进,包括非常多在 Logback 中的改进以及Logback
架构中存在的问题。
这是 Log4j 2 的首次发行的版本号,值得关注的改进包含:
- API 分离 – Log4j 的 API 和事实上现进行分类(注:我讨厌这样,本来一个jar包搞定的,要变成好几个,跟 slf4j 似的的)
- 为日志审计而设计,与 Log4j 1.x 和 Logback 不同的是 Log4j 2 将不会在又一次配置期间丢失事件,支持消息可方便进行审计
- 性能方面的提升。在关键领域比 Log4j 1.x 的性能提升不少,大部分情况下性能跟 Logback 差点儿相同
- 支持多 APIs,支持 SLF4J 和 Commons Logging API
- 自己主动配置重载,支持 XML 和 JSON 格式的配置
- 插件体系架构。全部可配置的组件都是通过 Log4j 插件进行定义。包含 Appender, Layout, Pattern Converter, 等等
- 配置属性支持
Apache log4j 2.0 要求至少 JDK 5
将日志请求到应用程序代码须要大量的规划与努力。观察表明,大约有4%的代码是用于日志记录。因此,即便是一般大小的应用程序将会有成千上万的日志语句嵌入在他们的代码。 因为它们的数量。它已成为管理这些日志语句,而不须要改动手动命令。
Apache Log4j 2是分布式的Apache许可,2.0版本号。同一时候提供有二进制版和源代码版。
Log4j 2.0中有默认的配置文件,级别为ERROR。有手动配置,也有自己主动配置。Log4j 2.0有四种方式的配置文件。
1.通过一个配置文件编写的XML、JSON或YAML。
2.以编程方式,通过创建一个ConfigurationFactory和配置实现。3.以编程方式,通过调用api暴露在配置界面加入 组件的默认配置。
4.以编程方式,通过调用Logger类内部的方法。
关于Log4j 2.0的特性说明,眼下了解到的就这些。
如有不懂,疑问或者欠妥的地方,请加QQ群:135430763 进行反馈,共同学习!
Log4j 2.0在开发中的高级使用具体解释—介绍篇(一)的更多相关文章
- Log4j 2.0在开发中的高级使用具体解释—配置简单的控制台输出(三)
Log4j 2.0在近期迎来了重大的版本号升级.攻克了1.x中死锁bug之外,性能也有10倍的提升. 相同的在最新版本号中的新特性中. 配置文件也不只局限于xml和java特性文件properties ...
- 0. Java开发中的23种设计模式详解(转)
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...
- 2、Cocos2dx 3.0游戏开发找小三之引擎简单介绍
尊重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27094663 引擎简单介绍 Cocos2d-x 的 ...
- 移动Web 开发中的一些前端知识收集汇总
在开发DeveMobile 与EaseMobile 主题 的时候积累了一些移动Web 开发的前端知识,本着记录总结的目的,特写这篇文章备忘一下. 要说移动Web 开发与传统的PC 端开发,感觉也没什么 ...
- 在iPhone开发中实现解压缩gzip
在iPhone开发中实现解压缩gzip是本文要介绍的内容,最近做的一个东西中,需要从网络获取xml文件,但是该文件用了gzip压缩的.搜索一 下有人说gzip压缩的用urlrequest可以自己解压, ...
- 依赖注入及AOP简述(十)——Web开发中常用Scope简介 .
1.2. Web开发中常用Scope简介 这里主要介绍基于Servlet的Web开发中常用的Scope. l 第一个比较常用的就是Application级Scope,通常我们会将一 ...
- iOS开发:代码通用性以及其规范 第一篇(附带,自定义UITextView\进度条\双表显示\瀑布流 代码设计思路)
在iOS团队开发中,我见过一些人的代码,也修改过他们的代码.有的人的代码写的非常之规范.通用,几乎不用交流,就可以知道如何修改以及在它基础上扩展延生.有的人的代码写的很垃圾,一眼看过去,简直会怀疑自己 ...
- 企业开发中选择logback而不是log4j的理由
不知道看到这篇文章的Java工程师有没有考虑过这个问题:为什么在企业开发中会选择logback来记录日志,而不是log4j呢? 如果你以前没有考虑过这个问题,那么现在如果让你考虑一下,你可能觉的会是因 ...
- iOS开发——高级篇——iPad开发、iPad开发中的modal
一.iPad简介 1.什么是iPad一款苹果公司于2010年发布的平板电脑定位介于苹果的智能手机iPhone和笔记本电脑产品之间跟iPhone一样,搭载的是iOS操作系统 2.iPhone和iPadi ...
随机推荐
- 飘逸的python - 中文编码长度有趣的现象
最近在做验证用户姓名的功能时发现这样一个现象. >>len(u'打怪者') #unicode 3 >>len(u'打怪者'.encode('gbk')) #gbk 6 &g ...
- mysqlsandbox
http://mysqlsandbox.net/ http://www.cnblogs.com/xuanzhi201111/p/3998604.html
- hdu 4643 GSM 计算几何 - 点线关系
/* hdu 4643 GSM 计算几何 - 点线关系 N个城市,任意两个城市之间都有沿他们之间直线的铁路 M个基站 问从城市A到城市B需要切换几次基站 当从基站a切换到基站b时,切换的地点就是ab的 ...
- 查看webservice服务下的所有方法和参数类型
方法:直接在IE浏览器中输入webservice的地址,查看返回的XML数据即可. 效果如下:
- 如何:为iOS 的方法写注释 让xcode 能够索引得到?
如何:为iOS 的方法写注释 让xcode 能够索引得到? 按照如下方法为ios项目写注释: 将会让xcode能够索引得到如下结果:
- Git:一本书 + 一个站点,让你掌握 Git
一本书:<<Pro Git in Chinese>> 一个网站:http://pcottle.github.io/learnGitBranching/
- SQL文件的BOM问题导致的invalid character错误及解决
最近在做数据的搬运工,将Oracle中的数据搬运到ES中,方案很成熟了,使用Logstash的jdbc-input执行SQL,然后将结果输出到ES中.这么简单的问题,在测试环境中测试也一帆风顺,可一上 ...
- Orchard之模版开发
生成新模版之后(参看:Orchard之生成新模板),紧接着就是模版开发了. 一:开发必备之 Shape Tracing 到了这一步,非常依赖一个工具,当然,它也是 Orchard 项目本身的一个 Mo ...
- HTML5 本地文件操作之FileSystemAPI整理(一)
一.请求配额 DeprecatedStorageInfo对象 window.webkitStorageInfo:当使用持久存储模式时需要用到该对象的接口 方法: 1.requestQuota(type ...
- [转]MySQL主从复制(Master-Slave)与读写分离(MySQL-Proxy)实践
转自:http://heylinux.com/archives/1004.html Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中,由单 ...