Tomcat日志输出到了Localhost,但是在Catalina中没有

项目是在Tomcat下运行的,项目启动的时候可以在Catalina中看到启动日志,在程序中的错误日志,没有输出到Catalina.out文件中,但是输出到了localhost.2021.11.05.log日志文件中。

  • Java项目部署在Tomcat下
  • 启动可以在Catalina.out中看到启动日志
  • 异常信息没有在Catalina.out中输出
  • 但是异常信息在localhost.xxxx.xx.xx.log中输出了

配置的log4j.properties如下

log4j.rootLogger=INFO,console,logfile

log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.appender.console.layout=org.apache.log4j.PatternLayout

log4j.appender.console.layout.ConversionPattern=[%p] %c#%M %x: %m%n

log4j.appender.logfile=org.apache.log4j.RollingFileAppender

log4j.appender.logfile.Encoding=UTF-8

log4j.appender.logfile.File=logs/123.log

log4j.appender.logfile.MaxFileSize=10MB

log4j.appender.logfile.layout=org.apache.log4j.PatternLayout

log4j.appender.logfile.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %F %p %m%n

log4j.logger.com.ibatis=DEBUG

log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG

log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG

log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG

log4j.logger.java.sql.Connection=DEBUG

log4j.logger.java.sql.Statement=DEBUG

log4j.logger.java.sql.PreparedStatement=DEBUG

补充:
当我把日志级别调成DEBUG之后,异常信息才能输出到Catalina.out中,这不应该啊。

修改后的配置文件:

log4j.rootLogger=DEBUG,console

log4j.appender.console=org.apache.log4j.ConsoleAppender

log4j.appender.console.layout=org.apache.log4j.PatternLayout

log4j.appender.console.layout.ConversionPattern=[%p] %c#%M %x: %m%n

log4j.logger.com.ibatis=DEBUG

log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=DEBUG

log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG

log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG

log4j.logger.java.sql.Connection=DEBUG

log4j.logger.java.sql.Statement=DEBUG

log4j.logger.java.sql.PreparedStatement=DEBUG

异常信息如下:


回答:

localhost 部分是tomcat自己的日志,或者是servlet后端程序没处理的异常,tomcat处理时打的,才会出现在localhost.log里

而catalina.out 是std out,也就是 Console Log

盲猜一下:你应该是debug输出了这个异常日志,同时抛了异常被spring处理了,所以打在localhost里了,但由于你全局level 是info,所以没输出到 std out。

在全局level改成debug之后,这个异常日志就可以通过你的std out输出了,但localhost.out应该也有一份

以上是 Tomcat日志输出到了Localhost,但是在Catalina中没有 的全部内容, 来源链接: utcz.com/p/944173.html

回到顶部