こんにちは、阿久津です。Windows 10 Anniversary Updateを適用したWindows 10 バージョン1607には、新しいストレージ診断ツール「stordiag.exe」が加わりました。このツールは、chkdsk.exeやfsutil.exe、fltmc.exeなどの既存ツールと組み合わせて診断した結果を出力します。

また、ETW (Event Tracing for Windows) のログを出力するオプションも用意されました。ETWはOSやドライバーソフトの動作を追いかける仕組みで、Windows 2000で導入され、Windows Vistaで刷新された機能です。stordiag.exeを利用するには、コマンドラインに慣れることが必要です。今回は、stordiag.exeの使い方を紹介しましょう(図01)。

図01 ストレージおよびファイルシステムの診断を行う「storage.exe」

1. 管理者権限でコマンドプロンプトを起動します。
2. 「stordiag -checkFSConsistency -out %UserProfile%\Desktop」を実行します。

これで操作が完了しました(図02~04)。

図02 <スタート>ボタンを右クリックするか、[Win]+[X]キーを押してクイックアクセスメニューを開き、<コマンドプロンプト(管理者)>を起動します

図03 コマンドプロンプトに「stordiag -checkFSConsistency -out %UserProfile%\Desktop」と入力して[Enter]キーを押すと、デスクトップに「StorDiag」フォルダーが生成されます

図04 「StorDiag」フォルダーを開くと、多くの診断結果ファイルが現れます

それでは結果を確認してみましょう。ステップ02を実行するすとデスクトップに、診断結果のファイルを格納した「StorDiag」フォルダーが現れます。ここでは、chkdsk.exeの実行結果や、ストレージ関連のレジストリエントリ、関連イベントログを確認できます(図05~06)。

図05 「ChkDsk {ドライブ文字}.txt」では、chkdsk.exeの結果が示されています

図06 「Microsoft-Windows-Ntfs.evtx」を開くと、イベントビューアーでイベントログの内容を確認できます

冒頭で述べたようにstordiag.exeはETWトレースオプションを用意し、「-collectEtw」を追加することで、ストレージへの負荷やメモリーの状況なども確認できます。ただし、このオプションを追加した際に生成するトレースファイル(.etl)を開くには、「Windows Performance Analyzer」が必要です(図07)。

図07 オプション「-collectEtw」を追加することで、「perflog.etl」ファイルが生成されます

Windows Performance Analyzerは、Windows SDK for Windowsに含まれていますので、こちらからセットアップファイルをダウンロードし、セットアップウィザードの途中で<Windows Performance Toolkit>にチェックを入れてください。他のコンポーネントは、開発しない場合は不要です(図08)。

図08 「Windows SDK for Windows 10」のセットアップ時に<Windows Performance Toolkit>を選択します

もっともETWトレースログまで行きますと、エンドユーザーレベルでは参考にする場面は多くありません。しかし、"プチフリーズ" の原因を探る際には役立つこともあります(図09)。

図09 開発環境を整えたWindows 10上でトレースファイルを開いた状態

それでは、また次号でお目にかかりましょう。

阿久津良和(Cactus)