Tomcat9中如何禁用host-manager.log及manager.log日志文件生成?
彻底阻止Tomcat9生成manager和host-manager日志文件的方法
我之前也踩过这个坑!你设置level = OFF只能阻止日志内容写入,但Tomcat在初始化日志Handler的时候还是会创建空文件。要彻底杜绝这些文件生成,得从日志配置的源头动手,直接移除对应的Handler配置:
- 打开Tomcat的日志配置文件:
/etc/tomcat9/conf/logging.properties - 找到并注释掉或删除以下两段Handler定义(包括所有相关行):
# 3manager.org.apache.juli.AsyncFileHandler.level = FINE # 3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs # 3manager.org.apache.juli.AsyncFileHandler.prefix = manager. # 3manager.org.apache.juli.AsyncFileHandler.suffix = .log # 3manager.org.apache.juli.AsyncFileHandler.formatter = java.util.logging.SimpleFormatter # 4host-manager.org.apache.juli.AsyncFileHandler.level = FINE # 4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs # 4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. # 4host-manager.org.apache.juli.AsyncFileHandler.suffix = .log # 4host-manager.org.apache.juli.AsyncFileHandler.formatter = java.util.logging.SimpleFormatter - 继续找到并注释掉或删除这两个Web应用对应的日志关联配置:
# org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO # org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler # org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO # org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler - 保存配置文件后,重启Tomcat服务使更改生效:
sudo systemctl restart tomcat9
这样操作后,Tomcat就不会再初始化这两个Web应用的日志处理器,自然也就不会生成任何相关的日志文件了。如果之后需要恢复日志记录,只需把注释掉的配置还原即可。
内容的提问来源于stack exchange,提问作者membersound
相关产品推荐
相关产品推荐

