Opzioni di tracciamento e risoluzione dei problemi VSS
Riepilogo: Questo articolo descrive come implementare alcune opzioni di traccia per Servizio Copia Shadow del volume Microsoft VSS. A volte è necessario raccogliere informazioni di debug a livello VSS per la risoluzione dei problemi relativi alla creazione di snapshot. ...
Istruzioni
La tecnologia VSS è un componente fondamentale in molte soluzioni di protezione dei dati e facilita le funzionalità di backup dei sistemi Microsoft Windows. Ciononostante, molti elementi possono causare l'esito negativo di un'istantanea VSS e potrebbe essere utile estendere la risoluzione dei problemi al componente VSS e ai relativi moduli.
Questo articolo si basa sull'argomento VSSTrace.exe Strumento binario che offre diverse opzioni per il tracciamento del servizio VSS nel momento in cui viene tentata l'istantanea e potrebbe fornire informazioni significative per la risoluzione dei problemi.VSSTrace.exe è incluso con Microsoft Windows Software Development Kit (SDK) che può essere scaricato da Microsoft Download Center: Download di Windows SDK - App di Windows | Microsoft Learn
Per ulteriori informazioni su VSSTrace.exeVedere: Utilizzo degli strumenti di traccia con VSS - App Win32 | Microsoft Learn
Una volta installato Windows SDK, vsstrace.exe può essere trovato nella seguente posizione.
C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\x64\vsstrace.exe
La sintassi del comando seguente viene utilizzata per reindirizzare VSSTrace Output in un file:vsstrace -o c:\Temp\VSSTrace\myTrace1.txt
Nel momento in cui si tenta di eseguire le istantanee VSS, i moduli VSS tracciati vengono scritti nel file di registro in modo da poter eseguire ulteriori analisi.
Considerazioni sul modulo VSS:
Il tracciamento selettivo per i moduli VSS ritenuti rilevanti per un'ulteriore risoluzione dei problemi può contribuire a ridurre le dimensioni dei dati raccolti e del file di traccia. VSSTrace consente il tracciamento di moduli specifici e denominati, ad esempio: il servizio VSS è noto come coordinatore, richiedente, writer VSS e così via. Se c'è il dubbio che un errore sia generato dal richiedente o dai writer, limitare la traccia a uno o più moduli specifici.
Ogni modulo dispone di una maschera che può essere utilizzata come flag nell'istruzione per VSSTrace. L'istruzione seguente, ad esempio, disabiliterà l'analisi per tutti i moduli (-f 0) e abiliterà la traccia per i writer VSS:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
All'avvio della traccia, la maschera 0x00000010 viene segnalato e corrisponde al flag del modulo Writer.
E' quindi possibile aggiungere tutti i moduli seguendo la sintassi: -f 0 +<MODULE> +<MODULE> +<MODULE> ...
È possibile ottenere un elenco dei moduli disponibili utilizzando il seguente comando:
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
Considerazioni sul livello:
Ci sono 21 livelli diversi con l'impostazione predefinita a 170 , il che significa che vengono registrati fino a valori restituiti dalla funzione dei moduli. Il livello 255 è il massimo, ma nel file di traccia vengono inclusi molti dati se è selezionato questo livello.
Nell'esempio seguente viene abilitato il livello di traccia 190: Parametri funzione Verbose solo per il servizio 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 viene quindi riportato come livello di tracciamento corrente per il modulo la cui maschera è 0x00000002 corrispondente al coordinatore VSS.
La descrizione dei livelli disponibili è di seguito come riferimento:
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
Risoluzione manuale dei problemi relativi alle istantanee:
Il modo migliore sarebbe quello di replicare il caso d'uso che attiva la situazione di errore ma, poiché ciò potrebbe non essere sempre possibile, l'approccio più semplice per verificare la funzionalità del servizio VSS e verificare se il VSSTrace Il binario è stato impostato correttamente con i parametri desiderati per generare un punto di ripristino su richiesta.
Qui viene creato un punto di ripristino su richiesta, che a sua volta determina la creazione di una copia shadow:
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 Restituisce l'elenco delle shadow disponibili correnti e, in base alla data e all'ora di creazione, vengono identificati i punti di ripristino creati manualmente.
Ora, abilitando il VSSTrace e generando un punto di ripristino, avviare una traccia VSS che potrebbe già includere alcuni dati interessanti per un'ulteriore risoluzione dei problemi.
Nella figura precedente, è stato creato un punto di ripristino mentre il VSSTrace è stato abilitato solo per il modulo WRITER:vsstrace -f 0 +WRITER -o C:\Temp\VSSTrace\myTraceWriters.txt
Una volta creato il punto di restore e richiamato il servizio VSS, le attività del modulo WRITER pertinenti sono state raccolte e tracciate come previsto.
Mantenere i punti di ripristino creati manualmente non ha senso, quindi, dopo aver raccolto la traccia, è necessario rimuoverli.vssadmin consente la rimozione selettiva delle copie shadow in base ai relativi ID:
utilizzare il seguente comando per elencare le istantanee VSS:
vssadmin list shadows
Eliminare le istantanee:
vssadmin delete shadows /shadow=SNAPSHOT_GUID
Utilizzare il Visualizzatore eventi per ottenere codici e messaggi di errore.
Nell host in cui si verificano i problemi VSS, il visualizzatore eventi può essere eseguito da: eventvwr.msc /s
Limitare la ricerca all'interno di Windows Logs --> Application e Windows Logs --> System.
Filtra per: VSS e VolSnap
I messaggi relativi a VSS vengono infine visualizzati lì.