Tomcat日志、项目中的log4j日志、控制台——我的日志最后到底跑哪去了?
2017-01-17 17:39
183 查看
1、Tomcat自带日志功能,即时你的项目中有log4j也不会影响到Tomcat自己记录日志。
2、你的项目中的log4j中的日志指定打印到什么地方(控制台或者文件),便会打印到什么地方,和Tomat日志无关。
——如果你项目中的log4j指定打印到控制台,并且你开启的tomcat有控制台,那么这个时候你可以在控制台观察到日志。
——如果你用log4j来处理了Tomcat的日志(具体需要你自己配置tomcat的配置文件),那么Tomcat便会使用log4j来打印,但是这和你项目中的log4j仍然不是同一个log4j。
3、关于异常日志的打印
如果你在你的项目中处理了某个异常:
A、那么这个异常信息会打印到你的控制台。你说你没有开控制台,是用服务的形式跑的?那么这个异常的信息你就看不见了。
B、你在你的项目中直接throw的,并且没有任何地方处理这个异常,那么最后这个异常会被抛给你的容器——Tomcat,Tomcat这时会在localhost.日期.log文件中记录这个异常。
C、你使用的是log4j:
那么你应该去看看你的log4j配置文件中,看看里面写的要把这条错误信息打印在哪。
——如果是打印到控制台,那么就去控制台找。如果没有控制台,那么这个错误信息也就丢了。
——如果是写入某个文件,那当然就是在你的文件中了。
4、控制台
Tomcat默认也会往控制台输出日志,这部分日志和其catalina.日期.log文件中记录的是一致的。
程序中的syso、e.printStackTrace(),以及log4j如果配置的往控制台输出日志,那么他们全部都会出现在控制台上,
别看你eclipse里的控制台上有那么多日志,你要搞清楚他们不是同一个日志记录器写的。
2、你的项目中的log4j中的日志指定打印到什么地方(控制台或者文件),便会打印到什么地方,和Tomat日志无关。
——如果你项目中的log4j指定打印到控制台,并且你开启的tomcat有控制台,那么这个时候你可以在控制台观察到日志。
——如果你用log4j来处理了Tomcat的日志(具体需要你自己配置tomcat的配置文件),那么Tomcat便会使用log4j来打印,但是这和你项目中的log4j仍然不是同一个log4j。
3、关于异常日志的打印
如果你在你的项目中处理了某个异常:
try { int i = 1/0; }catch(Exception e) { e.printStackTrace(); }
A、那么这个异常信息会打印到你的控制台。你说你没有开控制台,是用服务的形式跑的?那么这个异常的信息你就看不见了。
B、你在你的项目中直接throw的,并且没有任何地方处理这个异常,那么最后这个异常会被抛给你的容器——Tomcat,Tomcat这时会在localhost.日期.log文件中记录这个异常。
C、你使用的是log4j:
LogFactory.getLog(Logger.class).error("Thread:"+i+"-print:"+j+"-CurrentThread:"+Thread.currentThread());
那么你应该去看看你的log4j配置文件中,看看里面写的要把这条错误信息打印在哪。
——如果是打印到控制台,那么就去控制台找。如果没有控制台,那么这个错误信息也就丢了。
——如果是写入某个文件,那当然就是在你的文件中了。
4、控制台
Tomcat默认也会往控制台输出日志,这部分日志和其catalina.日期.log文件中记录的是一致的。
程序中的syso、e.printStackTrace(),以及log4j如果配置的往控制台输出日志,那么他们全部都会出现在控制台上,
别看你eclipse里的控制台上有那么多日志,你要搞清楚他们不是同一个日志记录器写的。
相关文章推荐
- Tomcat日志、项目中的log4j日志、控制台——我的日志最后到底跑哪去了?
- Tomcat日志、项目中的log4j日志、e.printStackTrace()——我的日志最后到底跑哪去了?
- 解决tomcat下面部署多个项目log4j的日志输出会集中输出到一个项目中的问题
- tomcat配置log4j输出日志从控制台改到指定文件
- linux部署项目tomcat不生成log4j日志问题
- JAVA项目中,配置LOG4j,将日志按照不同级别输出到控制台和文件中
- web项目Log4j日志输出路径配置问题 问题描述:一个web项目想在一个tomcat下运行多个实例(通过修改war包名称的实现),然后每个实例都将日志输出到tomcat的logs目录下实例名命名的文
- log4j无日志生成? 我将一个web项目部署在tomcat server.xml配置文件中,当我启动tomcat是无日志输出。
- linux部署项目tomcat不生成log4j日志问题
- 如何将tomcat控制台输出的内容直播用日志文件保存起来(Log4j)
- Tomcat配置log4j,输出控制台信息到日志.
- log4j 控制台不输出,jar包也有,就是启动项目,应该输出在控制台的日志信息根本就没输出出来!
- log4j 日志服务器_项目实际使用日记
- tomcat window系统下获取控制台日志输出
- [java]如何在项目中用好log4J写项目日志
- 关闭重定向Tomcat的控制台日志
- tomcat log4j 日志输出设置
- Tomcat 使用Log4j日志。
- Linux下Tomcat控制台输出及日志中文乱码问题的解决
- 在WEB项目中使用log4j日志管理