Mirror of Apache Log4j Kotlin

Clone this repo:
  1. 2be20b0 [maven-release-plugin] prepare for next development iteration by Matt Sicker · 8 weeks ago master
  2. b699bed [maven-release-plugin] prepare release log4j-api-kotlin-1.2.0-rc4 by Matt Sicker · 8 weeks ago log4j-api-kotlin-1.2.0-rc4 rel/1.2.0
  3. c00c8e2 Upgrade maven-javadoc-plugin by Matt Sicker · 8 weeks ago
  4. 08d3450 Prepare for next release candidate by Matt Sicker · 8 weeks ago
  5. c6e27a3 Merge pull request #24 from apache/dependabot/maven/log4j-api-kotlin/junit-junit-4.13.1 by Volkan Yazıcı · 3 months ago

Apache Log4j 2 Kotlin API

Log4j Kotlin API is a Kotlin logging facade based on Log4j 2. Log4j Kotlin API provides Log4j 2 as its default logging implementation, but this is not strictly required (e.g., this API can also be used with Logback or other Log4j 2 API provider implementations). Idiomatic Kotlin features are provided as an alternative to using the Log4j 2 Java API.

Build Status


Gradle users can add the following dependencies to their build.gradle file:


compile "org.apache.logging.log4j:log4j-api-kotlin:1.2.0"
compile "org.apache.logging.log4j:log4j-api:2.17.0"
compile "org.apache.logging.log4j:log4j-core:2.17.0"




Log4j Kotlin API requires at least Java 8. This also requires Log4j 2 API, but it is specified as transitive dependencies automatically if you are using SBT, Maven, Gradle, or some other similar build system. This also requires Log4j 2 Core (or possibly an other implementation of Log4j 2 API) as a runtime dependency. Some Log4j 2 Core features require optional dependencies which are documented in the Log4j 2 manual.

The Kotlin API requires the full kotlin-reflect dependency in order to name loggers appropriately, and optionally kotlinx-coroutines-core to set the mapped diagnostic context for a coroutine.

The Kotlin dependencies are not exposed transitively -- for maximum compatibility logging-log4j-kotlin is built with Kotlin 1.3, producing binaries that should be forward compatible. For maximum compat, the Kotlin dependencies are “provided” i.e. consumers of this library need to depend on them directly rather than transitively, thus avoiding version clashes.


Apache Log4j 2 is distributed under the Apache License, version 2.0.


How to download Log4j, and how to use it from SBT, Maven, Ivy and Gradle.

Issue Tracking

Issues, bugs, and feature requests should be submitted to the JIRA issue tracking system for this project.

Pull request on GitHub are welcome, but please open a ticket in the JIRA issue tracker first, and mention the JIRA issue in the Pull Request.

Building From Source

Log4j Kotlin API requires Maven 3 and Java 8 to build. To install to your local Maven repository, execute the following:

mvn install


We love contributions! Take a look at our contributing page.