permutive-engineering / odin-contrib   2.1.0

Apache License 2.0 GitHub

Extra libraries for the Odin logging library

Scala versions: 3.x 2.13

Odin-Contrib

This repository contains extra utilities that work with the Odin logging library.

An Odin logger implementation that captures all log entries in a concurrent Ref. This is especially useful for testing.

"com.permutive" %% "odin-testing" "<VERSION>"

Provides translation and implicit syntax between Odin and Log4Cats loggers. This allows libraries and applications that use both logger types to convert between each.

Note that due to the use of sourcecode in Odin, the location of logging messages may appear to be from the point at which the Odin logger was converted to a Log4Cats logger, so in some cases it may simply be better to span an Slf4J logger where needed.

"com.permutive" %% "log4cats-odin" "<VERSION>"

An Odin logger implementation that allows runtime reconfiguration of log levels, both for the entire application, but also certain packages or classes.

"com.permutive" %% "odin-dynamic" "<VERSION>"

A bridge between Odin and Slf4j allowing the dynamic Odin logger to be used by default for Slf4j log messages.

In benchmarks, the bridge performs as well as Log4Cats with a Logback backend.

"com.permutive" %% "odin-slf4j-bridge" "<VERSION>"

[odin-slf4j2-bridge]

A bridge between Odin and Slf4j versions 2 and above, allowing the dynamic Odin logger to be used by default for Slf4j log messages.