https://github.com/elf4j/elf4j-tinylog
An adapter to use tinylog as service provider and runtime log engine for the ELF4J (Easy Logging Facade for Java) API
https://github.com/elf4j/elf4j-tinylog
elf4j java java-logger java-logging java-logging-facade logging logging-framework logging-library spi spi-provider tinylog
Last synced: about 2 months ago
JSON representation
An adapter to use tinylog as service provider and runtime log engine for the ELF4J (Easy Logging Facade for Java) API
- Host: GitHub
- URL: https://github.com/elf4j/elf4j-tinylog
- Owner: elf4j
- License: mit
- Created: 2022-10-14T20:14:39.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-08-28T07:21:05.000Z (over 1 year ago)
- Last Synced: 2025-08-15T06:54:35.164Z (7 months ago)
- Topics: elf4j, java, java-logger, java-logging, java-logging-facade, logging, logging-framework, logging-library, spi, spi-provider, tinylog
- Language: Java
- Homepage: https://elf4j.github.io/elf4j-tinylog/
- Size: 214 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://search.maven.org/search?q=g:%22io.github.elf4j%22%20AND%20a:%22elf4j-tinylog%22)
# elf4j-tinylog
An adapter to use [tinylog](https://tinylog.org/v2/) as service provider and runtime log engine for
the [ELF4J](https://github.com/elf4j/elf4j) (Easy Logging Facade for Java) API
## User story
As an application developer using the [ELF4J](https://github.com/elf4j/elf4j) API, I want to have the option of
selecting [tinylog](https://tinylog.org/v2/) as my log engine, at application deploy time without code change or
re-compile.
## Prerequisite
Java 8+
## Get it...
[](https://search.maven.org/search?q=g:%22io.github.elf4j%22%20AND%20a:%22elf4j-tinylog%22)
In Maven or other build tools alike, install [ELF4J API](https://github.com/elf4j/elf4j) as compile-scope dependency;
and this provider as runtime-scope dependency.
## Use it...
If you are using the [ELF4J API](https://github.com/elf4j/elf4j) for logging, and wish to select or
change to use tinylog as the run-time log engine, then simply pack this binding JAR in the classpath when the
application deploys. No code change needed. At compile time, the client code is unaware of this run-time logging service
provider. With the ELF4J facade, opting for tinylog as the logging implementation is a deployment-time decision.
```html
io.github.elf4j
elf4j
compile
io.github.elf4j
elf4j-tinylog
runtime
```
The usual [tinylog configuration](https://tinylog.org/v2/configuration/) applies.
Note: Only one logging provider such as this should be in effect at run-time. If multiple providers end up in the final
build of an application, somehow, then the `elf4j.service.provider.fqcn` system property will have to be used to select
the desired provider. For example,
```
java -Delf4j.service.provider.fqcn="elf4j.tinylog.TinylogLoggerFactory" -jar MyApplication.jar
```