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.
