Cloudopt-logger

Kotlin 实现的日志框架扩展
授权协议 Apache-2.0
开发语言 Kotlin Java
所属分类 程序开发、 日志工具(Logging)
软件类型 开源软件
地区 国产
投 递 者 郭易安
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Cloudopt-logger 是一个基于 Kotlin 开发的可扩展、可配置的日志框架扩展,支持 Java、Kotlin 及 Android。

具有以下特性:

  • 支持彩色的日志输出。

  • 支持多种日志框架,如Slf4j、Log4j等等。

  • 易于扩展。

  • 更人性化和方便调试的输出。

中文文档

安装

在Maven中引入:

<dependency>
    <groupId>net.cloudopt.logger</groupId>
    <artifactId>cloudopt-logger</artifactId>
    <version>1.0.1</version>
</dependency>

如果您是使用Slf4j的话,需要引入相应的库,如:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.25</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.2.3</version>
</dependency>

如何使用

使用起来非常简单,只需要引入Logger类即可,下面是几个示例:

package net.cloudopt.logger
import org.junit.Test

class TestCase {

    private val logger = Logger.getLogger(TestCase::class.java)

    @Test
    fun example1() {
        logger.debug("Start init....")
        logger.info("Operation successful!")
        logger.warn("The value must be not nul.")
        logger.error("Unable to acquire lock!")
    }

    @Test
    fun example2() {
        logger.info("Please Wait.... ${Colorer.blue("100")}")
        logger.info("Please Wait.... ${Colorer.yellow("200")}")
        logger.info("Please Wait.... ${Colorer.red("300")}")
    }

    @Test
    fun example3() {
        val configuration = LoggerConfiguration()
        configuration.run {
            this.color = false
        }
        Logger.configuration = configuration
        example1()
    }

    @Test
    fun example4() {
        val configuration = LoggerConfiguration()
        configuration.run {
            this.debugPrefix = "DEBUG"
            this.infoPrefix = "INFO"
            this.warnPrefix = "WARN"
            this.errorPrefix = "ERROR"
        }
        Logger.configuration = configuration
        example1()
    }
}

如果您想要修改任何输出的字符的颜色,只需要通过Colorer.xxx的方法包裹即可。目前已经内置了八种颜色。

如何扩展

目前已经内置了对Slf4j的支持,通过Slf4j可以支持logback、log4j、log4j2等等,如果您需要直接支持或者支持其他日志框架,您可以参考Slf4jLoggerProvider,自行实现。

 相关资料
  • 主要内容:GWT 日志框架 介绍,记录器的类型,日志处理程序, GWT 日志框架 示例GWT 日志框架 介绍 日志框架模拟 java.util.logging,因此它使用与服务器端日志代码相同的语法和行为 GWT 日志记录是使用 .gwt.xml 文件配置的。 我们可以配置启用/禁用日志记录;我们可以启用/禁用特定处理程序,并更改默认日志记录级别。 记录器的类型 记录器以树结构组织,根记录器位于树的根部。 记录器的名称使用 确定父/子关系。分隔名称的各个部分。 例如,如果我们有两个

  • 主要内容:日志记录框架概述,记录器对象,严重程度在编程中的日志是指记录活动/事件。通常,应用程序开发人员应该负责日志记录。 为了使日志记录更容易,Java提供了各种框架 - log4J,java.util.logging(JUL), tiny log,logback等。 日志记录框架概述 日志框架通常包含三个元素 - 记录仪 - 捕获消息和元数据。 格式化 - 格式化记录器捕获的消息。 处理器 - 或最终通过在控制台上打印或通过存储在数据库中或

  • 主要内容:日志框架的选择,SLF4J 的使用,统一日志框架(通用),统一日志框架(Spring Boot)在项目开发中,日志十分的重要,不管是记录运行情况还是定位线上问题,都离不开对日志的分析。在 Java 领域里存在着多种日志框架,如 JCL、SLF4J、Jboss-logging、jUL、log4j、log4j2、logback 等等。 日志框架的选择 市面上常见的日志框架有很多,它们可以被分为两类:日志门面(日志抽象层)和日志实现,如下表。   日志分类 描述 举例 日志门面(日志抽象层)

  • 我使用的是Spring framework(不是Spring Boot)版本5。 我如何强制Spring framework使用我的日志框架,例如log4j2? Log4J-Web-2<...> LOG4J-JCL-2<...> log4j-jul-2<...> 通用日志-1.2 Spring仍然忽略log4j2.xml设置,并输出到控制台上的StdErr。

  • 本文向大家介绍Python Django框架实现应用添加logging日志操作示例,包括了Python Django框架实现应用添加logging日志操作示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python Django框架实现应用添加logging日志。分享给大家供大家参考,具体如下: Django uses Python's builtin logging module t

  • 第十三章介绍了如何开发一个Web框架,通过介绍MVC、路由、日志处理、配置处理完成了一个基本的框架系统,但是一个好的框架需要一些方便的辅助工具来快速的开发Web,那么我们这一章将就如何提供一些快速开发Web的工具进行介绍,第一小节介绍如何处理静态文件,如何利用现有的twitter开源的bootstrap进行快速的开发美观的站点,第二小节介绍如何利用前面介绍的session来进行用户登录处理,第三小

  • 本文向大家介绍Spring框架基于AOP实现简单日志管理步骤解析,包括了Spring框架基于AOP实现简单日志管理步骤解析的使用技巧和注意事项,需要的朋友参考一下 SPringAOP的使用 技术概述,描述这个技术是做什么?学习该技术的原因,技术的难点在哪里。 为了实现项目管理员端的操作数据库日志,便于方便所以利用Spring框架的AOP机制进行实现,项目的难点在于如果设置切入点,如何获取参数。 技

  • 本文向大家介绍Golang logrus 日志包及日志切割的实现,包括了Golang logrus 日志包及日志切割的实现的使用技巧和注意事项,需要的朋友参考一下 本文主要介绍 Golang 中最佳日志解决方案,包括常用日志包logrus 的基本使用,如何结合file-rotatelogs 包实现日志文件的轮转切割两大话题。 Golang 关于日志处理有很多包可以使用,标准库提供的 log 包功能