Možnosti trasování VSS a odstraňování problémů
Shrnutí: Tento článek popisuje, jak je možné implementovat několik možností trasování pro službu Microsoft Stínová kopie svazku VSS. Někdy je nezbytné shromáždit informace o ladění ve vrstvě VSS pro řešení potíží s vytvářením snapshotů. ...
Pokyny
Technologie VSS je základní součástí řady řešení ochrany dat a usnadňuje možnosti zálohování systémů Microsoft Windows. Mnoho prvků však může způsobit selhání snímku VSS a může být užitečné rozšířit řešení potíží v komponentě VSS a jejích modulech.
Tento článek je založen na VSSTrace.exe Binární nástroj, který nabízí několik možností pro trasování služby VSS v době pokusu o snímek a může poskytnout smysluplné informace pro účely řešení potíží.VSSTrace.exe je součástí sady Microsoft Windows Software Development Kit (SDK), kterou lze stáhnout z webu služby Stažení softwaru: Soubory ke stažení sady Windows SDK – aplikace pro Windows | Microsoft Learn
Další informace o VSSTrace.exeViz: Použití nástrojů pro trasování se službou VSS – aplikace Win32 | Microsoft Learn
Po instalaci sady Windows SDK vsstrace.exe najdete na následujícím umístění.
C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\vsstrace.exe
Následující syntaxe příkazu slouží k přesměrování VSSTrace Výstup do souboru:vsstrace -o c:\Temp\VSSTrace\myTrace1.txt
V okamžiku pokusu o vytvoření snapshotů VSS jsou trasované moduly VSS zapsány do souboru protokolu, aby bylo možné provést další analýzu.
Důležité informace o modulu VSS:
Selektivní trasování pro moduly VSS, které jsou považovány za relevantní pro další řešení potíží, může pomoct snížit velikost shromážděných dat a trasovacího souboru. VSSTrace umožňuje trasování specifických a pojmenovaných modulů, například: služba VSS je sama známá jako koordinátor, žadatel, zapisovače VSS atd. Pokud existuje pochybnost o tom, že je chyba generována žadatelem nebo zapisovači, omezte trasování na konkrétní modul nebo moduly.
Každý modul má masku, kterou lze použít jako příznak v příkazu pro VSSTrace. Následující příkaz například zakáže trasování pro všechny moduly (-f 0) a povolí trasování pro zapisovače VSS:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Když se trasování spustí, maska 0x00000010 je hlášen a odpovídá příznaku modulu Writer.
Poté je možné připojit všechny moduly podle syntaxe: -f 0 +<MODULE> +<MODULE> +<MODULE> ...
Seznam dostupných modulů lze získat pomocí následujícího příkazu:
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
Aspekty úrovně:
K dispozici je 21 různých úrovní s výchozí hodnotou nastavenou na 170 , což znamená, že se protokolují návratové hodnoty funkcí až do modulů. Úroveň 255 je maximální, ale pokud je vybrána tato úroveň, je do trasovacího souboru zahrnuto velké množství dat.
Následující příklad povolí úroveň trasování 190: Podrobné parametry funkce pouze pro službu 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 je pak hlášeno jako aktuální úroveň trasování pro modul, jehož maska je 0x00000002 odpovídající koordinátorovi VSS.
Popis dostupných úrovní je zde pro referenci:
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
Ruční odstraňování problémů se snapshoty:
Nejlepším způsobem by bylo replikovat případ použití, který aktivuje chybovou situaci, ale protože to nemusí být vždy možné, nejjednodušší přístup ke kontrole funkčnosti služby VSS a otestování, zda VSSTrace Binární soubor byl správně nastaven s požadovanými parametry je vygenerovat bod obnovení na vyžádání.
Zde se na vyžádání vytvoří bod obnovení, což následně vede k vytvoření stínové kopie:
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 Vrátí seznam aktuálně dostupných stínů a podle data a času vytvoření jsou identifikovány ručně vytvořené body obnovení.
Nyní, povolením VSSTrace a vygenerováním bodu obnovení spusťte trasování VSS, které už může obsahovat některá zajímavá data pro další řešení potíží.
Na výše uvedeném obrázku byl vytvořen bod obnovení, zatímco VSSTrace byl povolen pouze pro modul WRITER:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Po vytvoření bodu obnovení a vyvolání služby VSS byly podle očekávání
shromážděny a trasovány příslušné aktivity modulu WRITER.Udržování ručně vytvořených bodů obnovení nemá smysl, takže po shromáždění trasování je nutné je odebrat.vssadmin umožňuje selektivní odstranění stínových kopií podle jejich ID:
K vypsání snímků VSS použijte následující příkaz:
vssadmin list shadows
Odstraňte snapshoty:
vssadmin delete shadows /shadow=SNAPSHOT_GUID
Použijte Prohlížeč událostí k získání chybových kódů a zpráv.
V hostiteli, kde dochází k problémům se službou VSS, může prohlížeč událostí spustit pomocí: eventvwr.msc /s
Omezte vyhledávání v systémových protokolech –> Aplikace a Windows Protokoly> – systém.
Filtrovat podle: VSS a VolSnap
Tam se nakonec zobrazí zprávy související s VSS.