Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I installed Tomcat6 on a Ubuntu 9.04 server using apt-get install tomcat6. I uploaded a WAR using the manager interface and tried to start the application but get a pretty generic error on the Web interface saying it couldn't be started.

I am trying to find the logs to determine why my war won't start (I suspect low memory as i'm on a small VPS) but I don't know where they are.

/var/lib/tomcat6/logs is empty. My Tomcat splash page reliably informs me of the following;

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.

UPDATE

I tried running;

$ 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

But there is nothing in /var/log/syslog

Also runing

$ losof -p PID

didn't show any log files...

$  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]

Thanks,

Gav

share|improve this question
add comment

4 Answers

up vote 3 down vote accepted

Very late to this discussion, but it appears that the 03catalina.policy file in both tomcat5.5 & tomcat6 doesn't actually permit writing to logfiles.

The simplest solution is to change the JULI permissions to:

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

Obviously, there may be security issues I'm not aware of, but I really can't be bothered to dig deeper - I've spent too long on this myself.

share|improve this answer
    
Thanks for the update, I never did get this working myself and now that VPS is dead. It makes sense to me that the logs weren't being written as I never saw a handle open when firing up the server. –  gav Jul 26 '12 at 17:59
add comment

They should be at CATALINA_HOME/logs

I've seen it most often at /opt/tomcat/logs, but in your case it might be /usr/share/logs

share|improve this answer
add comment

A neat trick is to run the command "lsof -p PID" where PID is the process id of your tomcat server. This command will give you a list of all files opened by the process, including the log file.

share|improve this answer
    
That's an awesome tip! Unfortunately none of my processes have hold of a log file... not sure what that means. –  gav Mar 30 '10 at 13:31
    
It could mean that the process could not open the log file. You should have some errors logged on console/STDOUT. If you are using Linux you can try for PID in $(pgrep java);do sudo ls -l /proc/$PID/fd|grep ' 1 -> ';done –  Mircea Vutcovici Mar 30 '10 at 13:38
    
Using apt-get to install Tomcat means that it's configured to run as a daemon using jsvc. Just required a change in your command to (java -> jsvc). The snippet returned the output at the bottom of my question (Comment formatting is unreadable). –  gav Mar 30 '10 at 13:47
add comment

By default check

/var/log/tomcat6/catalina.out 

or something like that

and check logging properties in

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

usually /usr/share/tomcat6/conf/ is symbolic link to /etc/tomcat6/

share|improve this answer
    
/var/log/tomcat6/catalina.out doesn't exist and neither does the folder /usr/share/tomcat6/conf. /etc/tomcat6/logging.properties suggests that ${catalina.base}/logs is the directory i'm looking for but as I said, nothing is written there. Ho hum :( –  gav Mar 30 '10 at 13:34
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.