Formatierung slf4j, um log-message-Typen mit Farben
Ich bin mit slf4j für das logging in meine Java-Anwendung. Es beinhaltet eine Menge logging-und log-monitoring.
Manchmal ist es wirklich schwer zu Lesen und finden Informationen aus Protokollen, wenn das gesamte Protokoll gedruckt in der Farbe schwarz mit.
Nur um Sie lesbarer zu machen, ist es möglich, sich die verschiedenen Arten von Nachrichten, die in verschiedenen Farben?
Zum Beispiel alle Error-level-Nachrichten, in Roter Farbe oder eine andere schriftart, die Größe und alle Info-level-Nachrichten, in blauer Farbe und eine andere schriftart und-Größe.
Anregungen oder Hilfe ist willkommen.
Thnx.
Vielleicht hilft es, wenn Sie den Namen you ' r IDE. Und Sie können Fragen, wie man anzeigen nach Stderr, statt Stdout für Fehlermeldungen.
Die log-Datei ist eine nur-text-Datei. Es gibt kein Konzept der Farbe. Allerdings könnten Sie in der Lage, etwas zu finden, mit denen Sie das Protokoll anzeigen, dass der Farbcode kann es für Sie...
Die log-Datei ist eine nur-text-Datei. Es gibt kein Konzept der Farbe. Allerdings könnten Sie in der Lage, etwas zu finden, mit denen Sie das Protokoll anzeigen, dass der Farbcode kann es für Sie...
InformationsquelleAutor Panshul | 2012-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zwei Lösungen kommen mir in den Sinn. Sie werden nicht mit Farben, sondern alternative Lösungen:
In Ihrem Datei-Appender Konfiguration, die Sie konfigurieren können, die Muster enthalten die log-level (error, warn, etc). Dann können Sie grep die Datei, um Nachrichten zu filtern, indem Sie Ebene.
Können Sie konfigurieren zwei file-appenders (für zwei separate log-Dateien) mit verschiedenen Schwellenwert. Zum Beispiel, man würde sich alle Protokolle über die debug-Stufe (also info, warn, error) in sagen wir mal logs.txt und die anderen, sich nur die Fehler in logs errors.txt
Hoffe, es hilft.
InformationsquelleAutor daniel
Etwas, das Sie haben, zu Bedenken.
Erste, SLF4J ist nur eine logging-Fassade. Wie die tatsächliche log-Meldung behandelt wird, hängt von der Bindung verwendet. Daher ist deine Frage ungültig, stattdessen sollten Sie nennen, die Implementierung, die Sie verwenden möchten (LogBack? Log4J? etc)
Zweite, "Färben" ist nicht etwas, was sinnvoll ist in den meisten Fällen. Zum Beispiel, wenn Sie beziehen sich auf eine nur-text-Protokolldatei, es gibt nichts, was wir kontrollieren können, das färben, weil Sie alle nur-text (es sei denn, Ihr editor der syntax-highlighting-built-in für Ihre log-message format). Es kann sinnvoll sein, wenn Sie wollen, um zu sehen, die Farbe in der Konsole/terminal, oder wenn Sie ausgeben Ihre log-in-Datei-format, die es Ihnen ermöglichen, enthalten Farbinformationen (z.B. HTML).
Mit diesen beiden Gedanken im Hinterkopf, hier ist mein Vorschlag.
LogBack bietet integrierte Unterstützung für die Färbung http://logback.qos.ch/manual/layouts.html#coloring in die Ausgabe der Konsole. Wenn Sie auf der Suche nach Weg, um zu sehen, Farbe in die Ausgabe der Konsole, und Sie erlaubt die Verwendung von LogBack, das ist, was Sie suchen.
Wenn Sie können, schreiben Sie eine Textdatei mit der Farbe im inneren, dann können Sie erwarten, dass. Jedoch, es ist etwas, das unerreichbar ist. Sie können schreiben Sie Ihre eigenen viewer, analysieren Sie Ihre log-Meldung und tun, die Formatierung und Anzeige zu Ihnen. Ich Wette, wenn Sie bereit sind, dies zu tun. Mit HTML sowie eine CSS vielleicht ist der Weg zu gehen für Sie.
InformationsquelleAutor Adrian Shum
Es ist nicht möglich, ändern Sie die Farben der
slf4j
Protokollierung, denn es gibt keine Formatierer. SLF4J ist eine middleware, die zwischen der Anwendung und einige logging-Funktion, beispielsweise Log4j oder Logback.Können Sie Farben ändern in der Log4j Ausgabe, wie bereits erläutert,hier. Ich würde empfehlen, MulticolorLayout von jcabi-log
"log-Dateien werden farbig"? hm... 🙂
Kombinieren Sie mehrere log-Dateien in einem versuchen Otros Log Viewer github.com/otros-systems/otroslogviewer. Ich benutze es schon seit ein paar Jahren zu kombinieren, die Protokolle von mehreren Java-basierten Windows-Dienste.
InformationsquelleAutor yegor256
Ich benutze Filter für beide logging-level und Paket. Dieses Beispiel stammt von Spring-boot-Anwendung.Eigenschaften
Diese Weise sehe ich nur die Nachrichten, die ich sehen wollen,
org.slf4j.Logger
bevor es gefunden. Es stellt sich heraus, dass es ist mit spring-boot-Einstellungen, nicht zu slf4j-logger. Nochmals vielen Dank!InformationsquelleAutor Pomagranite
Hinzufügen neben appender in logback.xml zum Kolorieren logs ausgegeben:
InformationsquelleAutor Jackkobec