Star

tinylog

tinylog ist ein schlankes - auf einfache Verwendung getrimmtes - Open Source Logging-Framework für Java und Android.

Einfach zu verwenden

Der tinylog-Logger ist statisch. Damit ist es nicht notwendig, eine Instanz des Loggers vor dem Loggen zu erzeugen. Standardmäßig werden alle Log-Einträge des Levels Info und höher in die Konsole geschrieben.

import org.pmw.tinylog.Logger; public class Application { public static void main(String[] args) { Logger.info("Hello World!"); } }

In der Konsole wird - natürlich abgesehen vom Datum und der Uhrzeit - das Folgende erscheinen:

2024-10-30 01:55:12 [main] Application.main()
INFO: Hello World!

Konfigurierbar

tinylog kann über System-Properties, Properties-Dateien und direkt in in Java über eine Fluent-API konfiguriert werden.

So können z. B. alle Log-Einträge mit dem Level Warning oder höher in eine Text-Datei geschrieben werden:

tinylog.writer = file
tinylog.writer.filename = log.txt
tinylog.level = warning

oder in Java:

Configurator.defaultConfig() .writer(new FileWriter("log.txt")) .level(Level.WARNING) .activate();

Die vollständige Liste aller Anweisungen und Parameter kann der Dokumentation entnommen werden.

Schnell

tinylog ist sehr schlank, was es vereinfacht, das Logging-Framework auf Geschwindigkeit, wie z. B. durch vorkompilierte Patterns, zu optimieren. Das Ergebnis sieht man im Benchmark. Dort ist tinylog bis zu sechs mal schneller als das verbreitete log4j!

Skaliert

tinylog ist threadsicher und kann in Programmen mit mehreren Threads ohne Locks verwendet werden. Alle Log-Einträge werden immer als Ganzes erzeugt und geschrieben. Beim Ausführen auf Systemen mit mehreren Kernen profitiert tinylog von diesen.

Klein und schlank

Wie der Name "tinylog" bereits suggeriert, ist tinylog sehr klein. Das JAR ist gerade einmal 105 KB groß!