【问题标题】:Redirect Tomcat 7 console log output to a file (Windows)将 Tomcat 7 控制台日志输出重定向到文件 (Windows)
【发布时间】:2011-10-15 07:35:57
【问题描述】:

如何将 Tomcat 7 控制台日志输出重定向到 Windows 上的文件?

【问题讨论】:

    标签: tomcat tomcat7


    【解决方案1】:

    文件:catalina.bat(在 Tomcat 的根 \bin 目录中)

    行:

    rem Comment out the line below
    rem set _EXECJAVA=start "%TITLE%" %_RUNJAVA%
    rem Add the line below instead
    set _EXECJAVA=%_RUNJAVA%
    

    接下来,找到进行最终 Java 调用的行(添加重定向如下):

    %_EXECJAVA% %CATALINA_LOGGING_CONFIG% %LOGGING_MANAGER% ... 2>&1 >c:\temp\tomcat.log
    

    然后您将在文件 c:\temp\tomcat.log 中获取您的 stdout 和 stderr 流

    【讨论】:

      【解决方案2】:

      获取 Tomcat 输出并共享它:: 1. 制作一个文件“Start_Tomcat.bat”,将下面的行放入其中。

      cd C:\XXX\apache-tomcat-6.0.20\bin
              catalina.bat run > C:\XXX\apache-tomcat-6.0.20\logs\tomcat1.log 2>&1
      

      注意事项:: C:\XXX\apache-tomcat-6.0.20\bin -- 是系统bin地址 “ \logs\tomcat1.log 2>&1 ”不应该改变...

          Ques:: What does the 2>&1 do?
          Ans:: 2>&1 means output only to file. Without that it would output to both text and console.
      
      1. 将文件粘贴到以下位置::: " C:\XXX\apache-tomcat-6.0.20\bin "

      2. 运行“Startup.bat”和“Start_Tomcat.bat”

      3. 您将获得“ C:\XXX\apache-tomcat-6.0.20\logs\tomcat1.log ”。共享“tomcat1.log”文件,以便其他人可以看到您的 tomcat 响应。

      【讨论】:

        【解决方案3】:

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

        catalina.bat run > tomcat.log 2>&1
        

        【讨论】:

        • 你能给出更多解释吗?我在 tomcat7 中找不到 catalina.bat :(
        • catalina.batbin 文件夹内
        • 我使用的是 Tomcat 7,所以 bin 文件夹中没有任何 bat 文件...有没有其他方法可以将 sysout 重定向到日志文件?
        • 2>&1 有什么作用?
        • 如果你删除 2>&1 它将同时输出到控制台和文件(而不是只输出文件)
        猜你喜欢
        • 1970-01-01
        • 2019-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-06-14
        • 2014-12-09
        相关资源
        最近更新 更多