0

我有一个运行大约 70 个 Web 应用程序的 tomcat6 服务器,并且我有一个(或多个)已设置共享 .jar 以登录调试模式,这正在占用我的磁盘。

我试过在文件上使用 lsof ,但它只是告诉我是 tomcat 用户和正在写入文件的 java 程序(我已经知道了)。

我在谷歌上花了一些时间,但一定是使用了错误的搜索词,因为我得到的只是关于 Tomcat 本身如何记录或如何编写从 web 应用程序中进行记录或文件写入所需的代码的信息。

日志文件没有我需要能够判断哪个 webapp 正在调用它的信息,只有与实际正在编写的 jar 相关的信息。

有人可以向我指出一些有关如何找出导致问题的 webapp 的信息或告诉我如何确定吗?

4

2 回答 2

0

如果多个 Web 应用程序正在写入同一个文件,则没有简单的方法可以取消该文件。您需要重新配置每个 Web 应用程序的日志记录以记录到单独的文件而不是同一个文件。我假设此日志记录是通过诸如 log4j 之类的框架完成的。您需要以适当的方式为正在使用的框架修改配置。

或者,检查日志记录配置文件以查看哪个配置文件用于调试并更改它。

作为第三种 - 远非理想的选择 - 使用管理器应用程序在您停止 Web 应用程序时执行二进制搜索以确定哪个正在填充您的日志文件。

于 2012-05-03T19:04:40.013 回答
0

将线程 ID 添加到日志格式,然后与线程转储进行比较。

于 2012-05-04T02:46:06.360 回答