Archivos de registro
Puedes usar los registros de la Herramienta de migración de estado de usuario (USMT) 5.0 para supervisar la migración y solucionar los errores y las migraciones que no se completaron. En este tema se describen las opciones de la línea de comandos disponibles para habilitar los registros de USMT. También se detallan nuevos elementos XML para configurar los tipos de errores que son irrecuperables y deberían detener la migración, y los que son recuperables y se deben ignorar para que la migración pueda continuar.
Opciones de la línea de comandos de registros
Registros de ScanState y LoadState
Registro de progreso
Registro de archivos de lista
Registro de diagnóstico
Opciones de la línea de comandos de registros
En la siguiente tabla se describen las opciones de la línea de comandos relacionadas con los registros. También se proporciona el nombre de los registros y una descripción del tipo de información que contiene cada uno.
Opción de la línea de comandos | Nombre de archivo | Descripción |
---|---|---|
/l: [Path\]FileName |
Scanstate.log o LoadState.log |
Especifica la ruta de acceso y el nombre de archivo del registro de ScanState o LoadState. |
/progress: [Path\]FileName |
Especifica la ruta de acceso y el nombre de archivo del registro de progreso. |
Contiene información sobre el estado de la migración por porcentaje completado. |
/v: [VerbosityLevel] |
No aplicable |
Consulta la sección "Opciones de supervisión" en Sintaxis de ScanState. |
/listfiles [Path\]FileName |
Especifica la ruta de acceso y el nombre de archivo del registro Listfiles. |
Proporciona una lista de los archivos que se migraron. |
Establece la variable de entorno MIG_ENABLE_DIAG en una ruta de acceso a un archivo XML. |
USMTDiag.xml |
El registro de diagnóstico contiene información detallada del entorno del sistema y del entorno del usuario, así como información sobre las unidades de migración (migunits) recopiladas y su contenido. |
Nota
No puedes almacenar los archivos de registro en StorePath. Si lo haces, el registro se sobrescribirá cuando se ejecute USMT.
Registros de ScanState y LoadState
Los registros de ScanState y LoadState son archivos de texto que se crean cuando ejecutas las herramientas ScanState y LoadState. Puedes usarlos para supervisar la migración. El contenido de estos archivos dependerá de las opciones de la línea de comandos que uses y del nivel de detalle que especifiques. Para obtener más información sobre los niveles de detalle, consulta Opciones de supervisión en Sintaxis de ScanState.
Registro de progreso
Puedes crear un archivo de progreso por medio de la opción /progress. Algunas herramientas externas, como Microsoft System Center Operations Manager 2007, pueden analizar el registro de progreso para actualizar los sistemas de supervisión. Los tres primeros campos de cada línea aparecen dispuestos del siguiente modo:
Date: fecha con el formato díanombreCortoDelMesaño. Por ejemplo: 08 jun 2006.
Local time: hora con el formato horas:minutos:segundos (usando un reloj de 24 horas). Por ejemplo: 13:49:13.
Migration time: duración de la ejecución de USMT con el formato horas:minutos:segundos. Por ejemplo: 00:00:10.
El resto de campos son pares clave-valor, tal y como se indica en la siguiente tabla.
Clave | Valor | |
---|---|---|
program |
ScanState.exe o LoadState.exe. |
|
productVersion |
Número completo de versión del producto de USMT. |
|
computerName |
Nombre del equipo de origen o destino en el que se ejecutó USMT. |
|
commandLine |
Comando completo usado para ejecutar USMT. |
|
PHASE |
Informa que se está iniciando una nueva fase de la migración. Puede ser uno de los siguientes:
|
|
detectedUser |
|
|
includedInMigration |
Define si el perfil de usuario o componente se incluye en la migración. Los valores válidos son Yes o No. |
|
forUser |
Especifica cualquiera de los siguientes elementos:
|
|
detectedComponent |
Especifica un componente que encontró USMT.
|
|
totalSizeInMBToTransfer |
Tamaño total en megabytes (MB) de los archivos y las opciones de configuración que se van a migrar. |
|
totalPercentageCompleted |
Porcentaje total de la migración que ScanState o LoadState han completado. |
|
collectingUser |
Especifica el usuario del que ScanState recopila archivos y opciones de configuración. |
|
totalMinutesRemaining |
Estimación de tiempo (en minutos) que queda para que la migración finalice. |
|
error |
Tipo de error recuperable que tuvo lugar. Puede ser uno de los siguientes:
|
|
objectName |
Nombre del archivo o la configuración que provocó el error recuperable. |
|
action |
Acción que USMT lleva a cabo en relación con el error recuperable. Los valores son:
|
|
errorCode |
Código de error o valor de retorno. |
|
numberOfIgnoredErrors |
Número total de errores recuperables que USMT omitió. |
|
message |
Mensaje correspondiente al código de error. |
Registro de archivos de lista
El registro de archivos de lista (Listfiles.txt) proporciona una lista de los archivos que se migraron. Esta lista puede servir para solucionar problemas de XML o bien usarse a modo de registro de los archivos que se recopilaron en el almacén de migración. El registro de archivos de lista solo está disponible para ScanState.exe.
Registro de diagnóstico
Puedes obtener el registro de diagnóstico si estableces la variable de entorno MIG_ENABLE_DIAG en una ruta de acceso a un archivo XML.
El registro de diagnóstico contiene:
Información detallada del entorno del sistema
Información detallada del entorno del usuario
Información sobre las unidades de migración (migunits) recopiladas y su contenido
Uso del registro de diagnóstico
Básicamente, el registro de diagnóstico es un informe donde figuran todas las unidades de migración (migunits) incluidas en la migración. Una unidad de migración es una colección de datos que se identifica mediante el componente asociado en los archivos XML. El almacén de migración está formado por todas las unidades de migración de la migración. Puedes usar el registro de diagnóstico para comprobar qué unidades de migración se incluyeron en la migración y para solucionar problemas durante la creación de los archivos XML de migración.
Los siguientes ejemplos describen los escenarios comunes en los que puedes usar el registro de diagnóstico.
¿Por qué no se migra este archivo cuando he creado una regla "include" para incluirlo?
Supongamos que tenemos la siguiente estructura de directorios y queremos que el directorio “data” se incluya en la migración, junto con el archivo “New Text Document.txt” ubicado en “New Folder”. El directorio 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
El directorio 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
Para migrar estos archivos, creas el siguiente archivo XML de migración:
<?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>
Sin embargo, al probar la migración observas que el archivo “New Text Document.txt” no se ha incluido. Para solucionar este problema, la migración se puede repetir con la variable de entorno MIG_ENABLE_DIAG establecida, de forma que se genere el registro de diagnóstico. Al buscar el componente “DATA1” en el registro de diagnóstico, hallamos la siguiente sección XML:
<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>
El análisis de esta sección XML pone de manifiesto que la unidad de migración se creó cuando se procesó la regla de migración. En la sección <Perform> se detallan los archivos cuya recopilación fue programada, así como el resultado de la operación de recopilación en sí. El archivo “New Text Document.txt” no aparece en esta sección, lo cual confirma que la regla de migración no se creó correctamente.
Un análisis del tema de referencia de elementos XML revela que la etiqueta <pattern> necesita modificarse de la siguiente forma:
<pattern type="File">c:\data\* [*]</pattern>
Cuando la migración se vuelve a realizar con la etiqueta modificada, el registro de diagnóstico indica lo siguiente:
<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>
El registro de diagnóstico confirma que el valor de <pattern> modificado permite que el archivo se migre.
¿Por qué se migra este archivo cuando he creado una regla "exclude" para excluirlo?
En este escenario, tienes la siguiente estructura de directorios y quieres que todos los archivos del directorio “data” se migren, excepto los archivos de texto. La carpeta 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 carpeta 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
Creas el siguiente XML de migración:
<?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>
Sin embargo, al probar la migración observas que todos los archivos de texto se siguen incluyendo en la migración. Para solucionar este problema, puedes realizar la migración con la variable de entorno MIG_ENABLE_DIAG establecida, de forma que se genere el registro de diagnóstico. Al buscar el componente “DATA1” en el registro de diagnóstico, hallamos la siguiente sección XML:
<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>
Al revisar el registro de diagnóstico, confirmas que los archivos se siguen migrando y que el problema reside en la regla XML de migración creada. Creas una actualización para el script XML de migración del siguiente modo.
<?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>
El script XML de migración revisado excluye los archivos de la migración, tal y como señala el registro de diagnóstico:
<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>
Consulte también
Otros recursos
Biblioteca de elementos XML
Sintaxis de ScanState
Sintaxis de LoadState