我需要监视计算机使用的CPU,N/W,内存和磁盘I/O。目前,我正在使用Ubuntu,并将使用Java代码运行此操作。

此外,监视频率/采样间隔必须可自定义。我已经读过 这个. 。除了Sigar API,没有提及网络统计信息。

我正在看一些轻量级的东西。我有两件事可以做到这一点:

  1. 从我的Java代码中运行shell脚本,该代码格式化O/p。如果是这样,我应该使用哪个命令? TOP仅给出了统计过程。

  2. 使用Sigar API。但是可以设置采样率吗?

谢谢!

有帮助吗?

解决方案

您可以安装PRSTAT,IOSTAT,LINUX的PIDSTAT软件包,并使用Commandline获取所有信息。使用Java的ProcessBuilder在Shell中执行这些命令并捕获文件中的输出,以便将其用于将来的处理。一个谨慎的措辞,连续写入同一文件并不是一个好主意(通过指定轮询间隔和使用命令选项指定民意调查的数量来控制信息)。

希望这可以帮助。

PS:顺便说一句,看看Nagios。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top