0

sigarを使用してディスクパフォ​​ーマンスを取得するにはどうすればよいですか。iostatがディスク使用量を返すことはわかっていますが、ディスクの書き込みと読み取りの速度に関する情報が必要です。

UNIXのネイティブiostatはこのデータを返しますが、私はJavaに基づくアプリケーションを開発しており、その目的の1つはマルチプラットフォームであり、sigarはこれまで完全に機能していました。

私の主な関心事はWindowsです。誰かが、SigarまたはWindowsでさえこの情報を取得する方法を知っていますか?

4

3 に答える 3

4

org.hyperic.sigar.cmd.Iostat.java のソース コードを見てください。次の方法で、ローカル ディスクを表すすべてのファイル システムを取得できます。

FileSystem[] fileSystemList = this.proxy.getFileSystemList();
for (int i = 0; i < fileSystemList.length; i++) {
    FileSystem fs = fileSystemList[i];
    if (fs.getType() == FileSystem.TYPE_LOCAL_DISK){
    FileSystemUsage usage = this.sigar.getFileSystemUsage(fs.getDirName());

    String devName = fs.getDevName();

    long read = usage.getDiskReadBytes();
    long write = usage.getDiskWriteBytes();


    }

}
于 2012-12-19T15:00:29.360 に答える
-2

Sigarとは何かわかりませんが、生データを(処理せずに)ファイルに書き込む小さなアプリケーションを作成するか、ファイルのコピーを実行してその間の時間を測定することができると思います。あなたが読むためにそれをすることができるのと同じこと。

于 2011-10-16T15:03:05.033 に答える
-3

そうは思いません。Sigar API を確認してください。

于 2016-12-20T23:14:24.513 に答える