Меню Рубрики

Windows 10 лог обновления

Просмотр журнала обновлений WindowsUpdate.log в Windows 10 / Windows Server 2016

Исторически для анализа работы агента и службы обновления Windows используется текстовый файл WindowsUpdate.log. Однако в Windows 10 (Windows Server 2016/2019) вместо привычного текстового файла логи Windows Update ведутся в формате Event Tracing for Windows (ETW). За счет этого увеличивается быстродействие подсистемы записи логов и экономится место на диске.

Таким образом, события Windows Update теперь больше не записываются в реальном времени в файл %windir%\WindowsUpdate.log. И хотя сам файл все еще присутствует в корне папки Windows, в нем лишь указано, что для сбора логов теперь применяется формат ETW.

Главное неудобство для администраторов – теперь вы не можете быстро проанализировать текстовый файл WindowsUpdate.log, найти ошибки в службе агента обновлений Windows (см. полный список ошибок Windows Update), проверить настройки WSUS и проанализировать историю установки обновлений.

Вы можете сконвертировать события ETW в привычный текстовый формат WindowsUpdate.log для более удобного анализа событий службы обновлений. Для этого используется командлет PowerShell — Get-WindowsUpdateLog. Данный командлет позволяет собрать информацию со всех .etl файлов (хранятся в каталоге C:\WINDOWS\Logs\WindowsUpdate) и сформировать один файл WindowsUpdate.log.

Чтобы сформировать файл WindowsUpdate.log и поместить его в каталог C:\PS\Logs, выполните следующую команду в консоли PowerShell:

Get-WindowsUpdateLog -logpath C:\PS\Logs\WindowsUpdate.log

Файл “C:\Program Files\Windows Defender\SymSrv.dll” обычно отсутствует, если на сервере не установлен антивирус Windows Defender.

Чтобы исправить ошибку, вы можете установить Defender, скопировать файл SymSrv.dll с другого Windows Server 2016/ Windows 10 или поиском найти его в каталоге “C:\Windows\WinSxS\” (у меня каталог назывался C:\Windows\WinSxS\amd64_windows-defender-service-cloudclean_…) и скопировать его в папку C:\Program Files\Windows Defender.

В старых версиях Windows 10 при первом запуске командлет Get-WindowsUpdateLog скачает и установит сервер символов Microsoft (Microsoft Internet Symbol Store). В последних версиях Windows 10 выполняется онлайн доступ к серверу символов Microsoft в Azure. Затем командлет:

  1. Собирает данные из всех .etl файлов;
  2. Преобразует данные в CSV (по-умолчанию) или XML формат;
  3. Переконвертирует данные из промежуточных файлов и добавляет их в текстовый файл журнала, указанного в параметре LogPath (если параметр LogPath не задан, файл WindowsUpdate.log создается на рабочем столе пользователя, запустившего команду).

Это значит, что у вас не установлен сервер символов Windows Symbol (сейчас нельзя скачать отдельную программу установки Windows symbols, т.к. они автоматически загружаются из хранилища символов в Azure). Для изолированных сред вы можете использовать офлайн версию сервера символов согласно статье Offline Symbols for Windows Update.

Откройте файл журнала с помощью такой команды PowerShell:

Invoke-Item -Path C:\PS\Logs\WindowsUpdate.log

Анализировать получившийся файл WindowsUpdate.log довольно сложно, т.к. в нем собираются данные из множества источников:

  • AGENT- события агента Windows Update;
  • AU – автоматическое обновление;
  • AUCLNT- взаимодействие с пользователем;
  • HANDLER- управление установщиком обновлений;
  • MISC- общая информация;
  • PT- синхронизация обновлений с локальным хранилищем;
  • REPORT- сбор отчетов;
  • SERVICE- запуск/выключение службы wuauserv;
  • SETUP- установка новых версий клиента Windows Update;
  • DownloadManager – загрузка обновлений в локальных кэш;
  • Handler, Setup – заголовки установщиков (CBS и т.п.);
  • И т.д.

Вы можете выбрать последние 30 событий от агента обновления Windows (agent) с помощью простого регулярного выражения:

Select-String -Pattern ‘\sagent\s’ -Path C:\PS\Logs\WindowsUpdate.log | Select-Object -Last 30

Можно отфильтровать события в логе по нескольким источникам:

Select-String -Pattern ‘\sagent\s|\smisc\s’ -Path c:\PS\Logs\WindowsUpdate.log | Select-Object -Last 50

Аналогично вы можете искать события по номеру KB, ошибка (строки FAILED, Exit Code, FATAL).

Также вы можете сформировать файл WindowsUpdate.log для удаленного компьютера/сервера:

Get-WindowsUpdateLog -ETLPath \\PC221\C$\windows\Logs\WindowsUpdate -LogPath C:\PS\Logs\windowsupdatePC221.log

Также для анализа работы службы обновлений Windows может быть полезны журналы Event Viewer в разделе Applications and Services Logs -> Microsoft -> Windows –> WindowsUpdateClient -> Operational.

Источник

SetupDiag — средство диагностики ошибок обновлений в Windows 10

Согласно жизненному циклу Windows 10 пользователи должны устанавливать большие пакеты обновлений чаще, чем в предыдущих версиях Windows. Апгрейд версии Windows 10 происходит 2 раза в год. На текущий момент – последняя актуальная версия Windows 10 1803 (April 2018 Update). Апгрейд версии Windows 10 можно сравнить с установкой Service Pack в более ранних версиях Windows. Участники программы предварительной оценки — Windows 10 Insider Preview устанавливают такие сборки гораздо чаще — за месяц билд системы обновляется 3-4 раза ( как посмотреть историю обновлений Windows 10 ).

Процесс обновления версии Windows 10 не всегда выполняется корректно. По разным причинам процесс установки новой сборки может завершиться с ошибкой. Однако не всегда возможно понять, из-за чего именно не смогло установиться обновление, Windows просто не отображает содержательную информации о причине невозможности установить обновление. Однако вся нужная информация о процедуре обновления версии хранится в лог-файлах. Эта информация может пригодится вам при выполнении диагностики проблем с обновлением Windows 10.

Данные журналы представляют обычные текстовые файлы, и чтобы вручную найти в них полезную информацию нужно быть настоящим Windows-экспертом.

Утилита SetupDiag.exe

К счастью Microsoft недавно выпустила новую отдельную диагностическую утилиту SetupDiag.exe , которая позволяет получить детальную информацию о причинах, из-за которых не удалось выполнить обновление версии Windows 10 на вашем компьютере.

Данная утилита консольная, ее нужно запустить непосредственно на компьютере с Win10, который не удается обновить, либо в офлайн режиме на другом компьютере, на который предварительно нужно скопировать файлы логов с проблемного компьютера.

Утилита SetupDiag сканирует логи установки Windows, и ищет в ней определенные ошибки, которые свидетельствуют о той или иной проблеме обновления Windows.

Утилита SetupDiag.exe предназначена для Windows 10 и для своей работы требует наличие установленного .NET Framework 4.6 или выше ( как определить какие версии .NET Framework установлены на вашем компьютере ). Использовать утилиту можно как для анализа ошибок апгрейда билдовWindows 10, так и при обновлении до Windows 10 с Windows 7 SP1 или Windows 8.1 (файлы логов обновлений придется скопировать для анализа на компьютер с Windows 10).

Скачайте утилиту SetupDiag по ссылке https://go.microsoft.com/fwlink/?linkid=870142 и запустите с правами администратора. При запуске без параметров утилита пытается найти файлы логов, которые Windows 10 создает в процесс обновления.

Выполняется поиск по различным стандартным путям, которые создаются системой на разных этапах установки новой сборки. Файлы логов по-умолчанию хранятся в следующих папках:

bt\Sources\Rollback – в этом каталоге появляются файлы обновлений, если процесс апгрейда Windows 10 завершился с ошибкой и пришлось откатываться на предыдущий билд.
\$Windows.

bt\sources\panther

  • \Windows\Panther
  • \Windows\Panther\NewOS
  • После окончания анализа логов, утилита создает в каталоге, из которого она запущена файл results.log , в котором содержится список найденных ошибок, которые возникли в процессе обновления (местоположение итогового файла можно указать с помощью ключа / Output) . Кроме того, утилита формирует zip архив с исходными файлами логов.

    Можно запустить утилиту в офлайн режиме, запустив сканирование файлов журналов, скопированных с другого компьютера. Например, чтобы выполнить поиск файлов логов в определенной папке в офлайн режиме и сохранить результат в указанный файл, выполните:

    SetupDiag.exe /Output:C:\SetupDiag\Results.log /Mode:Offline /LogsPath:D:\Logs

    Утилиту SetupDiag можно использовать для анализа файлов дампов памяти (minidump), которые в Windows 10 создаются при появлении BSOD (для анализа нужно установить WinDbg). Файл setupmem.dmp создается в %SystemDrive%$Windows.

    bt\Sources\Rollback или в %WinDir%\Panther\NewOS\Rollback в зависимости от того, на каком этапе прервался процесс апгрейда сборки Windows 10.

    Чтобы выполнить анализ файла дампа setupmem.dmp в указанном каталоге, выполните:

    SetupDiag.exe /Output:C:\SetupDiag\Dumpdebug.log /Mode:Offline /LogsPath:D:\Dump

    Правила SetupDiag

    При запуске SetupDiag в консоли вы увидите следующие строки:

    SetupDiag: processing rule: CompatScanOnly. No match.
    SetupDiag: processing rule: BitLockerHardblock. No match.
    SetupDiag: processing rule: VHDHardblock. No match.
    SetupDiag: processing rule: PortableWorkspaceHardblock. No match.
    SetupDiag: processing rule: AuditModeHardblock. No match.
    SetupDiag: processing rule: SafeModeHardblock. No match.

    Утилита SetupDiag использует набор предопределенных шаблонов (правил), которые используются для поиска известных проблем апгрейда редакции Windows 10. Т.е. утилита SetupDiag поможет вам обнаружить только те ошибки обновления, которые определены в этих паттернах. Строка No match означает, что указанная проблема в логах не найдена.

    Набор правил SetupDiag понемногу расширяется. Так, например, в SetupDiag v1.00 (30.03.2018) было 26 правил, то в SetupDiag v1.20 (30.5.2018) имеется уже 41 шаблона. У каждого правила есть имя и уникальный идентификатор. Вкратце рассмотрим правила SetupDiag и связанные ошибки обновления версии Windows 10.

    • CompatScanOnly — FFDAFD37-DB75-498A-A893-472D49A1311D – запуск установки setup.exe вызван в режиме проверки совместимости, а не обновления.
    • BitLockerHardblock — C30152E2-938E-44B8-915B-D1181BA635AE – в исходной системе включен BitLocker, который не поддерживается в целевой.
    • VHDHardblock — D9ED1B82-4ED8-4DFD-8EC0-BE69048978CC – система загружается в виде VHD образа (такой режим обновления Windows 10 не поддерживается).
    • PortableWorkspaceHardblock — 5B0D3AB4-212A-4CE4-BDB9-37CA404BB280 – система загружается с USB устройства Windows To-Go (апгрейд системы в среде Windows To-Go не поддерживается).
    • AuditModeHardblock — A03BD71B-487B-4ACA-83A0-735B0F3F1A90 – операционная система загружена в режиме аудита (Audit Mode).
    • SafeModeHardblock — 404D9523-B7A8-4203-90AF-5FBB05B6579B — операционная система загружена в безопасном режиме (Safe mode).
    • InsufficientSystemPartitionDiskSpaceHardblock — 3789FBF8-E177-437D-B1E3-D38B4C4269D1 – на системном разделе недостаточно места для обновления.
    • CompatBlockedApplicationAutoUninstall – BEBA5BC6-6150-413E-8ACE-5E1EC8D34DD5 – найдено несовместимое приложение, которое нужно удалить перед апгрейдом версии.
    • CompatBlockedApplicationDismissable — EA52620B-E6A0-4BBC-882E-0686605736D9 – при установке в тихом (с ключом /quiet), возникла ошибка, требующая взаимодействия с пользователем и препятствующая установке.
    • CompatBlockedApplicationManualUninstall — 9E912E5F-25A5-4FC0-BEC1-CA0EA5432FF4 – в системе обнаружено нестандартное приложение, отсутствующее в Add/Remove Programs, файлы которого нужно удалить вручную.
    • HardblockDeviceOrDriver — ED3AEFA1-F3E2-4F33-8A21-184ADF215B1B – один из установленных драйверов не совместим с новой ОС и должен быть удален.
    • HardblockMismatchedLanguage — 60BA8449-CF23-4D92-A108-D6FCEFB95B45 не совпадает язык исходной системы и целевой.
    • HardblockFlightSigning — 598F2802-3E7F-4697-BD18-7A6371C8B2F8 – вы пытаетесь установить пре-релиз (в рамках программы Windows Insider) на компьютере с включённым режимом Secure Boot . В этом режиме пре-релиз не загрузится.
    • DiskSpaceBlockInDownLevel — 6080AFAC-892E-4903-94EA-7A17E69E549E в ходе операции обновления на диске закончилось место.
    • DiskSpaceFailure — 981DCBA5-B8D0-4BA7-A8AB-4030F7A10191 – место на диске кончилось после перезагрузки в новый релиз.
    • DeviceInstallHang — 37BB1C3A-4D79-40E8-A556-FDA126D40BC6 – в процессе установки система зависла, или упала в BSOD.
    • DebugSetupMemoryDump — C7C63D8A-C5F6-4255-8031-74597773C3C6 – BSOD при установке. Для дальнейшего анализа нужно исследовать файл дампа памяти.
    • DebugSetupCrash — CEEBA202-6F04-4BC3-84B8-7B99AED924B1 – ошибка установки, требующая анализа дампа памяти.
    • DebugMemoryDump — 505ED489-329A-43F5-B467-FCAAF6A1264C – правило для анализа файла memory.dmp , созданного в процессе установки/обновления.
    • BootFailureDetected — 4FB446C2-D4EC-40B4-97E2-67EB19D1CFB7 – ошибка загрузки на определённой фазе обновления.
    • FindDebugInfoFromRollbackLog — 9600EB68-1120-4A87-9FE9-3A4A70ACFC37 – информация об BSOD без необходимости установки пакета отладки.
    • AdvancedInstallerFailed — 77D36C96-32BE-42A2-BB9C-AAFFE64FCADC — фатальная ошибка установщика.
    • FindMigApplyUnitFailure — A4232E11-4043-4A37-9BF4-5901C46FD781 – ошибка в модуле миграции.
    • FindMigGatherUnitFailure — D04C064B-CD77-4E64-96D6-D26F30B4EE29 – подробная информация о сбойном компоненте миграции.
    • CriticalSafeOSDUFailure — 73566DF2-CA26-4073-B34C-C9BC70DBF043 – ошибка при обновлении образа SafeOS.
    • UserProfileCreationFailureDuringOnlineApply — 678117CE-F6A9-40C5-BC9F-A22575C78B14 – ошибка при создании или изменении профиля пользователя в режиме онлайн фазы апгрейда.
    • WimMountFailure — BE6DF2F1-19A6-48C6-AEF8-D3B0CE3D4549 – при обновлении не удалось смонтировать wim файл.
    • FindSuccessfulUpgrade — 8A0824C8-A56D-4C55-95A0-22751AB62F3E – выполнено успешное обновление билда Windows 10.
    • FindSetupHostReportedFailure — 6253C04F-2E4E-4F7A-B88E-95A69702F7EC – сбой в начале процесса обновления при работе setuphost.exe.
    • FindDownlevelFailure — 716334B7-F46A-4BAA-94F2-3E31BC9EFA55 – ошибка в SetupPlatform.
    • FindAbruptDownlevelFailure — 55882B1A-DA3E-408A-9076-23B22A0472BD – информация о последней ошибке, когда записи в журнале неожиданно обрываются.
    • FindSetupPlatformFailedOperationInfo — 307A0133-F06B-4B75-AEA8-116C3B53C2D1 – информация о фазе и ошибке при критическом сбое в SetupPlatform.
    • FindRollbackFailure — 3A43C9B5-05B3-4F7C-A955-88F991BB5A48 – последнее действие, и сбойная фаза перед началом процедура отката к предыдущей версии Windows 10.
    • AdvancedInstallerGenericFailure – 4019550D-4CAA-45B0-A222-349C48E86F71 – ошибки чтения/записи AdvancedInstaller.
    • OptionalComponentFailedToGetOCsFromPackage – D012E2A2-99D8-4A8C-BBB2-088B92083D78 – информация об ошибке в опциональном компоненте при попытке получить список компонентов пакета.
    • OptionalComponentOpenPackageFailed – 22952520-EC89-4FBD-94E0-B67DF88347F6 – ошибка при попытке открыть опциональный компонент.
    • OptionalComponentInitCBSSessionFailed – 63340812-9252-45F3-A0F2-B2A4CA5E9317 – установщик или определенный компонент не запущены.
    • UserProfileCreationFailureDuringFinalize – C6677BA6-2E53-4A88-B528-336D15ED1A64 – ошибка создания профиля на финальном этапе обновления.
    • WimApplyExtractFailure – 746879E9-C9C5-488C-8D4B-0C811FF3A9A8 – ошибка образа wim при его распаковке.
    • UpdateAgentExpanderFailure – 66E496B3-7D19-47FA-B19B-4040B9FD17E2 — ошибка DPX при обновлении через Windows Update.
    • FindFatalPluginFailure – E48E3F1C-26F6-4AFB-859B-BF637DA49636 – ошибка в одном из подключаемых модулей.

    Пример файла results.log с указанием информации о системе, исходной и целевой версии Windows 10 и найденной ошибке FindFatalPluginFailure:

    Matching Profile found: FindFatalPluginFailure — E48E3F1C-26F6-4AFB-859B-BF637DA49636
    System Information:
    Machine Name = Offline
    Manufacturer = VMware, Inc.
    Model = VMware Virtual Platform
    HostOSArchitecture = x64
    FirmwareType = PCAT
    BiosReleaseDate = 20150921000000.000000+000
    BiosVendor = PhoenixBIOS 4.0 Release 6.0
    BiosVersion = 6.00
    HostOSVersion = 10.0.16299
    HostOSBuildString = 16299.15.amd64fre.rs3_release.170928-1534
    TargetOSBuildString = 10.0.17134.1 (rs4_release.180410-1804)
    HostOSLanguageId = 1049
    HostOSEdition = Professional
    RegisteredAV =
    FilterDrivers =
    UpgradeStartTime = 5/24/2018 9:17:59 PM
    UpgradeEndTime = 5/24/2018 10:10:36 PM
    UpgradeElapsedTime = 00:52:37
    ReportId = 004db4ee-17f9-4b6f-bc46-a8bd9877ccd8

    Error: SetupDiag reports fatal migration plug-in failure. Plug-in Name = %windir%\system32\migration\CntrtextMig.dll, Migration Operation = IPostApply->ApplySuccess, Plug-in Error: 0x00000032

    В данном примере утилита SetupDiag обнаружила, что установка обновления завершилось неудачно из-за ошибки в плагине %windir%\system32\migration\CntrtextMig.dll.

    При успешном обновлении в файле results.log будет содержаться строка:

    Matching Profile found: FindSuccessfulUpgrade — 8A0824C8-A56D-4C55-95A0-22751AB62F3E

    Ошибка SetupDiag: Main() failed with an unhandled exception

    В некоторых случая при запуске SetupDiag в логе вы можете столкнутся с ошибкой: « SetupDiag: Main() failed with an unhandled exception ».

    10:20:58 — SetupDiag: Main() failed with an unhandled exception:
    Could not find a part of the path ‘C:\$Windows.

    bt\sources\rollback’.
    Exception System.IO.DirectoryNotFoundException: Could not find a part of the path ‘C:\$Windows.

    bt\sources\rollback’.
    Source: mscorlib
    Stack: at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    at System.IO.FileSystemEnumerableIterator`1.CommonInit()
    at System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
    at System.IO.DirectoryInfo.InternalGetFiles(String searchPattern, SearchOption searchOption)
    at System.IO.DirectoryInfo.GetFiles(String searchPattern, SearchOption searchOption)
    at Microsoft.Internal.Deployment.SetupDiag.CSetupAPIParser.GetCorrectSetupApiLog(String logsPath, DateTime dtSetupActLogTime)
    at Microsoft.Internal.Deployment.SetupDiag.Directive.DirectiveDetermineDeviceInstallHang()
    at Microsoft.Internal.Deployment.SetupDiag.Directive.DoDirective()
    at Microsoft.Internal.Deployment.SetupDiag.CSetupDiag.RunDiag(String strRulesFile, String strlogsPath, String strMode, String strOutPut, String strFormat, String resLevel, Boolean fCreateLogs)
    at Microsoft.Internal.Deployment.SetupDiag.Program.Main(String[] args)

    В моем случае, это было вызвано тем, что одна из папок с логами отсуствовала. Я решил эту проблему копированием оставшихся логов в определенную папку и запуском SetupDiag в офлайн режиме:

    SetupDiag.exe /Output:C:\tools\Results.log /Mode:Offline /LogsPath:c:\Logs\

    Некоторые найденные ошибки исправить довольно просто (например, нехватка места на системном разделе), другие – сложнее. В любом случае утилита SetupDiag позволяет значительно быстрее продиагностировать и исправить проблемы обновления редакции на компьютерах Windows 10 и избавляет администратора от необходимости ручного анализа логов.

    Источник

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Windows 10 лицензия разработчика
  • Windows 10 лицензия для инвалидов
  • Windows 10 лимитное соединение
  • Windows 10 лимитированное подключение
  • Windows 10 лагает рабочий стол