用Java监视磁盘活动

时间:2014-06-19 21:20:09

标签: java performance android-activity monitor disk

我正在寻找监控Java,闭源,商业,桌面应用程序中磁盘活动的方法。特别是,我想要做的是监控应用程序访问数据库/磁盘的频率 - 它在应用程序中显示为“HDD led”指示器并且将完全相同(因此,基本上是实时活动监控) 。我也希望尽可能少地使用外部库。

到目前为止我发现的内容似乎并不太令人鼓舞 - 我还没有看到这样的确切示例以及我设法挖掘引用巨大框架(如Sigar)或库的最佳命中像JPicus(它不支持Java7,似乎不支持我的情况)。 JMX仪器似乎也不支持这一点,因此我对任何想法/建议都非常开放。

技术堆栈是 - Java7,Eclipse RCP,SQL Server 2008。

编辑:为了使事情变得更加清楚,我希望使用纯粹的,与平台无关的Java解决方案来监控Java程序的磁盘I / O活动。

2 个答案:

答案 0 :(得分:2)

如果您想知道如何监控Windows进程的磁盘I / O活动:请在服务器故障上询问该问题。

如果您想了解如何使用纯粹的,与平台无关的Java解决方案来监控Java程序的磁盘I / O活动:没有,尤其是满足您的要求。从技术上讲,唯一的选择是用检测代码包装所有I / O操作,这相当昂贵。

答案 1 :(得分:1)

您可以使用扩展目录中的类替换FileInputStream / FileOutputStream的实现。如果没有及早提起,请尝试将java.system.class.loader设置为您自己的类加载器,以便拦截对这些类的请求。