Windows / NTFS-ファイル操作の完了時間を測定することは可能ですか?


8

NTFSドライバーに発行されたファイル操作(ファイルを開く、ファイルを削除、ファイルを削除、書き込み、読み取りなど)を完了してログに記録するのにかかる時間を測定できる可能性を探しています。アプリ内で時間を計測するようにアプリを変更できません。呼び出しを発行してからアプリケーションの実行に戻るまでの時間に興味があります。

アプリケーションは、iSCSIストレージに配置されたNTFSボリュームに継続的に書き込みます。また、最も古いファイルを定期的に削除しています。ファイルサイズは100〜200 MBです。ボリュームには常に約10%の空き領域があります。ある時点で、アプリケーションはデータを定期的に書き込むことができないため、メモリ内のバッファリングを開始します。その後、何かが起こり、バッファが空になり始め、すべてが通常に戻ります。

物理ボリュームと論理ボリュームの両方へのI / O操作をテストしました-「停止」中に異常は見られません

次に、問題がアプリケーション内にあるのか、OSのどこにあるのかを調べたいと思います。そのため、すべてのファイル操作のタイミングをログに記録できるかどうか、通常よりも時間がかかるシステムか、操作が速く、アプリケーション内で何かがブロックされているかどうかを判断できると考えていました。

プラットフォームは64ビットWindows Server 2008R2です。sysinternalsプロセスモニターを試しましたが、実行時間のログが記録されません。問題が発生するまで数時間かかる場合があります。

この仕事に適したツールを提案できますか?


たぶん、DiskMonは便利でしょう。
VlastimilOvčáčík2017年

回答:


4

ファイルシステム用のモノリシックまたはミニフィルタードライバーを作成する人を雇う。関心のある特定のアプリからのすべての呼び出しを傍受し、NTFSまたはその他のFSドライバーのエントリポイントへの呼び出しを直接追跡できます。OSRにはデータインターセプト(?)キットなどがあり、便利な場合もあります。

https://www.osr.com/dmk/


1
提案ありがとうございますが、それは時間がかかりすぎます。ほとんどのツールがイベントのリアルタイムの短期分析のみに焦点を当てており、情報をログに記録できることはめったにありません。私が見つけたのは信頼できる* 1つだけで、システム上で見つけました。それがパフォーマンスモニターです。私の計画は、いくつかのパターンを見つけることを期待して、複数のカウンターを相関させることを試みることです。*)機能しているようです
MariuszZieliński17年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.