How to prevent tomcat from overriding logfiles on application restart
posted 5 years ago
tomcat stdout and stderr logs are overwritten on application start, which destroys any data they might contain as to the cause of the issue that required a restart. Can we either make these rolling, or at least back up the previous one on app restart automatically, to allow for easier investigation of the root cause of issues?
Actually, on my Linux servers, I don't think the logs are overwritten, just appended to.
The console logfile behaviours vary, however depending not only on the OS used, but how you start up Tomcat. What really determines what's going to happen is how the Tomcat startup is managed, however. I have seen several Tomcat implementations where the master startup process moved the old logfiles to alternate locations in order to preserver them, and often also did rotation where the older logfiles would eventually be deleted.
That kind of work is usually done by a separate startup script that calls the Tomcat startup script, but occasionally people will modify the Tomcat startup script itself.
An IDE is no substitute for an Intelligent Developer.