java - 如何通过 Maven 在 Servlet 应用程序中使用 Java 日志记录 API

标签 java api logging

我在一个简单的 Servlet 应用程序中使用 Java 日志记录 API,该应用程序使用 Maven 并将其部署在 Tomcat 上。我想将日志写入文件。虽然我已经将我的logging.properties放在了source\main\resources和source\main\webapp\WEB-INF中,但似乎这个文件没有被读取。没有输出日志文件。

如果我更改 JRE 库中的logging.properties 文件,则会正确创建日志文件。

如何使用 Java Logging API 将日志写入文件而不修改 JRE 库中的logging.properties?

P/S:我使用过log4j,这对我来说似乎很容易。我正在尝试使用 Java Logging API,因为我很好奇为什么还有很多人仍在使用它,包括 GoogleApp Engine。

对于像我这样的新手,以下是问题摘要:
1、把logging.properties放到WEB-INF\classes下,看tomcat docs获取此文件的示例
2.如果应用程序是手动部署的(即将.war放在Tomcat的webapps文件夹中),它应该可以工作 正确
3.如果应用程序是从Netbeans部署的,它应该可以正常工作
4. 如果应用程序是从 Eclipse 部署的,请在其启动配置的 Arguments 选项卡下添加以下内容
-Dcatalina.base=%PATH_TO_TOMCAT_INSTALLATION%
-Dcatalina.home=%PATH_TO_TOMCAT_INSTALLATION%
-Djava.util.logging.config.file=%PATH_TO_TOMCAT_INSTALLATION%\conf\logging.properties"
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
看来Eclipse使用自己的方式来启动Tomcat,而不是执行startup.bat。

最佳答案

Tomcat 文档有一章介绍如何配置服务器的日志记录属性: Logging in Tomcat

关于java - 如何通过 Maven 在 Servlet 应用程序中使用 Java 日志记录 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5609948/

相关文章:

java.lang.ClassCastException : java. util.HashMap 无法转换为 java.lang.Comparable

api - stackoverflow api - 获取每个用户的答案和问题数量

node.js - Asana API POST 到任务导致服务器错误

python - 如何使用 Twitter 流 API?

ruby-on-rails - Rails 日志中的完整 URL

java - 向 JavaFX ToggleSwitch 添加更改监听器

java - 将鼠标悬停在文本上不改变颜色 - libgdx

java - Java环境下大容量日志事件查看器的推荐

java - 关于Java中的静态final关键字

linux - 如何退出 tail --follow on ERROR 或 FATAL 日志级别