背景描述:
线上一台服务器突然无法服务,去服务器上一看,tomcat见面上疯狂打印错误日志(windows服务器)。同事一开始认为是日志打印太频繁占用了系统资源,希望通过关闭日志输出来解决问题。(但是后来发现问题并不是打印日志引发)看到组内的代码关于日志的处理这么浮夸,而我自己也在日志的处理问题上吃了不少亏。决定深入的研究一下日志问题。
关于日志处理,我有以下几个问题需要弄清楚:
我们的项目最常用log4j记录日志,以前都是抄别人的配置,现在我下定决心要弄清楚所有的配置。
有以下几点比较重要的配置方式:
简单易用,便于查询。注意设置大小,监控磁盘空间是否够用。
统一采集日志。(我没用过,我担心占用过多系统资源)
根据业务,将日志记录到不同的路径。
打开tomcat下的startup.sh
和startup.bat
。里面都是在调用catalina.sh
或catalina.bat
。
打开catalina.bat
,看到日志的相关配置:
rem LOGGING_CONFIG (Optional) Override Tomcat‘s logging config file
rem Example (all one line)
rem set LOGGING_CONFIG="-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties"
rem
rem LOGGING_MANAGER (Optional) Override Tomcat‘s logging manager
rem Example (all one line)
rem set LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
rem
rem TITLE (Optional) Specify the title of Tomcat window. The default
rem TITLE is Tomcat if it‘s not specified.
rem Example (all one line)
rem set TITLE=Tomcat.Cluster#1.Server#1 [%DATE% %TIME%]
rem ---------------------------------------------------------------------------
我们就知道了tomcat使用的日志类和配置文件的路径。
然后随便搜搜你就知道该如何配置了。
我觉得tomcat的日志就该全关了。
如果服务是部署在linux上,还可以修改catalina.sh
,将日志路径指向null。
原文:https://www.cnblogs.com/cxy2016/p/13379948.html