Cloudopt-logger 是一个基于 Kotlin 开发的可扩展、可配置的日志框架扩展,支持 Java、Kotlin 及 Android。
具有以下特性:
-
支持彩色的日志输出。
-
支持多种日志框架,如Slf4j、Log4j等等。
-
易于扩展。
-
更人性化和方便调试的输出。
安装
在Maven中引入:
net.cloudopt.logger cloudopt-logger 1.0.1
如果您是使用Slf4j的话,需要引入相应的库,如:
org.slf4j slf4j-api 1.7.25 ch.qos.logback logback-classic 1.2.3
如何使用
使用起来非常简单,只需要引入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,自行实现。