3

xperfを使用すると、トレースを生成して、次のように読み取られたすべてのファイルの「フラット」リストを取得できます。

xperf -on FileIO + FILE_IO + FILE_IO_INIT + FILENAME -stackwalk FileRead + FileWrite + FileDelete

xperf -start FileIOSession -heap -PidNewProcess "C:\ Python27 \ x86 \ python.exe strikey.py" -WaitForNewProcess -BufferSize 1024 -MinBuffers 128 -MaxBuffers 512 -stackwalk HeapAlloc + HeapRealloc -f ./tempheap.etl

xperf -stop FileIOSession -stop -d fileio.etl

xperf -i fileio.etl -ofio_output.txt-aファイル名

残念ながら、fio_output.txtファイルには、(私のWebブラウザー、IDEなどから)アクセスされた可能性のあるすべてのファイルのリストが含まれています。さらに苛立たしいことに、xperfviewを手動で開いてファイルI / Oサマリーテーブルを開くと、プロセス(この場合はpython.exe)とそれが読み取る1つのファイル(テスト目的)を確認できますが、私が必要としているのと同じデータをCLIに出力する方法-ファイルアクセス情報を生成する無人の自動化された方法。

4

2 に答える 2

1

このデータを表示する場合は、トレースを WPA に読み込み、ファイル I/O テーブルを開き、列を適切に配置する必要があります。プロセスごとにグループ化したいので、最初にプロセス列、次にオレンジ色のバー、そして必要なデータ列が必要です。

データをエクスポートしてプログラムで解析する場合は、WPT 8.1 で新しく追加された wpaexporter.exe を使用する必要があります。これを行う方法について説明したこのブログ投稿を参照して ください 。 xperf.exe が提供する限定された一連のトレース処理アクションによって制約されるのではなく、エクスポートするデータ列。

于 2015-06-08T19:42:39.490 に答える
0

代わりにtracerpt.exeからこのデータを取得できると思います-試してみます

于 2011-04-05T06:13:57.977 に答える