Où sont mes journaux Tomcat?

26

J'ai installé Tomcat6 sur un serveur Ubuntu 9.04 en utilisant apt-get install tomcat6. J'ai téléchargé un WAR en utilisant l'interface du gestionnaire et j'ai essayé de démarrer l'application, mais j'ai obtenu une erreur assez générique sur l'interface Web disant qu'elle ne pouvait pas être démarrée.

J'essaie de trouver les journaux pour déterminer pourquoi ma guerre ne démarre pas (je soupçonne une faible mémoire car je suis sur un petit VPS) mais je ne sais pas où ils se trouvent.

/ var / lib / tomcat6 / logs est vide. Ma page d'accueil Tomcat m'informe de manière fiable des éléments suivants;

Tomcat is installed with CATALINA_HOME in /usr/share/tomcat6 
CATALINA_BASE in /var/lib/tomcat6, 
following the rules from /usr/share/doc/tomcat6-common/RUNNING.txt.gz.

MISE À JOUR

J'ai essayé de courir;

$ ps -ax 
/usr/bin/jsvc -user tomcat6 -cp /usr/share/java/commons-daemon.jar:/usr/share/tomcat6/bin/bootstrap.jar -outfile SYSLOG -errfile SYSLOG -pidfile /var/run/tomcat6.pid

Mais il n'y a rien dans / var / log / syslog

Courir aussi

$ losof -p PID

n'a montré aucun fichier journal ...

$  for PID in $(pgrep jsvc);do sudo ls -l /proc/$PID/fd|grep ' 1 -> ';done
l-wx------ 1 root 500 64 2010-03-30 13:29 1 -> pipe:[301470406]
lrwx------ 1 root 500 64 2010-03-30 13:29 1 -> /dev/null
l-wx------ 1 root root 64 2010-03-30 13:29 1 -> pipe:[301470406]

Merci,

Gav

gav
la source

Réponses:

5

Très tard dans cette discussion, mais il semble que le fichier 03catalina.policy dans tomcat5.5 et tomcat6 ne permet pas réellement d'écrire dans les fichiers journaux.

La solution la plus simple consiste à modifier les autorisations JULI en:

// These permissions apply to JULI
grant codeBase "file:${catalina.home}/bin/tomcat-juli.jar" {
    permission java.security.AllPermission;
};

Évidemment, il y a peut- être des problèmes de sécurité que je ne connais pas, mais je ne peux vraiment pas être dérangé pour creuser plus profondément - j'ai moi-même consacré trop de temps à cela.

Auspex
la source
Merci pour la mise à jour, je n'ai jamais réussi à le faire fonctionner moi-même et maintenant que VPS est mort. Il est logique pour moi que les journaux ne soient pas écrits car je n'ai jamais vu une poignée ouverte lors du démarrage du serveur.
gav
34

Une astuce consiste à exécuter la commande " lsof -p PID" où PID est l'ID de processus de votre serveur tomcat. Cette commande vous donnera une liste de tous les fichiers ouverts par le processus, y compris le fichier journal. Voir la page Wikipedia .

dogbane
la source
C'est une astuce géniale! Malheureusement, aucun de mes processus n'a de fichier journal ... je ne sais pas ce que cela signifie.
gav
2
Cela peut signifier que le processus n'a pas pu ouvrir le fichier journal. Vous devriez avoir des erreurs enregistrées sur la console / STDOUT. Si vous utilisez Linux, vous pouvez essayerfor PID in $(pgrep java);do sudo ls -l /proc/$PID/fd|grep ' 1 -> ';done
Mircea Vutcovici
L'utilisation d'apt-get pour installer Tomcat signifie qu'il est configuré pour s'exécuter en tant que démon à l'aide de jsvc. Il suffit de modifier votre commande en (java -> jsvc). L'extrait a renvoyé la sortie au bas de ma question (la mise en forme des commentaires est illisible).
gav
19

Par vérification par défaut

/var/log/tomcat6/catalina.out 

ou quelque chose comme ça

et vérifiez les propriétés de journalisation dans

/usr/share/tomcat6/conf/logging.properties

généralement / usr / share / tomcat6 / conf / est un lien symbolique vers / etc / tomcat6 /

Lanselot
la source
/var/log/tomcat6/catalina.out n'existe pas et le dossier / usr / share / tomcat6 / conf non plus. /etc/tomcat6/logging.properties suggère que $ {catalina.base} / logs est le répertoire que je recherche mais comme je l'ai dit, rien n'y est écrit. Ho hum :(
gav
4

Ils devraient être à CATALINA_HOME/logs

Je l'ai vu le plus souvent /opt/tomcat/logs, mais dans votre cas, cela pourrait être/usr/share/logs

Bozho
la source
1

Par défaut, les journaux Tomcat sont entrés /var/log/tomcat?et /var/lib/tomcat7/logspointent généralement vers celui-ci.

En tant que root, vous pouvez les vérifier en:

tail -f /var/log/tomcat7/*.log /var/log/tomcat7/*.txt /var/log/tomcat7/*.out

Si vous avez encore des problèmes, essayez de les trouver via:

sudo lsof | grep -E "java.*(out|txt|log)$"
kenorb
la source
-1

nous pouvons trouver des journaux comme ci-dessous pour Windows. C: \ Program Files \ Apache Software Foundation \ Tomcat 9.0 \ logs

reportez-vous également à C: \ Program Files \ Apache Software Foundation \ Tomcat 9.0 \ conf \ logging-properties.

Sudheer N
la source
2
La question telle que publiée fait référence à une installation Linux (spécifiquement Ubuntu). La réponse que vous avez donnée concerne une installation basée sur Windows. En outre, cette question a déjà une réponse acceptée.
Corey S.20