作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用、WEB应用以及移动应用。然而日志系统是一个成熟Java应用所必不可少的,在开发和调试阶段,日志可以帮助我们更好更快地定位bug;在运行维护阶段,日志系统又可以帮我们记录大部分的异常信息,从而帮助我们更好的完善系统。本文要来分享一些Java程序员最常用的Java日志框架组件。

1、log4j – 最受欢迎的Java日志组件

Log4j是一款基于Java的开源日志组件,Log4j功能非常强大,我们可以将日志信息输出到控制台、文件、用户界面,也可以输出到操作系统的事件记录器和一些系统常驻进程。更值得一提的是,Log4j可以允许你非常便捷地自定义日志格式和日志等级,可以帮助开发人员全方位地掌控日志信息。

官方网站:http://logging.apache.org/log4j/2.x/

下面是使用Log4j的一个简单例子:

package com.mai.test;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;public class Log4jTest {public static void main(String[] args) {Logger log = Logger.getLogger(Log4jTest.class);
PropertyConfigurator.configure("src/log4j.properties");
log.debug("yes,debug");
log.info("yes,info");
log.error("yes,error");
log.warn("yes,warn");
}}

2、gclogviewer – Java日志查看工具

gclogviewer是一个支持jdk 6的gc log可视化工具,和gcviewer相比,gclogviewer支持根据gc log生成GC的趋势图,也支持生成调优建议所需的数据趋势图。

官方网站:http://code.google.com/p/gclogviewer/

3、SLF4J – 基于API的Java日志框架

SLF4J提供了一个简单统一的日志记录接口,开发者在配置和部署时只需要实现这个接口即可实现日志功能。 Logging API实现既可以选择直接实现SLF4J接的loging APIs如: NLOG4J、SimpleLogger。也可以通过SLF4J提供的API实现来开发相应的适配器如Log4jLoggerAdapter、JDK14LoggerAdapter。

官方网站:http://www.slf4j.org/

4、Flume – Apache日志服务器

之前介绍的都是一些日志记录工具,Flume则是一个日志分析系统,Flume是分布式的,它有一个非常灵活的架构,用来收集、聚合以及移动大量日志数据,并且提供可靠、容错的系统架构。

官方网站:http://flume.apache.org/

5、zLogFabric – 日志存储系统

zLogFabric 是一个集成的跨平台日志解决方案,通过消息系统收集各个应用的日志信息存储到一个集中式的系统中。模块化的设计使得服务器可对日志进行存储、转发、警报以及生成日志统计信息。

zLogFabric 可收集来自文件、syslog、log4j、log4net 以及 Windows 事件的数据。

官方网站:http://www.zlogfabric.com/

6、logstash – Java日志管理工具

logstash是一款功能非常强大的日志管理工具,利用logstash,你可以对日志进行传输、处理、管理和检索,并且提供Web接口以便开发者统计和查询日志信息。

官方网站:http://www.logstash.net/

7、Commons Logging

Commons Logging的实现不依赖于具体的日志实现工具,仅仅提供一些日志操作的抽象接口,它对其他的日志工具做了封装,比如Log4J, Avalon LogKit, 和JDK 1.4等。

官方网站:http://commons.apache.org/proper/commons-logging/

8、Darks Logs

Darks Logs和log4j类似,也适用于Java、Android等项目,但是Darks Logs使用更加简单,而且对Android端做了非常大的改善。Darks Logs对Sqlite的日志保存增加了Appender。其旨在解决Android日志无法灵活控制日志等级、格式、保存或显示目标等常用操作等的问题。

官方网站:https://github.com/liulhdarks/darks-logs

本文链接:http://www.codeceo.com/article/8-java-log-framework.html
本文作者:码农网 – 小峰

转载于:https://www.cnblogs.com/shelenty/p/5264728.html

【转】Java程序员最常用的8个Java日志框架相关推荐

  1. Java 程序员开发常用的工具(全)

    Java 程序员开发常用的工具 作为一名Java程序开发人员,可以的选择集成开发环境IDE(Integrated Development Environment)非常多,得益于Java是一门开源语言. ...

  2. 2019最新Java程序员面试指南——HR的套路+Java常见技术点

    本文转载自:2019最新Java程序员面试指南--HR的套路+Java常见技术点 面试是件既简单又复杂的事情,也正是因为简单和复杂的两面性,所以Java程序员在面试的时候要多学些面试技巧,当然技术也不 ...

  3. Java程序员开发常用的工具

    Java开发人员的常用工具 java常用的开发工具.都说工欲善其事必先利其器,要想学好java这门语言,选择一款好用顺手的开发工具是必不可少的.另外面试java工作时开发工具的使用也是一个重要的考核点 ...

  4. Java程序员最常用的Linux命令

    大家都知道,Linux系统提供了非常多非常多的命令或工具,这些命令都各有所长,都是系统需要的.但我们精力有限,要掌握全部的命令不太现实,所以只需要掌握其中部分常用的命令即可.这里,我就从一个Java程 ...

  5. Java程序员最常用的Linxu命令

    大家都知道,Linux系统提供了非常多非常多的命令或工具,这些命令都各有所长,都是系统需要的.但我们精力有限,要掌握全部的命令不太现实,所以只需要掌握其中部分常用的命令即可.这里,我就从一个Java程 ...

  6. Java程序员必须要学ajax吗,Java程序员需要具备哪些专业技能?

    我们都知道,Java程序员是一个技术岗位,从技术上和业务上都需要不断地提升自我. 经常有小伙伴疑惑:一个合格的Java程序员需要会哪些东西?今天,就来和大家好好聊一聊,超多干货,快快收藏哦! Java ...

  7. JAVA程序员工作常用英语(细心整理)java常用名词解释

    java常用名词解释: AAA 认证 (Authentication):验证用户的身份与可使用的网络服务:授权(Authorization):依据认证结果开放网络服务给用户:计帐(Accounting ...

  8. Java程序员必须掌握的7个Java性能指标!

    Java是目前世界上最流行的计算机编程语言,是一种可以编写跨平台应用软件的面向对象的程序设计语言.本文中,小千搜集了7个最有影响的衡量标注,让你可以不依赖日志文件来了解应用程序.现在,让我们看看这些性 ...

  9. java程序员第二语言_惊呆了!Java程序员最常犯的错竟然是这10个

    和绝大多数的程序员一样,我也非常的宅.周末最奢侈的享受就是逛一逛技术型网站,比如说 programcreek,这个小网站上有一些非常有意思的主题.比如说:Java 程序员最常犯的错竟然是这 10 个, ...

  10. java程序员发展_超详细的Java程序员职业发展路径,值得深思!

    在国内IT行业招聘中,大量的招聘需求都是和Java相关,且比例还在上升.巨大的人才缺口直接导致各企业纷纷以高薪聘请Java人才.那么,Java工程师的职业发展路径是什么样的?小白入门Java后,成长路 ...

最新文章

  1. OpenStack环境搭建(三:Computer与Controller节点的安装及配置)
  2. Vaadin学习经验
  3. python3.6安装opencv-python3.6.5安装opencv3
  4. python语言入门教程-菜鸟学Python入门教程大盘点|7个多月的心血总结
  5. ios 自动缩小字体_小字体紫筑B丸85%中粗体文件+deb双版本
  6. 音视频技术开发周刊 | 132(FFmpeg决策委员会委员 刘歧)
  7. ArcGIS自定义高程
  8. IDEA Tomcat Catalina Log出现乱码
  9. LeetCode 252. 会议室(排序)
  10. linux ps指令查看进程,linux下查看进程指令-ps
  11. Python matplot画散列图
  12. Android OTA升级(2):开启升级过程
  13. 网络数据包收发流程:从驱动到协议栈
  14. matlab求带参数二重定积分,matlab二重定积分
  15. 傲腾内存不支持linux吗,内存英特尔® 傲腾™常见问题
  16. 要重新学习线性代数了!
  17. 质量评估:如何全面评价一份数据的质量高低?
  18. 机器学习项目 - ctr 电商点击率预估
  19. Web渗透攻击实战(2)—获取网站后台登录用户名密码
  20. 吉他的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告

热门文章

  1. cmd命令配置MySQL
  2. VC 无标题栏对话框移动
  3. SQL Server 2008数据库快照技术(八)
  4. .NET Mail : 注意Win 7 不再包含SMTP服务
  5. 安装配置文件共享协议(SAMBA)
  6. 商品库存的扣除过程,如何防止超卖?
  7. 工作3年,还不懂单点登录系统?看看这8幅漫画~
  8. 女程序员做了个梦,神评论。。。
  9. 蚂蚁金服二面,竟然被问到事务的基本原理?
  10. 资深程序员是用五年时间攒够100万,老婆是关键