Opcje śledzenia i rozwiązywania problemów z usługą VSS
Podsumowanie: W tym artykule opisano, jak można zaimplementować kilka opcji śledzenia dla usługi VSS usługi kopiowania woluminów w tle firmy Microsoft. Czasami konieczne jest zebranie informacji debugowania w warstwie usługi VSS w celu rozwiązania problemów związanych z tworzeniem migawek. ...
Instrukcje
Technologia VSS jest podstawowym składnikiem kilku rozwiązań do ochrony danych i ułatwia tworzenie kopii zapasowych systemów Microsoft Windows. Niemniej jednak wiele elementów może spowodować niepowodzenie migawki VSS i przydatne może być rozszerzenie rozwiązywania problemów w składniku VSS i jego modułach.
Ten artykuł jest oparty na VSSTrace.exe Narzędzie binarne, które oferuje kilka opcji śledzenia usługi VSS w momencie próby wykonania migawki i może dostarczyć istotnych informacji w celu rozwiązywania problemów.VSSTrace.exe wchodzi w skład zestawu Microsoft Windows Software Development Kit (SDK), który można pobrać z Centrum pobierania Microsoft: Pliki do pobrania zestawu Windows SDK — aplikacje dla systemu Windows | Microsoft Learn
Aby uzyskać więcej informacji na temat VSSTrace.exeZobacz: Korzystanie z narzędzi śledzenia w usłudze VSS — aplikacje Win32 | Microsoft Learn
Po zainstalowaniu zestawu Windows SDK vsstrace.exe można znaleźć w następującej lokalizacji.
C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\vsstrace.exe
Poniższa składnia polecenia służy do przekierowywania VSSTrace Wyjście do pliku:vsstrace -o c:\Temp\VSSTrace\myTrace1.txt
W momencie próby wykonania migawek usługi VSS śledzone moduły usługi VSS są zapisywane w pliku dziennika, aby można było przeprowadzić dalszą analizę.
Zagadnienia dotyczące modułu VSS:
Selektywne śledzenie modułów VSS, które są uważane za istotne dla dalszego rozwiązywania problemów, może pomóc w zmniejszeniu rozmiaru zebranych danych i pliku śledzenia. VSSTrace umożliwia śledzenie określonych i nazwanych modułów, na przykład: usługa VSS sama w sobie jest znana jako koordynator, żądający, składniki zapisywania VSS itd. Jeśli istnieje wątpliwość, że błąd jest generowany przez obiekt żądający lub przez moduły zapisujące, ogranicz śledzenie do określonego modułu lub modułów.
Każdy moduł ma maskę, która może być użyta jako flaga w instrukcji VSSTrace. Poniższa instrukcja, na przykład, wyłączy śledzenie dla wszystkich modułów (-f 0) i włączy śledzenie dla składników zapisywanych usługi VSS:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Po rozpoczęciu śledzenia maska 0x00000010 jest zgłaszany i odpowiada fladze modułu zapisu.
Następnie możliwe jest dołączenie wszystkich modułów zgodnie ze składnią: -f 0 +<MODULE> +<MODULE> +<MODULE> ...
Listę dostępnych modułów można uzyskać za pomocą następującego polecenia:
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
Zagadnienia dotyczące poziomu:
Dostępnych jest 21 różnych poziomów , z wartością domyślną ustawioną na 170 , co oznacza, że rejestrowane są wartości zwracane do funkcji modułów. Poziom 255 jest maksymalny, ale jeśli ten poziom jest wybrany, w pliku śledzenia znajduje się wiele danych.
Poniższy przykład włącza poziom śledzenia 190: Parametry funkcji Pełne tylko dla usługi 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 jest następnie zgłaszane jako bieżący poziom śledzenia dla modułu, którego maska jest 0x00000002 odpowiadający koordynatorowi VSS.
Poniżej znajduje się opis dostępnych poziomów:
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
Ręczne rozwiązywanie problemów z migawkami:
Najlepszym sposobem byłoby odtworzenie przypadku użycia, który wyzwala sytuację błędu, ale ponieważ nie zawsze jest to możliwe, najprostszym podejściem jest sprawdzenie funkcjonalności usługi VSS i sprawdzenie, czy VSSTrace Plik binarny został poprawnie skonfigurowany z pożądanymi parametrami, aby wygenerować punkt przywracania na żądanie.
W tym przypadku na żądanie tworzony jest punkt przywracania, co z kolei skutkuje utworzeniem kopii cienia:
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 Zwraca listę bieżących dostępnych cieni, a ręcznie utworzone punkty przywracania są identyfikowane według daty i godziny utworzenia.
Teraz, włączenie funkcji VSSTrace i wygenerowanie punktu przywracania rozpoczyna śledzenie VSS, które może już zawierać interesujące dane do dalszego rozwiązywania problemów.
Na powyższym rysunku punkt przywracania został utworzony podczas VSSTrace został włączony tylko dla modułu WRITER:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Po utworzeniu punktu przywracania i wywołaniu usługi VSS odpowiednie działania modułu WRITER zostały zebrane i śledzone zgodnie z oczekiwaniami.
Przechowywanie ręcznie utworzonych punktów przywracania nie ma sensu, więc po zebraniu śladu konieczne jest ich usunięcie.vssadmin pozwala na selektywne usuwanie kopii w tle według ich identyfikatorów:
Użyj następującego polecenia, aby wyświetlić migawki VSS:
vssadmin list shadows
Usuń migawki:
vssadmin delete shadows /shadow=SNAPSHOT_GUID
Użyj Podglądu zdarzeń, aby uzyskać kody błędów i komunikaty.
Na hoście, na którym występują problemy z usługą VSS, podgląd zdarzeń można uruchomić za pomocą następujących operacji: eventvwr.msc /s
Ogranicz wyszukiwanie w dziennikach systemu Windows —> aplikacjach i dziennikach> systemu Windows.
Filtruj według: VSS i VolSnap
Komunikaty związane z usługą VSS są tam ostatecznie wyświetlane.