Alternativer for VSS-sporing og feilsøking
Sammendrag: Denne artikkelen beskriver hvordan det er mulig å implementere noen sporingsalternativer for Microsoft Volume Shadow Copy Service VSS. Noen ganger er det nødvendig å samle inn feilsøkingsinformasjon på VSS-laget for å feilsøke problemer som involverer oppretting av øyeblikksbilder. ...
Instruksjoner
VSS-teknologi er en grunnleggende komponent i flere databeskyttelsesløsninger og forenkler sikkerhetskopieringsfunksjonene til Microsoft Windows-systemer. Likevel kan mange elementer gjøre at et VSS-øyeblikksbilde mislykkes, og det kan være nyttig å utvide feilsøkingen på VSS-komponenten og dens moduler.
Denne artikkelen er basert på VSSTrace.exe binært verktøy som tilbyr flere alternativer for sporing av VSS-tjenesten når øyeblikksbildet forsøkes, og som kan gi meningsfull informasjon for feilsøkingsformål.VSSTrace.exe er inkludert i Microsoft Windows Software Development Kit (SDK) som kan lastes ned fra Microsoft Download Center: Nedlastinger for Windows SDK – Windows-apper | Microsoft Learn
Hvis du vil ha mer informasjon om VSSTrace.exeSe: Bruke sporingsverktøy med VSS – Win32-apper | Microsoft Learn
Når Windows SDK er installert, vsstrace.exe finner du på følgende sted.
C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\vsstrace.exe
Følgende kommandosyntaks brukes til å omdirigere VSSTrace Utdata til en fil:vsstrace -o c:\Temp\VSSTrace\myTrace1.txt
Når VSS-øyeblikksbildene forsøkes, skrives de sporede VSS-modulene til loggfilen slik at videre analyse kan utføres.
VSS-modul Betraktninger:
Selektiv sporing for VSS-moduler som antas å være relevante for videre feilsøking, kan bidra til å redusere størrelsen på innsamlede data og sporingsfiler. VSSTrace tillater sporing av spesifikke og navngitte moduler, for eksempel: VSS-tjenesten er selv kjent som koordinatoren, rekvirenten, VSS-forfatterne, så videre. Hvis det er tvil om at en feil er generert av anmoderen eller av forfattere, begrens sporingen til en bestemt modul eller moduler.
Hver modul har en maske som kan brukes som et flagg i uttalelsen for VSSTrace. Følgende setning vil for eksempel deaktivere sporing for alle modulene (-f 0) og aktiverer sporingen for VSS-forfattere:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Når sporingen starter, vises masken 0x00000010 rapporteres og tilsvarer Writer-modulflagget.
Det er da mulig å legge til alle modulene etter syntaksen: -f 0 +<MODULE> +<MODULE> +<MODULE> ...
En liste over tilgjengelige moduler kan fås ved å bruke følgende kommando:
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
Nivå Betraktninger:
Det er 21 forskjellige nivåer med standardinnstillingen satt til 170 , noe som betyr at opptil modulens funksjonsreturverdier logges. Nivå 255 er maksimum, men mye data inkluderes i sporingsfilen hvis dette nivået velges.
Følgende eksempel aktiverer sporingsnivå 190: Funksjonsparametere som bare er detaljerte for VSS-tjenesten:
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 rapporteres deretter som gjeldende sporingsnivå for modul hvis maske er 0x00000002 tilsvarende VSS-koordinator.
Beskrivelsen for de tilgjengelige nivåene er her nedenfor for referanse:
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
Feilsøking av manuelle øyeblikksbilder:
Den beste måten ville være å replikere brukstilfellet som utløser feilsituasjonen, men siden dette kanskje ikke alltid er mulig, den enkleste tilnærmingen for å kontrollere VSS-tjenestefunksjonaliteten og teste om VSSTrace Binær har blitt riktig konfigurert med de ønskede parameterne er å generere et gjenopprettingspunkt på forespørsel.
Her opprettes et gjenopprettingspunkt på forespørsel som igjen resulterer i opprettelse av skyggekopier:
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 Returnerer listen over gjeldende tilgjengelige skygger, og etter opprettelsesdato og -klokkeslett identifiseres gjenopprettingspunktene som er opprettet manuelt.
Aktiver nå VSSTrace og generere et gjenopprettingspunkt, start et VSS-spor som kanskje allerede inneholder noen interessante data for videre feilsøking.
I figuren ovenfor ble det opprettet et gjenopprettingspunkt mens VSSTrace ble aktivert for WRITER-modulen bare:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Da gjenopprettingspunktet ble opprettet og VSS-tjenesten aktivert, ble de relevante WRITER-modulaktivitetene samlet inn og sporet som forventet.
Det gir ingen mening å holde manuelt opprettede gjenopprettingspunkter, så etter at sporet er samlet, er det nødvendig å fjerne dem.vssadmin tillater selektiv fjerning av skyggekopier av ID-ene deres:
Bruk følgende kommando for å liste VSS-øyeblikksbilder:
vssadmin list shadows
Slett øyeblikksbildene:
vssadmin delete shadows /shadow=SNAPSHOT_GUID
Bruk Hendelsesliste til å hente feilkoder og meldinger.
I verten der VSS-problemer oppstår, kan hendelseslisten kjøres av: eventvwr.msc /s
Begrens søket i Windows-logger --> Program- og Windows-logger --> System.
Filtrer etter: VSS og VolSnap
VSS-relaterte meldinger vises til slutt der.