log4j mit Tomcat6
Ich habe ein kleines problem mit Log4j. Wir sind der Bereitstellung auf Weblogic 10 mit log4j.xml
. Das funktioniert auch. Wir dachten, ein Weg, Tomcat 6, so dass wir entwickeln können, auf dieser Plattform und die Bereitstellung auf Weblogic 10.
Ich habe herausgefunden, wie man log4j.properies
arbeiten mit Tomcat 6 mit zusätzlichen jar-Dateien, verwenden Sie die JULI-logging-Mechanismus in Tomcat 6. Leider, meine log4j.xml
(das funktioniert mit Weblogic) funktioniert nicht mit Tomcat 6. So bin ich gezwungen zu verwenden log4j.properties
.
Habe ich nicht in der Lage gewesen, um herauszufinden, wie Sie angeben, die application-Klasse Hierarchien in log4j.properties
.
Also meine Frage ist, wie auf konvertieren Sie die folgenden log4j.xml
Einträge zu log4j.properties
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="vccashib" class="org.apache.log4j.DailyRollingFileAppender">
<param name="DatePattern" value="'.'yyyy-MM-dd"/>
<param name="File" value="vccashib_10.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{ISO8601} %t %-5p %c - %m%n"/>
</layout>
</appender>
<logger name="org.hibernate">
<level value="DEBUG"/>
<appender-ref ref="vccashib" />
</logger>
</log4j:configuration>
Also lassen Sie uns sagen, ich war zu schreiben, ein logger erfasst die Protokolle für die Klassen in meinem com.abc.xyz
Hierarchie. Wie kann ich zeigen, dass in log4j.properties
? (Ich habe die Betreuung von einer anderen Werte, wie z.B. Art des appenders, DatePattern, ConversionPattern, mit dem Namen, layout usw.)
Bitte beachten Sie, ich habe Sie nur ein problem-spezifischen code.
Alternativ, wenn Sie die Antwort wissen, wie zu machen log4j.xml
das ist Teil meiner Kriegs-Archiv mit Tomcat 6 (JULI Gläser sind vorhanden und arbeiten gut mit log4j.properties
), bitte lassen Sie mich wissen,
Bitte helfen.
Suhaas
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich bin mir nicht ganz klar, auf deine Frage. Ich habe eingesetzt
log4j
auf tomcat 6 ohne Probleme (kannst du die spezifischen Probleme, die Sie haben mit Ihrem xml-config?). Ich bin mir nicht sicher, was du meinst mit "ich habe herausgefunden, wie manlog4j.properies
arbeiten mit Tomcat 6 mit zusätzlichen jar-Dateien, verwenden Sie die JULI-logging-Mechanismus in Tomcat 6").aus der globalen tomcat
(
$TOMCAT_HOME/lib
) Verzeichnis? Wenn dem so istdie Bibliothek könnte auf der Suche für die
config aus dem globalen Verzeichnis,
anstatt von der webapp.
Wenn Sie nur reden, wie die Verwaltung von getrennten Klassen-Hierarchien in Ihre
log4j
config, es ist so etwas wie :Erscheint ES mir, dass es war kein problem mit Erstellung von Protokollen, auch mit log4j.xml
Ich habe http://tomcat.apache.org/tomcat-6.0-doc/logging.html zu erstellen, logging-Mechanismus, wie vorgeschlagen.
Interessanterweise wurden die Protokolle erstellt werden, in das bin-Verzeichnis von Tomcat 6 !!! Es ist etwas zu tun mit der aktuellen Arbeits-Verzeichnis und in meinem Fall scheint es das bin-Verzeichnis als pro einige Catalina-Einstellung
Paar einfache Schritte, die unten beschrieben wird, helfen Sie set-up web-Anwendung log4j initialisiert werden:
1) Kopie
log4j.xml
zu Ihrem(TOMCAT_HOME)/CATALINA_HOME/conf
- Verzeichnis. Dielog4j.xml
meine Anwendung sieht wie folgt aus:2) stoppen Sie den tomcat -
3) In
(TOMCAT_HOME)/CATALINA_HOME/conf
Verzeichnis, haben Sie dietomcat6.conf
- Datei. Bearbeiten Sie die Datei wie unten beschrieben. Wenn es keineCATALINA_OPTS
imtomcat6.conf
erstellen.4) Starten Sie den tomcat Applikations-spezifische
startup.sh
Skript.5) Thats it, Sie sind alle fertig. Überprüfen Sie das Protokoll, um zu sehen, ob der tomcat ist das Lesen der
log4j.xml
von Ihnen genanntetomcat6.conf
.tail -f /var/tmp/tomcat-20120622.log
Sind wir mit tomcat6 mit
log4j
. Wir folgten der folgende Anleitung zu installierenlog4j
im tomcat - es ist komplizierter als bei den alten Versionen (4.1-5.5).Ich glaube, Sie sollten Ihre
log4j.xml
unter derWEB-INF/classes
Verzeichnis, das sich im Krieg.Ein zusätzlicher Ansatz ist die Verwendung von spring framework für diese - siehe Log4jConfigListener API
Laut http://boncey.org/2006_7_25_log4j_with_xml_configuration
export CATALINA_OPTS="-Dlog4j.configuration=log4j.xml"
(Ich nehme an, zu zwingen, es zu suchen.xml
eher als.properties
)log4j.xml
Datei inWEB-INF/classes
Ich hatte ein ähnliches problem und dieses arbeitete für mich.