VSSトレースとトラブルシューティングのオプション
概要: この資料では、Microsoft Volume Shadow Copy Service VSS のトレース オプションをいくつか実装する方法について説明します。スナップショットの作成に関する問題をトラブルシューティングするために、VSSレイヤーでデバッグ情報を収集する必要がある場合があります。
手順
VSSテクノロジーは、いくつかのデータ保護ソリューションの基本的なコンポーネントであり、Microsoft Windowsシステムのバックアップ機能を容易にします。ただし、多くの要素によって VSS スナップショットが失敗する可能性があるため、VSS コンポーネントとそのモジュールでトラブルシューティングを拡張すると役立つ場合があります
この記事は、 VSSTrace.exe バイナリー ツール。スナップショットの試行時にVSSサービスをトレースするためのオプションがいくつかあり、トラブルシューティングに役立つ情報を提供する場合があります。VSSTrace.exe は、Microsoft Download CenterからダウンロードできるMicrosoft Windowsソフトウェア開発キット(SDK)に含まれています。Windows SDK のダウンロード - Windows アプリ |Microsoft Learn
詳細については、以下を参照してください。 VSSTrace.exe見る:VSS でのトレースツールの使用 - Win32 アプリ |Microsoft Learn
Windows SDK がインストールされたら、 vsstrace.exe 次の場所にあります。
C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\vsstrace.exe
次のコマンド構文は、 VSSTrace ファイルに出力します。vsstrace -o c:\Temp\VSSTrace\myTrace1.txt
VSSスナップショットの作成が試行されると、トレースされたVSSモジュールがログ ファイルに書き込まれ、さらに分析できるようになります。
VSSモジュールに関する考慮事項:
さらなるトラブルシューティングに関連していると考えられるVSSモジュールの選択的トレースは、収集されるデータおよびトレース ファイルのサイズを小さくするのに役立ちます。 VSSTrace VSSサービス自体は、コーディネーター、リクエスター、VSSライターなど、特定の名前付きモジュールのトレースを許可します。リクエスターまたはライターによってエラーが生成された疑いがある場合は、トレースを特定のモジュールに制限します
すべてのモジュールには、 VSSTrace のステートメントでフラグとして使用できるマスクがあります。たとえば、次のステートメントは、すべてのモジュールのトレースを無効にし (-f 0)、 VSS ライターのトレースを有効にします。vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
トレースが開始されると、マスク 0x00000010 が報告され、Writer モジュール フラグに対応します
その後、構文に従ってすべてのモジュールを追加することができます。 -f 0 +<MODULE> +<MODULE> +<MODULE> ...
次のコマンドを使用して、使用可能なモジュールのリストを取得できます。
vsstrace -help modules Available modules: Module : Flag : Default : Description ------------:--------------:---------:---------------------------------------------- EXCEPT : 0x00000001 : ON : C++ exception handling COORD : 0x00000002 : ON : VSS Coordinator service SWPRV : 0x00000004 : ON : System Provider service BUCOMP : 0x00000008 : ON : Requester and backup metadata processing WRITER : 0x00000010 : ON : Writer infrastructure and VSS hosted writers VSSAPI : 0x00000020 : ON : Miscellaneous VSSAPI exported routines HWDIAG : 0x00000040 : ON : Hardware Provider diagnostics ADMIN : 0x00000080 : ON : Command line utilities VSSUI : 0x00000100 : ON : Shadow Copies for Shared Folders UI TEST : 0x00000200 : ON : Internal test infrastructure (unused) IOCTL : 0x00000400 : ON : IOCTL and FSCTL operations GEN : 0x00000800 : ON : General purpose utilities (noisy) WRXML : 0x00001000 : OFF : Writer metadata processing (noisy) VSSXML : 0x00002000 : OFF : Metadata processing base classes (noisy) FSSPROV : 0x00004000 : OFF : File Server Shadow Copy Provider FSSAGENT : 0x00008000 : OFF : File Server Shadow Copy Agent FSSMD : 0x00010000 : OFF : File Server Shadow Copy Metadata
レベルに関する考慮事項:
21 の異なるレベルがあり、既定値は 170 に設定されており、モジュール関数の戻り値までログに記録されます。最大値はレベル255ですが、このレベルを選択すると、大量のデータがトレース ファイルに含まれます
次の例では、トレース・レベル 190 を使用可能にします。 VSSサービスのみに関する関数パラメーターの詳細:
vsstrace -f 0 +COORD -l 190 -o C:\Temp\VSSTrace\myTraceVSSService190.txt
C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64>vsstrace -f 0 +COORD -l 190 -o C:\Temp\VSSTrace\myTraceVSSService190.txt
Session started. Enabling provider...
Enabling provider {9138500e-3648-4edb-aa4c-859e9f7b7c38}on level 190 and flags 0x00000002 ...
Real-time tracing now in progress. Press Ctrl-C to stop tracing...
Tracing stopped.
Total Events Processed 0
Start Time 0 (0x0000000000000000)
End Time 0 (0x0000000000000000)
Elapsed Time 0 sec
+-------------------------------------------------------------------------------------+
|EventCount EventName EventType Guid |
+-------------------------------------------------------------------------------------+
+-------------------------------------------------------------------------------------+
この場合、190 は、マスクが 0x00000002 VSSコーディネーターに対応します
利用可能なレベルの説明は、参照のために以下にあります。
Available levels: 000 : None 020 : Fatal Errors 030 : Unhandled Exception 040 : Error 050 : Assertion 060 : Warning 080 : Exception Handling 100 : Event Log Activity 120 : General Information 140 : Code flow 160 : Function enter/exit 170 : Function return values (Default level) 180 : Function Parameters 190 : Function Parameters Verbose 200 : Verbose Info Level 1 210 : Verbose Info Level 2 220 : Verbose Info Level 3 230 : Fast Code Level 1 240 : Fast Code Level 2 250 : Fast Code Level 3 255 : All
スナップショットの手動トラブルシューティング:
最善の方法は、エラー状況をトリガーするユース ケースをレプリケートすることですが、これが常に可能であるとは限らないため、VSSサービスの機能を確認し、 VSSTrace バイナリは、必要なパラメーターで正しくセットアップされており、オンデマンドで復元ポイントを生成します。
ここでは、リストア ポイントがオンデマンドで作成され、シャドウ コピーが作成されます。
C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x64>vssadmin list shadows
Contents of shadow copy set ID: {41167b4f-2da1-47cf-a9d6-235adf1e29df}
Contained 1 shadow copies at creation time: 08/05/2019 18:12:12
Shadow Copy ID: {09144331-79a6-4f34-9994-7ea22a72fbbd}
Original Volume: (C:)\\?\Volume{49ec4df8-2a9b-4f9a-8fa8-c9fe8e10943b}\
Shadow Copy Volume: \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy9
Originating Machine: XXXXXXXXXXXXXX.corp.emc.com
Service Machine: XXXXXXXXXXXXXX.corp.emc.com
Provider: 'Microsoft Software Shadow Copy provider 1.0'
Type: ClientAccessibleWriters
Attributes: Persistent, Client-accessible, No auto release, Differential, Auto recovered
vssadmin 現在使用可能なシャドウのリストを返します。作成日時ごとに、手動で作成された復元ポイントが識別されます
ここで、 VSSTrace 復元ポイントを生成して、VSSトレースを開始します。このトレースには、さらにトラブルシューティングを行うための興味深いデータがすでに含まれている可能性があります。
上の図では、復元ポイントが VSSTrace は、WRITER モジュールに対してのみ有効でした。vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
リストア ポイントが作成され、VSSサービスが呼び出されると、関連するWRITERモジュール アクティビティが収集され、予想どおりにトレースされました。
手動で作成した復元ポイントを保持しても意味がないため、トレースを収集した後に削除する必要があります。vssadmin シャドウ コピーをIDで選択的に削除できます。
次のコマンドを使用して、VSSスナップショットを一覧表示します。
vssadmin list shadows
スナップショットを削除します。
vssadmin delete shadows /shadow=SNAPSHOT_GUID
イベント ビューアーを使用して、エラー コードとメッセージを取得します。
VSSの問題が発生しているホストでは、次の方法でイベント ビューアーを実行できます。 eventvwr.msc /s
Windowsログ内の検索を制限します-->アプリケーションとWindowsログ-->システム。
次を基準にしてフィルタリング: VSSとVolSnap
VSS関連のメッセージは最終的にそこに表示されます。