jin*_*one 8 logging tomcat maven-2
我正在运行mvn tomcat:run-war目标,并获得一个具有logs目录的目录结构.但是,唉,没有日志.我只想用log4j日志记录替换它,但由于各种原因,这已经证明是困难的.
我已经尝试显式设置日志文件配置.我的pom.xml定义目前看起来像:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<port>8084</port>
<systemProperties>
<java.util.logging.config.file>${basedir}/src/main/webapp/WEB-INF/logging.properties</java.util.logging.config.file>
</systemProperties>
</configuration>
<version>1.1</version>
</plugin>
Run Code Online (Sandbox Code Playgroud)
我在启动时看到正在阅读该属性.我的属性文件如下; 我把东西倾倒到/ tmp只是为了确保我知道在哪里看.
handlers = 1catalina.org.apache.juli.FileHandler, \
2localhost.org.apache.juli.FileHandler, \
3manager.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 = /tmp/logs
1catalina.org.apache.juli.FileHandler.prefix = catalina.
2localhost.org.apache.juli.FileHandler.level = FINE
2localhost.org.apache.juli.FileHandler.directory = /tmp/logs
2localhost.org.apache.juli.FileHandler.prefix = localhost.
3manager.org.apache.juli.FileHandler.level = FINE
3manager.org.apache.juli.FileHandler.directory = /tmp/logs
3manager.org.apache.juli.FileHandler.prefix = manager.
3manager.org.apache.juli.FileHandler.bufferSize = 16384
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
Run Code Online (Sandbox Code Playgroud)
如果有人有任何想法,我将非常感激.
我刚刚经历了类似的过程,但并不完全成功......
首先要注意的是,您需要明确是否要更改 Web 应用程序或 Tomcat 本身的日志记录配置。有关一些详细信息,请参阅Tomcat 网站上的日志记录文档- 特别是:
这意味着可以在以下层配置日志记录:
- 全球范围内。这通常在 ${catalina.base}/conf/logging.properties 文件中完成。该文件由 java.util.logging.config.file 系统属性指定,该属性由启动脚本设置。如果不可读或未配置,则默认使用JRE中的${java.home}/lib/logging.properties文件。
- 在网络应用程序中。该文件将为 WEB-INF/classes/logging.properties
完成此操作后,当部署到独立的 Tomcat 服务器时,我可以重新配置应用程序的日志记录。然而,我无法让它与 Maven Tomcat 插件一起工作 - 然后我发现有人提交了错误 MTOMCAT-127,该错误在撰写本文时尚未解决,并且似乎描述了我所看到的内容。
所以并不完全成功 - 但我希望一旦 MTOMCAT-127 问题取得进展,我可以回来更新这个答案......
| 归档时间: |
|
| 查看次数: |
3787 次 |
| 最近记录: |