Where go my logging files of my webapp on a linux Tomcat 7 installation?
Solution 1
The log file is inside the starting directory of Tomcat. You can get this directory with this command:
grep -az "\bPWD" /proc/TOMCAT_PID/environ
Solution 2
Have you checked the permissions inside your tomcat7 directory? I.e. who owns /var/lib/tomcat7 ? Sometimes an installation will make this directory owned by root, not allowing the Tomcat7 user to create a 'log' directory in there in the first place.
To fix it, simply
sudo chown tomcat7:tomcat7 /var/lib/tomcat7
Hope it helps, Sekm
It's Leto
Updated on June 04, 2022Comments
-
It's Leto almost 2 years
I currently develop a simple web app using Eclipse and a local Tomcat 7 server. I configured Eclipse so I can start the Tomcat 7 right out of my IDE - not much magic here.
In my web app, I use SLF4J with Logback, which looks like this in a service class:
public class MyServiceImpl implements MyService { private static Logger logger = LoggerFactory.getLogger( MyServiceImpl.class ); public void doSomeStuff() { logger.info( "Doing some stuff" ); } }
My logging is configured this way:
<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="fileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>log/MyTestWebApp.%d.log.zip</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <logger name="com.test" level="WARN" /> <root level="WARN"> <appender-ref ref="fileAppender" /> </root> </configuration>
When I start my web app and so the local Tomcat 7 server, the logging output goes to
./log/MyTestWebApp.log
as expected, where the current directory is that where my web app is (for example, where my Maven pom.xml is).
When I start my web app on a remote linux machine, I can't find any "MyTestWebApp.log" file, not in directoy of my web app, nor in the Tomcat7-root directory.
So my simple question is, where do those logs go and where is my "MyTestWebApp.log" file respectively?
Thanks a lot for your help!
-
It's Leto over 12 yearsThanks for your answer. I found my logfile in my "Tomcat/bin/log/*" directory. Well, I don't think this is a correct path for log files :) Is there a common approach how to configure the system, so logfiles are going into the right place (what ever this is)?
-
palacsint over 12 yearsAs I see there are two ways: set absolute paths in your logback.xml or make sure that Tomcat is always started from the proper directory. I usually use absolute paths and generate production wars with a maven profile which do resource filtering on the logback.xml and put the absolute paths in it.