关于tomcat日志 catalina.out 和 console 之间的关系

参考 https://blog.csdn.net/qq_21683643/article/details/80964003

记录下: 

1. catalina.out

catalina.log 是tomcat的标准输出(stdout)和标准出错(stderr)

cataliana.{yyyy-MM-dd}.log和localhost.{yyyy-MM-dd}.log 

是通过logging.properties配置的tomcat自己运行的一些日志,

catalina.log 是tomcat自己运行的一些日志

localhost.{yyyy-MM-dd}.log主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志

 2. 

catalina.out

catalina.out其实是tomcat的标准输出(stdout)和标准出错(stderr),这是在tomcat的启动脚本里指定的,如果没有修改的话stdout和stderr会重定向到这里。所以我们在应用里使用System.out打印的东西都会到这里来。另外,如果我们在应用里使用其他的日志框架,配置了向Console输出的,则也会在这里出现。比如以logback为例,如果配置ch.qos.logback.core.ConsoleAppender则会输出到catalina.out里。

cataliana.{yyyy-MM-dd}.log和localhost.{yyyy-MM-dd}.log

这两个日志都是通过logging.properties配置的(默认情况下,启动脚本里指定了java.util.logging.config.file和java.util.logging.manager两个变量)。

3.那么总结起来,catalina.out即标准输出和标准出错,所有输出到这两个位置的都会进入catalina.out,这里包含tomcat运行自己输出的日志以及应用里向console输出的日志。catalina.{yyyy-MM-dd}.log是tomcat自己运行的一些日志,这些日志还会输出到catalina.out,但是应用向console输出的日志不会输出到catalina.{yyyy-MM-dd}.log。localhost.{yyyy-MM-dd}.log主要是应用初始化(listener, filter, servlet)未处理的异常最后被tomcat捕获而输出的日志,而这些未处理异常最终会导致应用无法启动。

原文地址:https://www.cnblogs.com/zhangchenglzhao/p/11059585.html