/Lumberjack

Kotlin Coroutine Multiplatform Logging Library

Primary LanguageKotlinGNU Lesser General Public License v3.0LGPL-3.0

Discord Actions Bintray License

Lumberjack

Kotlin Coroutine Multiplatform Logging Library

💎 Benefits

  • 💪 Powerful - Heavily inspired by Log4J2, Lumberjack enables powerful logging API concepts such as MDC (Mapped Diagnostic Context), markers, custom levels, and an abstract Message API to be utilized in common and non-JVM platforms.

  • 🧰 Configurable - For JVM targets, Lumberjack delegates to Log4J2 API which enables extensive customization in runtime implementation including delegating to SLF4J or, if using log4j-core, powerful configuration options.

    For non-JVM targets, Lumberjack delegates to Sawtooth; an in-house logging engine and configuration API. Sawtooth configurations can be changed during runtime and its abstract APIs allow potentially infinite customization.

  • 🚀 Efficient - By reusing buffers and objects, utilizing caches, and inlining functions; Lumberjack operates with minimal memory overhead and contributes little to no additional pressure for the garbage collector.

  • 🌌 Universal - Lumberjack supports all Kotlin Multiplatform targets which makes it perfect for any Kotlin library or application for any platform.

📄 Documentation

Documentation including installation instructions and API usage can be found on the Wiki.