写点什么

Java 程序员常用的日志框架有哪些?

作者:java易二三
  • 2023-07-27
    湖南
  • 本文字数:1265 字

    阅读完需:约 4 分钟

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

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

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

下面是使用 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 的趋势图,也支持生成调优建议所需的数据趋势图。

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

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

4、Flume – Apache 日志服务器

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

5、zLogFabric – 日志存储系统

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

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

6、logstash – Java 日志管理工具

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

7、Commons Logging

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

8、Darks Logs

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

用户头像

java易二三

关注

还未添加个人签名 2021-11-23 加入

还未添加个人简介

评论

发布
暂无评论
Java程序员常用的日志框架有哪些?_Java_java易二三_InfoQ写作社区