Comment puis-je me connecter à partir de l'intérieur de mon application web dans Tomcat 6
Comment puis-je me connecter à partir de l'intérieur de mon application web déployée sur Tomcat 6? Où dois-je attendre la sortie d'enregistrement (interne tomcat fichiers de log, ou sera un autre fichier de log être généré)? Je vois une tonne de documentation mais j'ai du mal à trouver une réponse directe aux questions ci-dessus. Où dois-je attendre l'enregistrement de montrer (actuellement, il est log4j n'est pas de générer un fichier journal et il ne s'affiche pas dans ma console). Je suis en train de suivre http://www.laliluna.de/articles/log4j-tutorial.html .
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### file appender
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.maxFileSize=100KB
log4j.appender.file.maxBackupIndex=5
log4j.appender.file.File=test.log
log4j.appender.file.threshold=info
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
log4j.rootLogger=debug, stdout
Dans mon application, j'définir un objet de log:
private static org.apache.log4j.Logger log = Logger.getLogger(MyClass.class);
log.error("LOGGING!");
Merci pour l'aide.
OriginalL'auteur Carlos | 2010-04-07
Vous devez vous connecter pour publier un commentaire.
2 choses à essayer:
1: test de Changement.log /tmp/test.journal de sorte que vous savez exactement où le fichier est supossed.
2: Mettez votre log4j.propriétés du fichier de configuration de apache-tomcat 6.0.x/lib, en collaboration avec le log4j-1.2.15.jar fichier. Et n'ont pas de log4j fichiers dans votre webapps/*/WEB-INF/lib
Que la façon dont je l'ai fait, et sa fonctionne pour moi. Voici un utile extrait de mon log4j.propriétés (n'oubliez pas de faire un mk /tmp/logs si vous utilisez cette config)
OriginalL'auteur Martin Tilsted
IIRC Tomcat v4/v5 envoie la sortie standard vers le catalina.fichier, de sorte que toute log4j de sortie à l'aide d'une console appender serait aller à ce fichier. Pas sûr si c'est toujours le cas avec les nouvelles versions de Tomcat.
OriginalL'auteur luis.espinal
Votre configuration log4j, il sera ramassé par log4j, si vous le mettez dans le classpath de votre application web, par exemple dans WEB-INF/classes/. Assurez-vous que votre log4j.jar est dans WEB-INF/lib.
La sortie de la ConsoleAppender que vous avez défini, qui se connecte sur la sortie standard stdout, ira à ${CATALINA_BASE}/logs/catalina.hors, comme tout Tomcat stdout.
À la RollingFileAppender, vous devez définir le chemin d'accès correct. Si vous voulez que votre application web logs apparaissent dans de Tomcat répertoire de journaux, de modifier le fichier pour cette appender:
OriginalL'auteur Futzilogik
BTW, utiliser le système de propriété -Dlog4j.système de débogage de la propriété. Que devrait vous dire où diable log4j est l'envoi de sa sortie.
Aussi, si votre installation tomcat est dans un *nix système, ou si vous êtes en cours d'exécution sur Windows avec cygwin installé, vous pouvez utiliser le trouver de commande pour détecter ce que les fichiers modifiés à droite après l'envoi d'une requête HTTP de Tomcat (que vous connaissez doit produire une sortie d'enregistrement)
Qui devrait vous montrer les 10 derniers fichiers qui ont été mis à jour ou modifié. Il ne fonctionnera pas si il y a des fichiers dans votre application avec des espaces dans leur nom de fichier.
OriginalL'auteur luis.espinal
J'ai essayé la manière suivante et assurez-vous qu'il fonctionne bien:
puis mettre à jour votre catalina.sh sous tomcat, ajouter ci-dessous ligne similaire:
JAVA_OPTS="-Dlog4j.configuration=fichier:${yourownlog4jpath}"
OriginalL'auteur user3391471