File di log
I log di Utilità di migrazione stato utente (USMT) 10.0 consentono di monitorare la migrazione e risolvere i problemi relativi agli errori e alle migrazioni non riuscite. Questo argomento descrive le opzioni della riga di comando disponibili per abilitare i log di USMT e i nuovi elementi XML che consentono di configurare quali tipi di errori sono irreversibili e devono determinare l'interruzione della migrazione e quali tipi non sono irreversibili e devono essere ignorati per consentire la prosecuzione della migrazione.
Opzioni della riga di comando per i log
Log di ScanState e LoadState
Log di stato
Log dell'elenco dei file
Log di diagnostica
Opzioni della riga di comando per i log
Nella tabella seguente vengono descritte le singole opzioni della riga di comando correlate ai log, viene indicato il nome del log e viene fornita una descrizione del tipo di informazioni che ognuno di essi contiene.
Opzione della riga di comando | Nome file | Descrizione |
---|---|---|
/l[Path\]FileName |
ScanState.log o LoadState.log |
Specifica il percorso e il nome del file ScanState.log o LoadState.log. |
/progress[Path\]FileName |
Specifica il percorso e il nome file del log di stato. |
Fornisce informazioni sullo stato della migrazione, sotto forma di percentuale di completamento. |
/v[VerbosityLevel] |
Non applicabile |
Vedi la sezione "Opzioni di monitoraggio" in Sintassi di ScanState. |
/listfiles[Path\]FileName |
Specifica il percorso e il nome file del log di elenco dei file. |
Fornisce un elenco dei file di cui è stata eseguita la migrazione. |
Imposta la variabile di ambiente MIG_ENABLE_DIAG sul percorso di un file XML. |
USMTDiag.xml |
Il log di diagnostica contiene informazioni dettagliate sull'ambiente di sistema e sull'ambiente utente, nonché informazioni sulle unità di migrazione raccolte e sul relativo contenuto. |
Nota
Non puoi archiviare alcuno dei file di log in StorePath. Tale azione comporterebbe la sovrascrittura del log durante l'esecuzione di USMT.
Log di ScanState e LoadState
I log di ScanState e LoadState sono file di testo che vengono creati durante l'esecuzione degli strumenti ScanState e LoadState e che possono essere utilizzati per monitorare la migrazione. Il contenuto del log dipende dalle opzioni della riga di comando utilizzate e dal livello di dettaglio specificato. Per altre informazioni sui livelli di dettaglio, vedi Opzioni di monitoraggio in Sintassi di ScanState.
Log di stato
Puoi creare un log di stato usando l'opzione /progress. Gli strumenti esterni, ad esempio Microsoft System Center Operations Manager 2007, possono eseguire l'analisi del log di stato per aggiornare i sistemi di monitoraggio. I primi tre campi di ogni riga sono fissi e includono:
Data: data, nel formato day shortNameOfTheMonth year. Ad esempio: 08 giu 2006.
Ora locale: ora, nel formato hrs:minutes:seconds (formato a 24 ore). Ad esempio: 13:49:13.
Durata migrazione: durata dell'esecuzione di USMT, nel formato hrs:minutes:seconds. Ad esempio: 00:00:10.
I campi restanti sono le coppie di chiavi/valori indicate nella tabella seguente.
Chiave | Valore |
---|---|
program |
ScanState.exe o LoadState.exe. |
productVersion |
Numero di versione completo di USMT. |
computerName |
Nome del computer di origine o di destinazione in cui è stato eseguito USMT. |
commandLine |
Comando completo usato per eseguire USMT. |
PHASE |
Indica che viene avviata una nuova fase della migrazione. Le opzioni a disposizione sono:
|
detectedUser |
|
includedInMigration |
Definisce se il componente/profilo utente è incluso per la migrazione. I valori validi sono Yes o No. |
forUser |
Specifica uno degli elementi seguenti:
|
detectedComponent |
Specifica un componente rilevato da USMT.
|
totalSizeInMBToTransfer |
Dimensione totale in MB dei file e delle impostazioni di cui eseguire la migrazione. |
totalPercentageCompleted |
Percentuale totale della migrazione completata da ScanState o LoadState. |
collectingUser |
Specifica l'utente per cui ScanState raccoglie i file e le impostazioni. |
totalMinutesRemaining |
Stima del tempo, in minuti, necessario per completare la migrazione. |
error |
Tipo di errore non irreversibile che si è verificato. Il tipo di errore può essere uno dei seguenti:
|
objectName |
Nome del file o dell'impostazione che ha causato l'errore non irreversibile. |
action |
Azione intrapresa da USMT per l'errore non irreversibile. Sono disponibili i valori seguenti:
|
errorCode |
Codice di errore o valore restituito. |
numberOfIgnoredErrors |
Numero totale di errori non irreversibili ignorati da USMT. |
message |
Messaggio corrispondente al codice di errore. |
Log dell'elenco dei file
Il file Listfiles.txt include un elenco dei file di cui è stata eseguita la migrazione. Tale elenco può essere utilizzato per la risoluzione dei problemi relativi ai file XML oppure conservato come record dei file raccolti nell'archivio delle migrazioni. Il log dell'elenco dei file è disponibile solo per ScanState.exe.
Log di diagnostica
Per ottenere il log di diagnostica, imposta la variabile di ambiente MIG_ENABLE_DIAG sul percorso di un file XML.
Il log di diagnostica contiene:
Informazioni dettagliate sull'ambiente di sistema
Informazioni dettagliate sull'ambiente utente
Informazioni sulle unità di migrazione raccolte e sul relativo contenuto
Utilizzare il log di diagnostica
Il log di diagnostica è sostanzialmente un rapporto delle unità di migrazione incluse nella migrazione. Un'unità di migrazione è una raccolta di dati identificati dal componente a cui sono associati nei file XML. L'archivio di migrazione è costituito da tutte le unità di migrazione nella migrazione. Il log di diagnostica consente di verificare quali unità di migrazione sono state incluse nella migrazione e può essere utilizzato per la risoluzione dei problemi durante la creazione dei file XML di migrazione.
Negli esempi seguenti sono descritti scenari comuni in cui puoi usare il log di diagnostica.
Perché non viene eseguita la migrazione del file nonostante abbia creato una regola di inclusione apposita?
Supponi di disporre della struttura di directory seguente e di voler includere la directory "data" nella migrazione insieme al file "New Text Document.txt" in "New Folder". La directory C:\data contiene:
01/21/2009 10:08 PM <DIR> .
01/21/2009 10:08 PM <DIR> ..
01/21/2009 10:08 PM <DIR> New Folder
01/21/2009 09:19 PM 13 test (1).txt
01/21/2009 09:19 PM 13 test.txt
2 File(s) 26 bytes
La directory C:\data\New Folder contiene:
01/21/2009 10:08 PM <DIR> .
01/21/2009 10:08 PM <DIR> ..
01/21/2009 10:08 PM 0 New Text Document.txt
1 File(s) 0 bytes
Per eseguire la migrazione di questi file, crei il seguente codice XML di migrazione:
<?xml version="1.0" encoding="UTF-8"?>
<migration urlid="https://www.microsoft.com/migration/1.0/TestSuite_BUGFIX">
<component context="System" type="Application">
<displayName>DATA1</displayName>
<role role="Data">
<rules>
<include>
<objectSet>
<pattern type="File">c:\data\ [*]</pattern>
</objectSet>
</include>
</rules>
</role>
</component>
</migration>
Durante il test della migrazione, tuttavia, noti che il file "New Text Document.txt" non è incluso nella migrazione. Per risolvere questo problema, puoi ripetere la migrazione impostando la variabile di ambiente MIG_ENABLE_DIAG in modo che venga generato il log di diagnostica. Dopo una ricerca del componente “DATA1” nel log di diagnostica, viene individuata la sezione XML seguente:
<MigUnitList>
<MigUnit Name="<System>\DATA1 (CMXEAgent)" Context="System" ConfidenceLevel="100" Group="Applications" Role="UserData" Agent="CMXEAgent" Selected="true" Supported="true">
<Patterns Type="Include">
<Pattern Type="File" Path="C:\data [*]"/>
</Patterns>
</MigUnit>
</MigUnitList>
<Perform Name="Gather" User="System">
<MigUnit Name="<System>\DATA1 (CMXEAgent)">
<Operation Name="Store" Type="File" Path="C:\data" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test (1).txt]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test.txt]" SimObj="false" Success="true"/>
</MigUnit>
</Perform>
L'analisi di questa sezione XML consente di scoprire l'unità di migrazione che è stata creata durante l'elaborazione della regola di migrazione. Nella sezione <Perform> sono indicati in dettaglio i file effettivi di cui è stata pianificata la raccolta e il risultato dell'operazione di raccolta. Il file "New Text Document.txt" non è presente in questa sezione, a conferma del fatto che la regola di migrazione non è stata creata correttamente.
L'analisi dell'argomento di riferimento relativo agli elementi XML consente di scoprire che è necessario modificare il tag <pattern> nel modo seguente:
<pattern type="File">c:\data\* [*]</pattern>
Durante l'esecuzione della migrazione con il tag modificato, il log di diagnostica consente di scoprire quanto segue:
<MigUnitList>
<MigUnit Name="<System>\DATA1 (CMXEAgent)" Context="System" ConfidenceLevel="100" Group="Applications" Role="UserData" Agent="CMXEAgent" Selected="true" Supported="true">
<Patterns Type="Include">
<Pattern Type="File" Path="C:\data\* [*]"/>
</Patterns>
</MigUnit>
</MigUnitList>
<Perform Name="Gather" User="System">
<MigUnit Name="<System>\DATA1 (CMXEAgent)">
<Operation Name="Store" Type="File" Path="C:\data" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test (1).txt]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test.txt]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder [New Text Document.txt]" SimObj="false" Success="true"/>
</MigUnit>
</Perform>
Il log di diagnostica conferma che il valore <pattern> modificato consente di eseguire la migrazione del file.
Perché viene eseguita la migrazione del file nonostante abbia creato una regola di esclusione apposita?
In questo scenario disponi della struttura seguente e vuoi eseguire la migrazione di tutti i file nella directory "data", ad eccezione dei file di testo. La cartella C:\Data contiene:
Directory of C:\Data
01/21/2009 10:08 PM <DIR> .
01/21/2009 10:08 PM <DIR> ..
01/21/2009 10:08 PM <DIR> New Folder
01/21/2009 09:19 PM 13 test (1).txt
01/21/2009 09:19 PM 13 test.txt
2 File(s) 26 bytes
La cartella C:\Data\New Folder contiene:
01/21/2009 10:08 PM <DIR> .
01/21/2009 10:08 PM <DIR> ..
01/21/2009 10:08 PM 0 New Text Document.txt
1 File(s) 0 bytes
Crei quindi il codice XML di migrazione seguente:
<?xml version="1.0" encoding="UTF-8"?>
<migration urlid="https://www.microsoft.com/migration/1.0/TestSuite_BUGFIX">
<component context="System" type="Application">
<displayName>DATA1</displayName>
<role role="Data">
<rules>
<include>
<objectSet>
<pattern type="File">c:\data\* [*]</pattern>
</objectSet>
</include>
</rules>
<rules>
<exclude>
<objectSet>
<pattern type="File">c:\* [*.txt]</pattern>
</objectSet>
</exclude>
</rules>
</role>
</component>
Durante il test della migrazione, tuttavia, noti che tutti i file di testo sono inclusi nella migrazione. Per risolvere questo problema, puoi eseguire la migrazione impostando la variabile di ambiente MIG_ENABLE_DIAG in modo che venga generato il log di diagnostica. Dopo una ricerca del componente “DATA1” nel log di diagnostica, viene individuata la sezione XML seguente:
<MigUnitList>
<MigUnit Name="<System>\DATA1 (CMXEAgent)" Context="System" ConfidenceLevel="100" Group="Applications" Role="UserData" Agent="CMXEAgent" Selected="true" Supported="true">
<Patterns Type="Include">
<Pattern Type="File" Path="C:\data\* [*]"/>
</Patterns>
<Patterns Type="Exclude">
<Pattern Type="File" Path="C:\* [*.txt]"/>
</Patterns>
</MigUnit>
</MigUnitList>
<Perform Name="Gather" User="System">
<MigUnit Name="<System>\DATA1 (CMXEAgent)">
<Operation Name="Store" Type="File" Path="C:\data" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test (1).txt]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test.docx]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test.txt]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder [New Text Document.txt]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder [test.docx]" SimObj="false" Success="true"/>
</MigUnit>
</Perform>
L'analisi del log di diagnostica conferma che viene comunque eseguita la migrazione dei file e che il problema riguarda la regola XML di migrazione creata. Crei quindi un aggiornamento dello script XML di migrazione nel modo seguente:
<?xml version="1.0" encoding="UTF-8"?>
<migration urlid="https://www.microsoft.com/migration/1.0/TestSuite_BUGFIX">
<component context="System" type="Application">
<displayName>DATA1</displayName>
<role role="Data">
<rules>
<include>
<objectSet>
<pattern type="File">c:\data\* [*]</pattern>
</objectSet>
</include>
</rules>
<rules>
<exclude>
<objectSet>
<pattern type="File">c:\data\* [*.txt]</pattern>
</objectSet>
</exclude>
</rules>
</role>
</component>
</migration>
Lo script XML di migrazione modificato esclude i file dalla migrazione, come confermato dal log di diagnostica:
<MigUnitList>
<MigUnit Name="<System>\DATA1 (CMXEAgent)" Context="System" ConfidenceLevel="100" Group="Applications" Role="UserData" Agent="CMXEAgent" Selected="true" Supported="true">
<Patterns Type="Include">
<Pattern Type="File" Path="C:\data\* [*]"/>
</Patterns>
<Patterns Type="Exclude">
<Pattern Type="File" Path="C:\data\* [*.txt]"/>
</Patterns>
</MigUnit>
</MigUnitList>
<Perform Name="Gather" User="System">
<MigUnit Name="<System>\DATA1 (CMXEAgent)">
<Operation Name="Store" Type="File" Path="C:\data" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data [test.docx]" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder" SimObj="false" Success="true"/>
<Operation Name="Store" Type="File" Path="C:\data\New Folder [test.docx]" SimObj="false" Success="true"/>
</MigUnit>
</Perform>