netbeans tomcat清除日志文件



我一直在开发一个应用程序,意外地创建了一个无限循环。tomcat服务器日志文件中有很多输出,每次我从NetBeans启动tomcat时,IDE都会将所有这些日志加载到GUI中。它让我的电脑在没有操作内存的情况下窒息。不幸的是,IDE没有提供任何"清除日志"按钮。

我一直在尝试查找tomcat日志文件,但失败了。我的tomcat安装在~/apache-tomcat-7.0.27中,logs子目录下的最新日志文件是catalina.2013-01-12.log。今天是2013-02-16。并且我在/var/log下没有发现tomcat;)

我试过重新启动NetBeans,但它没有改变任何东西。IDE仍然在加载大量的日志,所以文件必须在某个地方。

如果有任何关于在哪里搜索这些文件的提示,我将不胜感激。

不知怎么的,我找到了正确的目录:~/.netbeans/7.2.1/apache-tomcat-7.0.27.0_base/logs。它拥有1.7 GB:)

不过,我不知道:

  • 为什么没有/var/log/tomcat(可能是因为tomcat是在NB中安装的,而不是作为一个独立的包)
  • 为什么任何东西都放在~/.netbeans目录中

对于我来说,在Windows 7上,日志位于:

C:Users<user>AppDataRoamingNetBeans7.2.1apache-tomcat-7.0.27.0_base

tomcat日志文件取决于您的配置,要查看它们的确切位置,请在NetBeans中转到"工具"菜单并单击"服务器"。选择您正在使用的Tomcat版本,并在选项卡"Connection"中查看字段"Catalina Base"。这就是你需要的文件路径,输入这个文件夹,在我的例子中是"C:\Users\Tiago Peres\AppData\Roaming\NetBeans\7.3\apache-toncat-7.0.34.0_base",输入文件夹"logs",然后删除所有内容。

您可以在启动时创建一个脚本来删除日志文件。我想自己做这件事,发现了一篇很棒的文章,里面有关于如何做到这一点的说明:http://blog.sixthpoint.com/clearing-tomcat-logs-on-startup/

编辑:本文使用Linux.sh文件,但使用此方法可以轻松创建Windows.bat文件。脚本必须稍微修改一下,用del代替rm

如果你和我一样,厌倦了Netbeans以某种方式显示上一个调试会话的剩余部分,以及旧的堆栈跟踪等,那么另一个想法是修改%CATALINA_HOME%\conf\logging.properties,使其保持在最低限度。然而,不幸的是,JULIAsyncFileAppender没有公开控制新会话如何处理现有文件的属性(如LOG4J appenders的.append=false选项)。

因此,我最终修改了catalina.bat,风险由我自己承担,几周后我会忘记我做了这件事,并会想知道并责怪周围的世界,为什么每次启动Tomcat时,我的日志目录都会突然被清理干净。

%CATALINA_HOME%\bin\CATALINA.bat:

...
REM these are the original lines that existed in catalina.bat before
rem Copy CATALINA_BASE from CATALINA_HOME if not defined
if not "%CATALINA_BASE%" == "" goto gotBase
set "CATALINA_BASE=%CATALINA_HOME%"
:gotBase
REM these are the lines that I am adding
rem cleanup logs directory
del /q/s %CATALINA_HOME%logs*.*
...

相关内容

  • 没有找到相关文章

最新更新