Файлы журнала
Назначение: Windows 7, Windows 8, Windows 8.1
Журналы Средство миграции пользовательской среды 5.0 позволяют следить за проведением миграции и диагностировать возникающие ошибки и сбои. В этом разделе описываются доступные параметры командной строки, позволяющие включить ведение журналов Средство миграции пользовательской среды, а также новые XML-элементы, с помощью которых можно задать типы неустранимых ошибок, прерывающих миграцию, и типы некритических ошибок, которые следует пропускать и продолжать миграцию.
Параметры командной строки журнала
Журналы ScanState и LoadState
Журнал выполнения
Журнал файлов
Журнал диагностики
Параметры командной строки журнала
Ниже в таблице приводятся определения всех параметров командной строки для работы с журналами, указывается имя каждого журнала и описывается содержащийся в нем тип информации.
Параметр командной строки | Имя файла | Описание |
---|---|---|
/l: [Путь\]ИмяФайла |
Scanstate.log или LoadState.log |
Задает путь и имя файла для журнала ScanState.log или LoadState.log. |
/progress: [Путь\]ИмяФайла |
Задает путь и имя файла для журнала хода выполнения. |
Содержит информацию о состоянии миграции (процент выполнения). |
/v: [УровеньПодробности] |
Не применяется |
См. подраздел "Параметры наблюдения" в разделе Синтаксис ScanState. |
/listfiles [Путь\]ИмяФайла |
Задает путь и имя файла для журнала Listfiles log. |
Содержит список перенесенных файлов. |
Задает путь к XML-файлу для переменной среды MIG_ENABLE_DIAG. |
USMTDiag.xml |
Журнал диагностики содержит подробную информацию о системной среде, пользовательской среде, о собираемых объектах миграции (migunits) и их содержимом. |
Примечание
Файлы журналов нельзя хранить в папке StorePath. Сохраненный в этой папке журнал будет перезаписан при запуске Средство миграции пользовательской среды.
Журналы ScanState и LoadState
Журналы ScanState и LoadState представляют собой текстовые файлы, создаваемые при работе средств ScanState и LoadState. Эти журналы помогают следить за ходом миграции. Содержимое журнала зависит от применяемых параметров командной строки и от заданного уровня детализации. Подробнее об уровнях детализации см. в подразделе "Параметры наблюдения" раздела Синтаксис ScanState.
Журнал выполнения
Журнал выполнения создается при помощи параметра /progress. Внешние средства, например Microsoft System Center Operations Manager 2007, способны анализировать журнал выполнения и обновлять данные систем мониторинга. Первые три поля в каждой строке зафиксированы. Это поля:
Date (дата): дата в формате денькраткое_название_месяцагод. Например: "08 июн 2006".
Local time (местное время): время в формате часы:минуты:секунды (в 24-часовом представлении). Например: "13:49:13".
Migration time (продолжительность миграции): продолжительность выполнения Средство миграции пользовательской среды в формате часы:минуты:секунды. Например: "0:00:10".
Остальные поля представляют собой пары "ключ-значение" (см. таблицу ниже).
Ключ | Значение | |
---|---|---|
program |
ScanState.exe или LoadState.exe. |
|
рroductVersion |
Полный номер версии Средство миграции пользовательской среды. |
|
computerName |
Имя исходного или конечного компьютера, на котором выполнялось средство Средство миграции пользовательской среды. |
|
commandLine |
Полная команда, применявшаяся для запуска Средство миграции пользовательской среды. |
|
PHASE |
Извещает о начале нового этапа миграции. Может иметь значения:
|
|
detectedUser |
|
|
includedInMigration |
Определяет, включен ли в миграцию профиль или компонент пользователя. Допустимые значения: Yes (да) или No (нет). |
|
forUser |
Задает одно из следующих значений.
|
|
detectedComponent |
Задает компонент, обнаруженный средством Средство миграции пользовательской среды.
|
|
totalSizeInMBToTransfer |
Указывает общий размер переносимых файлов и параметров в мегабайтах (МБ). |
|
totalPercentageCompleted |
Указывает общий процент миграции, выполненной средством ScanState или LoadState. |
|
collectingUser |
Указывает пользователя, для которого ScanState собирает файлы и параметры. |
|
totalMinutesRemaining |
Указывает примерное время завершения миграции в минутах. |
|
error |
Указывает тип возникшей некритической ошибки. Возможные значения:
|
|
objectName |
Указывает имя файла или параметра, вызвавшего некритическую ошибку. |
|
action |
Указывает действие, которое Средство миграции пользовательской среды выполняет при возникновении некритической ошибки. Возможные значения:
|
|
errorCode |
Указывает код ошибки или возвращаемое значение. |
|
numberOfIgnoredErrors |
Указывает общее количество некритических ошибок, проигнорированных средством Средство миграции пользовательской среды. |
|
message |
Указывает сообщение, соответствующее коду ошибки. |
Журнал файлов
Журнал файлов (Listfiles.txt) содержит список перенесенных файлов. Этот список можно использовать для диагностики проблем с XML-файлом или сохранить как перечень файлов, собранных в хранилище миграции. Журнал файлов доступен только при использовании ScanState.exe.
Журнал диагностики
Журнал диагностики можно сформировать, указав для переменной среды MIG_ENABLE_DIAG путь к XML-файлу.
Журнал диагностики содержит:
Подробные сведения о системной среде
Подробные сведения о пользовательской среде
Сведения о собираемых объектах миграции (migunits) и их содержимом
Использование журнала диагностики
Журнал диагностики по существу является отчетом обо всех объектах миграции, включенных в миграцию. Объект миграции – это коллекция данных, определяемая соответствующим ей компонентом XML-файла. Хранилище миграции образуют все включенные в миграцию объекты миграции. Журнал диагностики позволяет проверить, какие объекты миграции включены в миграцию, и устранить ошибки при создании XML-файлов миграции.
Далее в примерах описаны типичные сценарии, в которых можно использовать журнал диагностики.
Почему не выполняется миграция файла, если для него было создано правило включения?
Предположим, у нас имеется следующая структура каталогов и в миграцию нужно включить каталог "data" и файл "Новый текстовый документ.txt" из папки "Новая папка". Ниже приведено содержание каталога 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
Ниже приведено содержание папки C:\Data\Новая папка.
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
Для миграции этих файлов создается следующий XML-файл миграции:
<?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>
Однако при проверке миграции вы замечаете, что файл "Новый текстовый документ.txt" не включен в миграцию. Для диагностики этого сбоя можно повторить миграцию, задав для переменной среды MIG_ENABLE_DIAG параметр, обеспечивающий генерацию журнала диагностики. При поиске компонента "DATA1" в журнале диагностики обнаруживается следующий 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>
Анализе этого XML-раздела показывает, что при обработке правила миграции был создан объект миграции. Раздел <Perform> содержит сведения о файлах, запланированных для сбора, и результаты операции сбора. Этот раздел не содержит файл "Новый текстовый документ.txt", и таким образом подтверждается, что правило миграции было создано неверно.
При анализе раздела руководства по XML-элементам выясняется, что тег <pattern> нужно изменить следующим образом:
<pattern type="File">c:\data\* [*]</pattern>
При повторном выполнении миграции после изменения тега в журнале диагностики обнаруживаются следующие сведения:
<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>
Журнал диагностики подтверждает, что измененное значение тега <pattern> обеспечило миграцию файла.
Почему переносится файл, если для него было создано правило исключения?
В этом сценарии имеется следующая структура каталогов и требуется перенести все файлы каталога "data" за исключением текстовых. Ниже приведено содержание папки C:\Data.
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
Ниже приведено содержание папки C:\Data\Новая папка.
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
Создается следующий XML-файл миграции:
<?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>
Однако при проверке миграции оказывается, что в миграцию включены все текстовые файлы. Для диагностики этой проблемы можно выполнить миграцию, задав для переменной среды MIG_ENABLE_DIAG параметр, обеспечивающий генерацию журнала диагностики. При поиске компонента "DATA1" в журнале диагностики обнаруживается следующий 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>
При анализе журнала диагностики подтверждается, что файлы по-прежнему переносятся и что проблема связана с созданным XML-правилом миграции. Для XML-сценария миграции создается следующее обновление:
<?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>
Измененный 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:\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>
См. также
Ссылка
Синтаксис ScanState
Синтаксис LoadState