在 tomcat 中,logging.properties 文件是用于配置 java 日志框架(java.util.logging)的。若要实现 catalina.out 日志保存 7 天,且每天的日志文件名带有时间戳,可以按以下步骤进行配置:
1. 备份原配置
在修改 logging.properties 文件之前,先对其进行备份,以防止配置错误导致问题。该文件通常位于 $catalina_base/conf 目录下。
2. 修改 logging.properties 配置
下面是具体的配置示例,可实现日志按天滚动并保留 7 天的功能:
properties
# 配置根日志记录器,指定日志级别和使用的处理器
handlers = 1catalina.org.apache.juli.asyncfilehandler, 2localhost.org.apache.juli.asyncfilehandler, 3manager.org.apache.juli.asyncfilehandler, 4host-manager.org.apache.juli.asyncfilehandler
# 配置控制台日志处理器,可根据需要调整
.handlers = java.util.logging.consolehandler
# 配置 catalina 日志处理器
1catalina.org.apache.juli.asyncfilehandler.level = fine
1catalina.org.apache.juli.asyncfilehandler.directory = ${catalina.base}/logs
# 文件名添加日期格式
1catalina.org.apache.juli.asyncfilehandler.prefix = catalina.
1catalina.org.apache.juli.asyncfilehandler.suffix =.log
1catalina.org.apache.juli.asyncfilehandler.maxdays = 7
# 开启按天滚动
1catalina.org.apache.juli.asyncfilehandler.rotatable = true
1catalina.org.apache.juli.asyncfilehandler.formatter = java.util.logging.simpleformatter
# 其他日志处理器配置保持不变,如 localhost、manager、host-manager
2localhost.org.apache.juli.asyncfilehandler.level = fine
2localhost.org.apache.juli.asyncfilehandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.asyncfilehandler.prefix = localhost.
2localhost.org.apache.juli.asyncfilehandler.suffix =.log
2localhost.org.apache.juli.asyncfilehandler.maxdays = 7
2localhost.org.apache.juli.asyncfilehandler.rotatable = true
2localhost.org.apache.juli.asyncfilehandler.formatter = java.util.logging.simpleformatter
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.maxdays = 7
3manager.org.apache.juli.asyncfilehandler.rotatable = true
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.maxdays = 7
4host-manager.org.apache.juli.asyncfilehandler.rotatable = true
4host-manager.org.apache.juli.asyncfilehandler.formatter = java.util.logging.simpleformatter
# 配置日志记录器的日志级别
org.apache.catalina.core.containerbase.[catalina].[localhost].level = info
org.apache.catalina.core.containerbase.[catalina].[localhost].handlers = 2localhost.org.apache.juli.asyncfilehandler
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.asyncfilehandler3. 配置说明
1catalina.org.apache.juli.asyncfilehandler:这是用于处理catalina日志的异步文件处理器。level:指定日志级别为fine,可根据需求调整。directory:指定日志文件的存储目录,这里使用$catalina_base/logs。prefix和suffix:prefix为日志文件名前缀,suffix为后缀,结合起来日志文件名会是catalina.日期.log的形式,日期由 tomcat 自动添加。maxdays:设置日志文件的保留天数为 7 天,超过 7 天的日志文件会被自动删除。rotatable:设置为true表示开启按天滚动日志的功能。formatter:指定日志的格式化器为java.util.logging.simpleformatter。
4. 重启 tomcat
修改完 logging.properties 文件后,需要重启 tomcat 使配置生效。重启后,tomcat 会按照配置每天生成一个新的日志文件,文件名带有日期,并且会自动删除 7 天前的日志文件。
通过以上步骤,就可以实现 catalina.out 日志按天滚动并保留 7 天的功能。
到此这篇关于tomcat如何配置保存7天滚动日志的文章就介绍到这了,更多相关tomcat保存7天滚动日志内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论