【问题标题】:Tomcat console log to a fileTomcat 控制台日志到文件
【发布时间】:2014-12-09 04:37:47
【问题描述】:

我正在使用 Apache Tomcat 7。当我使用安全管理器和-Djava.security.debug 参数运行 Tomcat 时,我在控制台中收到了很多文本。我无法阅读控制台中的文本。所以我需要控制台登录到某个文件。我怎样才能做到这一点?

【问题讨论】:

  • 看看C:\Program Files\Apache Software Foundation\Apache Tomcat 7....\logs - 你可能会找到localhost...log

标签: java tomcat logging securitymanager


【解决方案1】:

从日志配置中删除 ConsoleHandler。在conf/logging.properties:

改变这个 -

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

到这里-

.handlers = 1catalina.org.apache.juli.FileHandler

日志将在文件catalina.log中。


如果您想禁用所选应用程序的控制台日志记录,您可以在 <Context> 元素中将 swallowOutput 设置为 true。

...
<Context path="..." swallowOutput="true"> 
...

【讨论】:

  • 在 apache-tomcat-7.0.5\logs\catalina.2014-10-14.log 中对我没有影响
【解决方案2】:

使用catalina.batrun 可以在当前控制台而不是新的控制台中启动tomcat,因此您可以将这个命令的所有标准错误和标准输出流重定向到一个文件使用

catalina.bat run > tomcat.log

【讨论】:

  • 我必须把这个 cmd 放在哪里
  • @Hariprasath 在 cmd 上是的
  • 但是cmd提示没有运行,输入这个cmd后卡住了
  • @Hariprasath 它没有被击中,它现在不会在控制台上打印任何内容,所有内容都将打印到 tomcat.log 文件中,搜索该文件。
  • 是的,谢谢。它登录了tomcat.log,但我需要使用一些参数运行tomcat,例如startup.bat -security。我怎么能。
【解决方案3】:

对于 ubuntu 用户,使用以下命令:

  1. cd /opt/apache-tomcat-8.0.36/bin$
  2. ./catalina.sh 运行 > tomcat.log

你会得到日志。运行此命令后,您将获得 /opt/apache-tomcat-8.0.36/logs 文件夹下的所有日志文件..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-15
    • 2016-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-28
    • 1970-01-01
    相关资源
    最近更新 更多