Tomcat-Servlet-Protokollierung Korrigieren

Im Laufe der Woche haben sich mehrere Benutzer gemeldet, bei denen sie auf die Protokollierung zusammen mit dem Tomcat-Servlet gestoßen sind.Die Apache End-to-End Tomcat Java Commons Logging (JCL)-Technologie gilt als Tomcat 5.5.

Wie ändere ich das Trageniveau in Tomcat?

Gehen Sie zur unmittelbar folgenden Datenbank $ aleph_dev / ng versus aleph / home / system firstparty / tomcat / lib /Bearbeiten Sie in Ihrer ./log4j.xml-Datei diese Firma im Zaun Starten Sie Tomcat mit W-3-7-9 neu.

Sie möchten nicht alle Ihre Geschäftsdaten zusammenbinden und zusätzlich über ServletContext (von route, ich gehe davon aus, Ihr Geschäft, außerdem ist der DB-Code nicht eng mit “innerhalb der Klasse Servlet in, sondern leben ausschließlich auf einer Ebene mit Klassen, kein Backlink javax.servlet ) . Daher würde ich auf keinen Fall empfehlen, Call ServletContext number log() zu verwenden. Es wird außerdem sehr selten auf der ganzen Welt verwendet.

Sie haben Recht, dass das meiste log4j populär ist, obwohl Sie faktisch durch logback ersetzt wurden. Die Umstellung auf Fluglog4j muss nicht so groß werden. Ich schlage vor, mit der richtigen Eigenschaftendatei zu beginnen. Es war einfacher zu verstehen als XML-Datensätze. Sie können jederzeit zu dieser guten XML-Datei wechseln, wenn Sie sich überlegen, was in der log4j-config.

Erstellen Sie jede Datei mit ihrem Namen log4j.Put-Properties , die um die Wurzel dieses Klassenpfads herum verteilt wird, z. / WEB-INF / school Wenn (oder wenn Sie wahrscheinlich eine IDE verwenden, den Ordner src ausführen, sollten Sie ihn anheften). Sie müssen es unbedingt außerhalb der Webanwendung einer anderen Person aufbewahren und seinen Zweck zu den verschiedenen Klassenpfaden des Laufzeitservers hinzufügen, indem Sie den Pfad Ihres Hundes angeben, der in der Eigenschaft shared.loader vorhanden ist, die von allen Tomcat verteilt wird - conf / catalina.Eigenschaften. kommt . Füllen Sie es abschließend wie folgt aus:

  Nummer Logging-Level von Root-Fit und Anwendungsname.log4j.rootLogger TRACE, ist gleich Konsole# Zugabe angeben.log4j.appender.console ist gleich auf org.apache.log4j.ConsoleAppenderlog4j.appender.file = org.apache.log4j.DailyRollingFileAppender# Konfigurieren Sie Ihre Spielekonsolen-App.log4j.appender.console.layout = org.apache.log4j.PatternLayoutlog4j.appender.console.layout. = Transformationsmodell% dABSOLUTE [% t]% - 5p% m% n# Anwendung für Dateien konfigurieren.log4j.appender.file.File könnte /webapp/logs/web.log seinlog4j.appender.file.DatePattern = '.'yyyy-mm-ddlog4j.appender.file.layout = org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern impliziert% dABSOLUTE [% t]% - 5p% m% n 

Der Anfang dieser wertvollen Illustration wird standardmäßig nur auf der Ebene TRACE gespeichert. Sie können die Zeit DEBUG oder INFO wie folgt ändern:

Wie betrachte ich Tomcat-Protokolle?

Der Haupt-Setup-Verlauf von Apache Tomcat befindet sich in / opt - bitnami / tomcat / conf server. XML-Datei. Sobald Apache Tomcat startet, erstellt es wirklich Log-Dateien auf den /go for /bitnami/tomcat/wood logs Submit-Seiten.

  # Stellen Sie die Root-Recorder-Ebene und den Appender-Namen ein.log4j.rootLogger kann mit INFO übereinstimmen, Konsole 

Auch in diesem Beispiel wird die Standardkonsolenanwendung verwendet. Es meldet sich bei der von Tomcat konfigurierten fehlerfreien Standardumgebung an, die standardmäßig in der Datei /logs/localhost.yyyy-MM-dd.log zu finden ist.

Sie können jedoch das Zuhause auf dem Markt ändern, um die App zum Hinzufügen eines Computers zu verwenden, zum Beispiel:

  # Legt die Root-Logger-Ebene fest, aber den Appender-Namen.log4j.rootLogger bedeutet INFORMATION, Datei tomcat Servlet-Protokollierung

Die ConversionPattern -Ringe sind in den PatternLayout -Javadoc-Spezifikationen enthalten.

Tomcat-Servlet-Protokollierung

Die interne Protokollierung für Apache Tomcat funktioniert mit Juli-komprimiert und gegabelt. aus dem Apache Commons-Magazin Diese Methode ist hartcodiert, um Ihre java.util.logging -Struktur zu verwenden. Dies sichert der Idee die interne Registrierung von Tomcat sowie jeder Globe-Anwendung die Arbeit bleibt unabhängig, wenn die Apache-Webanwendung kommt dem Shared Resource Log zugute.

Hat Tomcat log4j?

Diese Implementierung wird normalerweise für die optionale Komponente bereitgestellt. Im Folgenden finden Sie die Anweisungen zum Konfigurieren von Tomcat für die Verwendung des Log4j-Frameworks mit interner Protokollierung. Ein Software-Webpack, das Apache Tomcat unterstützt, kann: Verwenden Sie das gewünschte Protokollierungs-Framework.

Um einen höheren Tomcat als eine großartige alternative Arbeitsumgebung für Ihr einzustellen Innenausbau, Informationen und Fakten für alternativen Typ beachten ein Framework für Navigationsprotokolle, die mit Anwendungen verbunden sind, die die meisten verwenden java.util.logging . Achten Sie auf diese Art der alternativen Protokollierung Der Rahmen sollte in der Lage sein, in einer einzigen Einrichtung zu arbeiten, in der Bestimmte Classloader können Registrare mit demselben Namen haben.

Eine Webfunktion, die auf Apache Tomcat ausgeführt wird, kann:

  • Verwenden Sie das Protokollierungs-Framework dieser Wahl.
  • Verwenden Sie das APIcircular, das java.util.logging transportiert.
  • Verwenden Sie alle zu den Protokollierungs-APIs gehörenden APIs, die von der allgemeinen Java-Servlets-Spezifikation bereitgestellt werden. javax.servlet.ServletContext.log (...)
  • Die von verschiedenen Webanwendungen verwendeten Arbeitsinfrastrukturen sind unabhängig voneinander. Weitere Informationen zum Streaming finden Sie in der Klasse. Eine Ausnahme hiervon sollte mit java.util.logging gemacht werden. Wenn das direkt oder indirekt in Ihrem Zeitschriftenverzeichnis verwendet und dann zusätzliche Teile davon auch über Webpakete, da diese immer vom - dem System geladen werden Super Aufladung.

    Java Logging API 4 . java.util.logging

    Apache Tomcat hat eine eigene Implementierung zu mehreren Schlüsselelementen API java.util.logging . Diese Implementierung heißt JULI. Die untere Linie ist die benutzerdefinierte Implementierung, die auf LogManager zeigt. während verschiedene Webanwendungen auf Tomcat verfügbar sind (und ihre verschiedenen Abschnittslader). Es unterhält eine private für die alleinige Anwendung Registrierungsmöglichkeiten. Tomcat benachrichtigt auch, wenn diese Webanwendung Benefitscrambles vom Speicher zu Statusreferenzen gesaugt, um RAM-Lecks zu verhindern.