tinylog – Leichtes, vereinfachtes Protokollierungs-Framework für Java. HelloWorld-Tutorial und Details zur Protokollierungsebene
Veröffentlicht: 2021-11-09
Was ist TinyLog?
Tinylog ist ein leichtes und vereinfachtes Protokollierungsframework für so viele JVM-Sprachen. Es hat einen statischen Logger. Es muss keine weitere Protokollierungsinstanz pro Klasse erstellt werden.
Wie jedes andere Standard-Protokollierungs-Framework (log4j) unterstützt es auch 5 verschiedene Protokollierungsebenen.
- VERFOLGEN
- DEBUGGEN
- INFO – Standard
- WARNUNG
- ERROR
Lassen Sie Ihre Protokollierungsebene trace
, um die gesamte Protokollierung zu aktivieren.
Was alle Frameworks von tinylog unterstützen:
- Java
- Kotlin
- Skala
- andere JVM-Sprache
Was sind die Hauptvorteile des Tinylog-Logging-Frameworks?
- Es ist leicht (~170kb lib)
- Es ist schneller
- Es ist sehr einfach zu implementieren.
- Es folgt standardmäßigen log4j-Mustern
- Es ist quelloffen
Beginnen wir mit der Codierung und dem Beispiel „HelloWorld“.
Schritt 1
- Fügen Sie der pom.xml-Datei Ihres Projekts tinylog-Maven-Abhängigkeiten hinzu.

Öffnen Sie die pom.xml-Datei Ihres Produktionsprojekts und fügen Sie unten zwei Abhängigkeiten hinzu.
1 2 3 4 5 6 7 8 9 10 |
< dependency > < groupId > org . tinylog < / groupId > < artifactId > tinylog - api < / artifactId > < version > 2.3.2 < / version > < / dependency > < dependency > < groupId > org . tinylog < / groupId > < artifactId > tinylog - impl < / artifactId > < version > 2.3.2 < / version > < / dependency > |
Erstellen Sie das Projekt neu.
Schritt 2
- Fügen Sie tinylog.properties im Ordner /resources hinzu.
- Datei: tinylog.properties

1 2 3 4 5 6 7 8 9 10 |
# logs to Console writerCrunchifyConsole = console writerCrunchifyConsole . format = { date : HH : mm : ss . SSS } { level } : { message } writerCrunchifyConsole . level = trace # logs to File writerCrunchifyFile = file writerCrunchifyFile . file = crunchifyLog . txt writerCrunchifyFile . level = trace |
Hier haben wir zwei Tinylog-Adapter.
- tinylog
console
- Dadurch wird das Protokoll in der Eclipse / IntelliJ IDEA-Konsole gedruckt
- tinylog
file
- Dadurch wird das Protokoll in der Datei crunchifyLog.txt gedruckt

Schritt 3
- Erstellen Sie die Klasse CrunchifyTinyLogFirstTutorial.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
package crunchify . com . java . tutorials ; import org . tinylog . Logger ; /** * @author Crunchify.com * Program: tinylog Hello World Tutorial with log levels and properties * */ public class CrunchifyTinyLogFirstTutorial { public static void main ( String [ ] args ) { // Logs a message at INFO level. Logger . info ( "Howdy Cruncher! This is App Shah and welcome to Tinylog Tutorial! - INFO Log Level" ) ; // Logs a message at TRACE level. Logger . trace ( "Howdy Cruncher! This is App Shah and welcome to Tinylog Tutorial! - TRACE Log Level!" ) ; // Logs a message at DEBUG level. Logger . debug ( "Howdy Cruncher! This is App Shah and welcome to Tinylog Tutorial! - DEBUG Log Level!" ) ; // Logs a message at WARN level. Logger . warn ( "Howdy Cruncher! This is App Shah and welcome to Tinylog Tutorial! - WARN Log Level!" ) ; // Logs a message at ERROR level. Logger . error ( "Howdy Cruncher! This is App Shah and welcome to Tinylog Tutorial! - ERROR Log Level!" ) ; String crunchifyString = "Cruncher" ; Logger . info ( "Howdy {}! This is Tinylog tutorial by {}." , crunchifyString , "Crunchify.com" ) ; Logger . error ( "Oh.. This is not {} but it's {}" , "Meta.com" , "Crunchify.com" ) ; } } |
Kopieren Sie den obigen Code und speichern Sie die Datei.
Schritt 4
Führen Sie das obige Programm als Java-Anwendung aus und Sie werden das Ergebnis wie unten sehen.
1 2 3 4 5 6 7 8 9 10 11 |
/ Users / app / Library / Java / JavaVirtualMachines / openjdk - 17.0.1 / Contents / Home / bin / java - javaagent : / Applications / IntelliJ IDEA . app / Contents / lib / idea_rt . jar = 60075 : / Applications / crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial 13 : 21 : 52.998 INFO : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - INFO Log Level 13 : 21 : 53.001 TRACE : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - TRACE Log Level ! 13 : 21 : 53.002 DEBUG : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - DEBUG Log Level ! 13 : 21 : 53.002 INFO : Howdy Cruncher ! This is Tinylog tutorial by Crunchify . com . 13 : 21 : 53.002 WARN : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - WARN Log Level ! 13 : 21 : 53.002 ERROR : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - ERROR Log Level ! 13 : 21 : 53.002 ERROR : Oh . . This is not Meta . com but it ' s Crunchify . com Process finished with exit code 0 |
Welche Protokollierungsformate können Sie mit tinylog verwenden?

Name | Beschreibung |
---|---|
KLASSE | Vollqualifizierter Klassenname, in dem die Protokollierungsanforderung ausgegeben wird |
KLASSENNAME | Klassenname (ohne Paket), in dem die Protokollierungsanforderung ausgegeben wird |
KONTEXT | Alle gesetzten Werte aus dem Logging-Kontext (neu in tinylog 1.1) |
DATUM | Datum und Uhrzeit der Logging-Anfrage |
AUSNAHME | Ausgelöste Ausnahme ( null , wenn keine ausgelöst wurde) |
DATEI | Dateiname der Java-Quelldatei, von der die Protokollierungsanforderung ausgegeben wird |
STUFE | Protokollierungsebene des erstellten Protokolleintrags |
LINIE | Zeilennummer, von der aus die Protokollierungsanforderung ausgegeben wird |
BOTSCHAFT | Zugehörige Meldung des erstellten Protokolleintrags |
METHODE | Methodenname, von dem die Protokollierungsanforderung ausgegeben wird |
PAKET | Paket, in dem die Protokollierungsanforderung ausgegeben wird |
PROZESS ID | Prozess-ID der Anwendung |
RENDERED_LOG_ENTRY | Endgültiger gerenderter Protokolleintrag, wie er für textbasierte Ausgaben verwendet würde |
THREAD_ID | ID des aktuellen Threads |
THREAD_NAME | Name des aktuellen Threads |
Wie viele Autoren könnten Sie mit tinylog verwenden?
Schriftsteller | Name | Beschreibung |
---|---|---|
ConsoleWriter | Konsole | Schreibt Protokolleinträge in die Konsole |
FileWriter | Datei | Schreibt Protokolleinträge in eine definierte Datei |
JdbcWriter | jdbc | Speichert Protokolleinträge in einer SQL-Datenbank |
LogcatWriter | logcat | Leitet Protokolleinträge an das native Protokollsystem von Android weiter |
RollingFileWriter | rollende Datei | Wie FileWriter , verwendet aber mehrere Dateien, indem es sie dreht |
SharedFileWriter | gemeinsam genutzte Datei | Unterstützt das Schreiben mehrerer Instanzen eines Programms in dieselbe Datei |
Null | Null | Verwirft alle Protokolleinträge |
Loggen Sie sich ohne die Datei tinylog.properties ein
Als Referenz finden Sie hier ein Protokoll, wenn Sie kein Protokollierungsframework für Ihre Anwendung aktiviert haben.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
< meta charset = "utf-8" / > / Users / app / Library / Java / JavaVirtualMachines / openjdk - 17.0.1 / Contents / Home / bin / java - javaagent : / Applications / IntelliJ IDEA . app / Contents / lib / idea_rt . jar = 60075 : / Applications / crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) INFO : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - INFO Log Level 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) TRACE : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - TRACE Log Level ! 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) DEBUG : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - DEBUG Log Level ! 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) INFO : Howdy Cruncher ! This is Tinylog tutorial by Crunchify . com . 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) WARN : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - WARN Log Level ! 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) ERROR : Howdy Cruncher ! This is App Shah and welcome to Tinylog Tutorial ! - ERROR Log Level ! 2021 - 11 - 08 13 : 28 : 30 [ main ] crunchify . com . java . tutorials . CrunchifyTinyLogFirstTutorial . main ( ) ERROR : Oh . . This is not Meta . com but it ' s Crunchify . com Process finished with exit code 0 |
Und Sie sind bereit. Lassen Sie mich wissen, wenn Sie beim Ausführen dieses Tinylog-Tutorials auf Probleme stoßen.