Tomcat verwendet Log4j zur Ausgabe des catalina.out-Protokolls

Tomcat verwendet Log4j zur Ausgabe des catalina.out-Protokolls

Das Standardprotokoll von Tomcat verwendet java.util.logging, das mehrere Mängel aufweist. Die Datei catalian.out kann nicht wie log4j täglich generiert werden und wird immer größer. Das Protokollformat stimmt nicht mit dem von log4j im Projekt gedruckten Format überein, was der Analyse nicht förderlich ist.

Ich habe auf der offiziellen Website von Tomcat (https://tomcat.apache.org/tomcat-7.0-doc/logging.html) gesucht und festgestellt, dass Sie durch Ändern einiger Konfigurationen und Ersetzen des Erweiterungspakets log4j zum Ausgeben von catalian.out verwenden können.

Erstellen Sie eine log4j.properties-Datei in $CATALINA_BASE/lib

Der Inhalt von log4j.properties ist wie folgt:

log4j.rootLogger = INFO, CATALINA
# Definieren Sie alle Appender
log4j.appender.CATALINA = org.apache.log4j.DailyRollingFileAppender
log4j.appender.CATALINA.File = ${catalina.base}/logs/catalina.out
log4j.appender.CATALINA.Append = true
log4j.appender.CATALINA.Encoding = UTF-8
# Einmal täglich das Protokoll überarbeiten
log4j.appender.CATALINA.DatePattern = '.'yyyy-MM-dd
log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
#log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%n
log4j.appender.CATALINA.layout.ConversionPattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %p [%t] %c | %m%n
# benutzerdefiniertes Protokoll für catalina.out konfigurieren
log4j.logger.com.xxxxx = WARNUNG, CATALINA
log4j.logger.org.apache = WARNUNG, CATALINA
log4j.logger.org.mybatis = WARN, CATALINA
log4j.logger.java.sql = WARNUNG, CATALINA
log4j.logger.org.springframework = WARNUNG, CATALINA

Aktualisieren Sie Tomcat-bezogene JAR-Pakete

Laden Sie log4j-1.2.17.jar herunter (http://www.apache.org/dist/logging/log4j/1.2.17/)

Laden Sie zwei JAR-Pakete von Tomcat7 herunter: tomcat-juli.jar und tomcat-juli-adapters.jar (http://www.apache.org/dist/tomcat/tomcat-7/v7.0.69/bin/extras/, vorzugsweise entsprechend der Tomcat-Version).

Legen Sie log4j-1.2.17.jar und tomcat-juli-adapters.jar in $CATALINA_HOME/lib ab; ersetzen Sie $CATALINA_HOME/bin/tomcat-juli.jar durch das neu heruntergeladene tomcat-juli.jar.

Löschen Sie $CATALINA_BASE/conf/logging.properties.

Starten Sie Tomcat neu

Informationen zum standardmäßigen Catalina-Protokollformat

Wenn Sie nur das Standardprotokollformat von Tomcat ändern möchten, ersetzen Sie einfach den Standard java.util.logging.SimpleFormatter . Das Format in der Klasse SimpleFormatter ist LoggingSupport.getSimpleFormat() und sein spezifischer Wert ist: "%1$tb %1$td, %1$tY %1$tl:%1$tM:%1$tS %1$Tp %2$s%n%4$s: %5$s%6$s%n", wobei das Zeitformat möglicherweise nicht unseren Erwartungen entspricht und einen Zeilenumbruch %n enthält. Wenn Sie beispielsweise zu einem Zeitformat ähnlich dem oben stehenden log4j wechseln möchten, können Sie selbst eine Ersatzklasse (com.xxx.LogFormatter) neu schreiben und das Format auf „%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS.%1$tL %4$s %2$s %5$s%6$s%n“ festlegen. Ändern Sie $CATALINA_BASE/conf/logging.properties

java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter

Ändern Sie es wie folgt:

java.util.logging.ConsoleHandler.formatter = com.xxx.LogFormatter
org.apache.juli.FileHandler.formatter = com.xxx.LogFormatter

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der drei Möglichkeiten zum Schneiden von Catalina.out-Protokollen in Tomcat
  • Lösen Sie das Problem, dass sich catalina.out weiterhin in Tomcat ansammelt
  • Catalina.out-Protokolldateisegmentierung unter Linux Tomcat
  • Tomcat8 verwendet Cronolog zum Aufteilen von Catalina.Out-Protokollen

<<:  Beispielanalyse für MySQL Oracle- und SQL Server-Paging-Abfragen

>>:  So verwenden Sie Verbindungen der Physik-Engine in CocosCreator

Artikel empfehlen

Vorteile und Nachteile von JSON sowie Einführung in die Verwendung

Inhaltsverzeichnis 1. Was ist JSON 1.1 Array-Lite...

Wissen Sie, wie man Mock in einem Vue-Projekt verwendet?

Inhaltsverzeichnis Erster Schritt: Der zweite Sch...

Detaillierte Erklärung der RPM-Installation in MySQL

Installation und Deinstallation anzeigen # rpm -q...

Diskussion über Standard-Rand- und Füllwerte allgemeiner Elemente

Heute haben wir die Frage besprochen, wie hoch de...

Implementierungsprozess des Lupeneffekts im Javascript-Beispielprojekt

Inhaltsverzeichnis Vorwort Fall: Nachahmung des L...

Einführung in den vollständigen Namen und die Funktion von HTML-Tags

Alphabetisch DTD: Gibt an, in welcher XHTML 1.0 D...

Beispiel zur Erhöhung des Swap-Speichers im CentOS7-System

Vorwort Swap ist eine spezielle Datei (oder Parti...

Einige Tipps zum Schreiben leistungsstarker HTML-Anwendungen

Wie können Sie die Leistung einer Webseite verbes...