All Projects → mattbertolini → liquibase-slf4j

mattbertolini / liquibase-slf4j

Licence: MIT license
Liquibase SLF4J Logger.

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to liquibase-slf4j

herald
Log annotation for logging frameworks
Stars: ✭ 71 (+69.05%)
Mutual labels:  slf4j, log4j, logback, logger
Kotlin Inline Logger
A logger facilitating lazily-evaluated log calls via Kotlin's inline classes & functions.
Stars: ✭ 77 (+83.33%)
Mutual labels:  slf4j, jvm, logger
Scala Logging
Convenient and performant logging library for Scala wrapping SLF4J.
Stars: ✭ 804 (+1814.29%)
Mutual labels:  slf4j, logback, jvm
Kotlin Logging
Lightweight logging framework for Kotlin. A convenient and performant logging library wrapping slf4j with Kotlin extensions
Stars: ✭ 1,378 (+3180.95%)
Mutual labels:  slf4j, jvm
Izumi
Productivity-oriented collection of lightweight fancy stuff for Scala toolchain
Stars: ✭ 423 (+907.14%)
Mutual labels:  slf4j, logger
trembita
Model complex data transformation pipelines easily
Stars: ✭ 44 (+4.76%)
Mutual labels:  slf4j, log4j2
echopraxia
Java Logging API with clean and simple structured logging and conditional & contextual features. JSON implementations in Logback and Log4J.
Stars: ✭ 37 (-11.9%)
Mutual labels:  slf4j, logback
Stubbornjava
Unconventional Java code for building web servers / services without a framework. Think dropwizard but as a seed project instead of a framework. If this project had a theme it would be break the rules but be mindful of your decisions.
Stars: ✭ 184 (+338.1%)
Mutual labels:  slf4j, logback
Sofa Common Tools
sofa-common-tools is a library that provide some utility functions to other SOFA libraries.
Stars: ✭ 141 (+235.71%)
Mutual labels:  slf4j, logback
owasp-security-logging
OWASP Security Logging library for Java
Stars: ✭ 106 (+152.38%)
Mutual labels:  log4j, logback
slf4j-timber
SLF4J binding for Jake Wharton's Timber Android logging library
Stars: ✭ 44 (+4.76%)
Mutual labels:  slf4j, log4j
Tinylog
tinylog is a lightweight logging framework for Java, Kotlin, Scala, and Android
Stars: ✭ 360 (+757.14%)
Mutual labels:  slf4j, logger
Scribe
The fastest logging library in the world. Built from scratch in Scala and programmatically configurable.
Stars: ✭ 304 (+623.81%)
Mutual labels:  slf4j, logback
logback-access-spring-boot-starter
Spring Boot Starter for Logback-access.
Stars: ✭ 153 (+264.29%)
Mutual labels:  logback, logger
slack-webhook-appender
Logback appender which posts logs to slack via incoming webhook.
Stars: ✭ 16 (-61.9%)
Mutual labels:  slf4j, logback
Terse Logback
Structured Logging, Tracing, and Observability with Logback
Stars: ✭ 146 (+247.62%)
Mutual labels:  slf4j, logback
logunit
A Java library for unit-testing logging.
Stars: ✭ 40 (-4.76%)
Mutual labels:  slf4j, logback
jcabi-log
Static Wrapper of SLF4J easing you from the necessity to create static LOGGER instances in each Java class
Stars: ✭ 53 (+26.19%)
Mutual labels:  slf4j, logger
loggers
Abstract logging for Golang projects. A kind of log4go in the spirit of log4j
Stars: ✭ 17 (-59.52%)
Mutual labels:  log4j, logger
telegram-log
Send a Telegram message when your scripts fire an exception or when they finish their execution.
Stars: ✭ 16 (-61.9%)
Mutual labels:  log4j, logger

liquibase-slf4j

Version 4.1.0
Written by Matt Bertolini

Maven Central javadoc Build Status

An implementation of the Liquibase logger that delegates directly to SLF4J.

Liquibase has a logging mechanism that delegates to java.util.logging. It works great with SLF4J out of the box if you use jul-to-slf4j library. Unfortunately, there is a known performance impact when bridging java.util.logging to SLF4J. This library helps to eliminate that performance impact by logging Liquibase directly to SLF4J.

How to Use

Grab the library from Maven Central and place it in your classpath.

Maven:

<dependency>
    <groupId>com.mattbertolini</groupId>
    <artifactId>liquibase-slf4j</artifactId>
    <version>4.1.0</version>
    <scope>runtime</scope>
</dependency>

Gradle:

Groovy DSL:

runtimeOnly 'com.mattbertolini:liquibase-slf4j:4.1.0'

Kotlin DSL:

runtimeOnly("com.mattbertolini:liquibase-slf4j:4.1.0")

Ivy

<dependency org="com.mattbertolini" name="liquibase-slf4j" rev="4.1.0"/>

License

liquibase-slf4j is licensed under the MIT License

Notes

This logger has a priority number of 5. If there is more than one Liquibase logger on the classpath the one with the highest priority will be used. The priority number can be changed by setting the system property com.mattbertolini.liquibase.logging.slf4j.Slf4jLogService.priority to an integer value of your choice.

Version 4 of Liquibase introduced a new plugin loading mechanism based on the Java ServiceLoader. Version 3.0.0 of this logger conforms to this new loader mechanism. If you are using Liquibase versions lower than 4, continue to use version 2.0.0 of this library.

Liquibase version 3.4.0 had an issue loading third party loggers in some situations. This logger may not work on that version. It is recommended to upgrade to Liquibase 3.4.1 which addresses this issue.

Log Level Mappings

Liquibase Level SLF4J Level
Debug (Deprecated) Debug
Fine Debug
Config Info
Info Info
Warning Warn
Severe Error

Build and Test

Requirements

  • Apache Ant - Version 1.10.6 or higher.
  • JDK 8 or higher (Compiled with 1.8 source and target).

Build

To build this project, clone the repo and run the ant command:

$ git clone https://github.com/mattbertolini/liquibase-slf4j.git
$ cd liquibase-slf4j
$ ant

The distributable jar files will be located in the dist folder. The build reports (unit test, coverage, etc.) will be located in the build/reports dir.

To list all available tasks:

$ ant -p

Bugs

Please report any bugs in the issue tracker above. Please be as detailed as possible in the report, so I can create unit tests to verify the problem is fixed.

Release Notes

4.1.0 - 2022-03-30

  • Generated OSGi metadata making the jar a OSGi fragment where Liquibase is the host bundle. This was tested with Liquibase 4.9.1. This fixes issue #12 (Pull Request)
  • Upgraded to SLF4J 1.7.36
  • Upgraded to Liquibase 4.9.1. The library should still work with Liquibase 4.1.0 and above when not using OSGi.

4.0.0 - 2020-09-30

  • Upgraded Liquibase to version 4.1.0. This is a breaking change as the logging API introduced a new filter class and changed constructors. (Pull Request)

3.0.0 - 2020-07-23

  • Upgraded to Liquibase version 4.0.0. This is a breaking change as the logging API changed significantly. Use version 2.x if you are using Liquibase versions lower than 4.0.0.
  • Upgraded to SLF4J 1.7.30.
  • Added the ability to change the priority number of the logger by setting a Java property. To change the priority, set the com.mattbertolini.liquibase.logging.slf4j.Slf4jLogService.priority property to an integer value.
  • Repackaged logger now that package name is no longer used for locating third-party loggers.
  • Java 8 is now the minimum supported JDK version.
  • Added an Automatic-Module-Name to support the Java 9+ module system. The module name is com.mattbertolini.liquibase.logging.slf4j.
  • Overhauled build files.

2.0.0 - 2015-12-16

  • Switched the dependency scope of SLF4J and Liquibase to provided. This is because most users are already including their own versions of these libraries and the versions are often much newer than what is defined in this library. By marking them as provided it helps prevent version conflicts and extra exclusions in project files. For an example of this, check out the POM file from Dropwizard
  • The minimum required Liquibase version is now 3.2.0. This is done to take advantage of updates to AbstractLogger.

1.2.1 - 2013-10-12

  • Only printing the changeLogName and changeSetName if they are provided. This gets rid of the annoying nulls printed in logs.

1.2.0 - 2013-09-30

  • Upgrading to Liquibase version 3.0.5 to add new required methods.

1.1.0 - 2013-08-10

  • Upgrade Liquibase version to 3.0.x.
  • Backward-compatible with previous version.

1.0.0 - 2012-04-04

  • Initial release.
  • Supports Liquibase 2.0.x.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].