Tomcat 服务器日志文件名中有日期 - rotatable=false 不起作用
Tomcat server logs have date in filename - rotatable=false does not work
我在同一台 Redhat 5 机器上有两个 tomcat 6 安装 运行 - 一个是 "mine",另一个属于我组织中的另一个组。我的目前是6.0.35,另一个是6.0.32。我在为 tomcat 日志生成文件名时遇到了问题,这些文件名以日期结尾,这破坏了我们的日志轮换,所以我在这里搜索了一下,发现设置
1catalina.org.apache.juli.FileHandler.rotatable
根据此处的文档,属性 错误地删除了日期:
https://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/juli/FileHandler.html
欢呼;问题解决了。所以我检查了另一个安装是否有同样的问题;是的,他们让我帮他们修好。由于他们的 logging.properties 设置与我们的完全相同(全部基于 ${catalina.base}),我只是复制了新的、固定的 logging.properties 文件,该文件在我们的安装中有效,并修复了权限。但是由于某些原因,这里不起作用。
我可以从 运行 进程的命令行参数确认两者都使用相同的 logging.manager (org.apache.juli.ClassLoaderLogManager) 并且第二个安装使用正确的 logging.properties 配置文件。我什至可以更改该文件中的其他属性(例如前缀、后缀)并重新启动服务器以查看它们在使用的文件名中生效。但无论出于何种原因,第二个安装似乎忽略了 rotatable=false 属性,并拒绝生成名称中没有日期的日志文件。这是我正在使用的 logging.properties 文件:
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina
1catalina.org.apache.juli.FileHandler.suffix = .log
1catalina.org.apache.juli.FileHandler.rotatable = false
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost
2localhost.org.apache.juli.FileHandler.suffix = .log
2localhost.org.apache.juli.FileHandler.rotatable = false
3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager
3manager.org.apache.juli.FileHandler.suffix = .log
3manager.org.apache.juli.FileHandler.rotatable = false
4host-manager.org.apache.juli.FileHandler.level = FINE
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager
4host-manager.org.apache.juli.FileHandler.suffix = .log
4host-manager.org.apache.juli.FileHandler.rotatable = false
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
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.FileHandler
如果有人有任何建议 - 也许其他位置可以覆盖 logging.properties 文件? - 我一定会很感激。
谢谢,
- rob.
检查 tomcat-juli.jar 版本。
我在同一台 Redhat 5 机器上有两个 tomcat 6 安装 运行 - 一个是 "mine",另一个属于我组织中的另一个组。我的目前是6.0.35,另一个是6.0.32。我在为 tomcat 日志生成文件名时遇到了问题,这些文件名以日期结尾,这破坏了我们的日志轮换,所以我在这里搜索了一下,发现设置
1catalina.org.apache.juli.FileHandler.rotatable
根据此处的文档,属性 错误地删除了日期:
https://tomcat.apache.org/tomcat-6.0-doc/api/org/apache/juli/FileHandler.html
欢呼;问题解决了。所以我检查了另一个安装是否有同样的问题;是的,他们让我帮他们修好。由于他们的 logging.properties 设置与我们的完全相同(全部基于 ${catalina.base}),我只是复制了新的、固定的 logging.properties 文件,该文件在我们的安装中有效,并修复了权限。但是由于某些原因,这里不起作用。
我可以从 运行 进程的命令行参数确认两者都使用相同的 logging.manager (org.apache.juli.ClassLoaderLogManager) 并且第二个安装使用正确的 logging.properties 配置文件。我什至可以更改该文件中的其他属性(例如前缀、后缀)并重新启动服务器以查看它们在使用的文件名中生效。但无论出于何种原因,第二个安装似乎忽略了 rotatable=false 属性,并拒绝生成名称中没有日期的日志文件。这是我正在使用的 logging.properties 文件:
handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.FileHandler.level = FINE
1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina
1catalina.org.apache.juli.FileHandler.suffix = .log
1catalina.org.apache.juli.FileHandler.rotatable = false
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost
2localhost.org.apache.juli.FileHandler.suffix = .log
2localhost.org.apache.juli.FileHandler.rotatable = false
3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.FileHandler.prefix = manager
3manager.org.apache.juli.FileHandler.suffix = .log
3manager.org.apache.juli.FileHandler.rotatable = false
4host-manager.org.apache.juli.FileHandler.level = FINE
4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.FileHandler.prefix = host-manager
4host-manager.org.apache.juli.FileHandler.suffix = .log
4host-manager.org.apache.juli.FileHandler.rotatable = false
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
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.FileHandler
如果有人有任何建议 - 也许其他位置可以覆盖 logging.properties 文件? - 我一定会很感激。
谢谢,
- rob.
检查 tomcat-juli.jar 版本。