/PrettyLog

Kotlin logging library that makes your logs look more ✨ 𝙥𝙧𝙚𝙩𝙩𝙮 ✨

Primary LanguageKotlinMIT LicenseMIT

wakatime

PrettyLog

A Kotlin logging library focused on readability in console. PrettyLog takes advantage of ANSI color codes to make your logs look ✨ pretty ✨.

Installation

Kotlin DSL

repositories {
    maven {
        name = "devOS"
        url = uri("https://mvn.devos.one/releases")
    }
}

dependencies {
    implementation("cz.lukynka:pretty-log:1.4")
}

Gradle Groovy

repositories {
    mavenCentral()
    maven {
        name "devOS"
        url "https://mvn.devos.one/releases"
    }
}

dependencies {
    implementation 'cz.lukynka:pretty-log:1.4'
}

Logging

Logging is very easy, just call the log(message, type) method. type parameter is optional and defaults to RUNTIME

log("Hello there!")
log("general kenobi", LogType.NETWORK)

image

You can also log exceptions!

} catch (exception: Exception) {
    log(exception)
}

image

Logger Settings

You can change settings by simply setting LoggerSettings.<setting> to its new value

// Should the logs be saved to file?
LoggerSettings.saveToFile = true
// The path to the logs directory
LoggerSettings.saveDirectoryPath = "./logs/"
// Format of the log file name
LoggerSettings.logFileNameFormat = "yyyy-MM-dd-Hms"
// Style of the logger in console
LoggerSettings.loggerStyle = LoggerStyle.PREFIX

Logger Styles

There are 7 logger styles in total:

image

Log Types

There are 16 default log types: Debug, Information, Runtime, Network, Success, Warning, Error, Exception, Critical, Audit, Trace, Security, User Action, Performance, Config, and Fatal.

image

Custom Log Types

You can make custom log types by making object and then making vals in it with CustomLogType(name, AnsiPair) data class

object CustomLogTypes {
    val CUTE = CustomLogType("≽^•⩊•^≼", AnsiPair.CUTE_PINK)
    val GIT = CustomLogType("\uD83E\uDD16 Git", AnsiPair.AQUA)
    val FIRE_WARNING = CustomLogType("\uD83D\uDD25 Fire Warning", AnsiPair.ORANGE)
}
log("T-This is vewy cuwute message OwO", CustomLogTypes.CUTE)
log("refusing to merge unrelated histories", CustomLogTypes.GIT)
log("SERVER ROOM ON FIRE, DONT LET ASO RUN WHILE LOOPS EVER AGAIN", CustomLogTypes.FIRE_WARNING)

image

Implementations in other languages