Создать файл журнала в power shell

Просмотр журнала обновлений Windows в Event Viewer

Служба обновлений Windows пишет довольно подробный лог о всех выполненных действиях в журналы Event Viewer (eventvwr.msc). При анализе логов установки Windows администратору будут полезные следующие журналы событий:

  • • Applications and Services Logs -> Microsoft -> Windows –> WindowsUpdateClient -> Operational – логи клиента WindowsUpdate (позволяет понять, когда клиент выполнял поиск обновлений и загрузил с сервера обновления новые файлы);Логи windowsupdateclient в журнале событий Windows
  • • Windows Logs -> Setup — логи установки обновлений Windows из CAB и MSU файлов. Например:
    Package KB5034122 was successfully changed to the Installed state. 

    Логи загрузки и установки обновлений Windows

Вы можете выбрать события из журналов загрузки и установки обновлений с помощью PowerShell командлета Get-WinEvent:

Вывести десять последних ошибок в журнале клиента Windows Update:

вывести ошибки установки обновлений windows update

Вывести список последних установленных обновлений Windows:

powershell: получить список установленных обновлений

Просмотр лога обновлений WindowsUpdate.log в Windows 10 и 11

Начиная с Windows 10, логи агента обновления Windows не пишутся в реальном времени в файл
%windir%\WindowsUpdate.log
. Если открыть этот файл, в нем будет указано, что формат лога был изменен:

Windows Update logs are now generated using ETW (Event Tracing for Windows).Please run the Get-WindowsUpdateLog PowerShell command to convert ETW traces into a readable WindowsUpdate.log. For more information, please visit http://go.microsoft.com/fwlink/?LinkId=518345

пустой файл WindowsUpdate.log в Windows 10

Вместо этого логи Windows Update пишутся в ETL-файлы в каталоге
%windir%\Logs\WindowsUpdate
. Чтобы конвертировать ETW трейсы из ETL файлов в привычный текстовый файл с логом WindowsUpdate.log, воспользуйтесь командлетом Get-WindowsUpdateLog:

Get-WindowsUpdateLog -logpath C:\Temp\WindowsUpdate.log

Get-WindowsUpdateLog в WIndows 10

В старых версия ОС (Windows 10 1709- и в Windows Server 2016) для преобразования логов на компьютере должен быть открыт доступ в интернет с серверу символов Microsoft (msdl.microsoft.com).
Если доступ в интернет заблокирован, вы можете скопировать ETL файлы на компьютер с новым билдом Windows 10/11 и сгенерировать лог файл с помощью команды:
Get-WindowsUpdateLog -ETLPath "C:\Temp\WindowsUpdateETL\" -LogPath "C:\Temp\WindowsUpdate.log"

Откройте журнал Windows Update с помощью блокнота:

:/>  Сбита кодировка windows 10

Открыть windowsupdate.log в Windows 10 и 11

Совет. Обратите внимание, что созданный файл WindowsUpdate.log является статическим и не обновляется в реальном времени, как в предыдущих версиях Windows.

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

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

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

фильтрация WindowsUpdate.log с помощью powershell

По логу WindowsUpdate.log можно понять, получает ли компьютер обновления с Windows Update или локального WSUS сервера, есть ли проблемы с доступном в Интернет, используется ли системный прокси и т.д.

История установки обновлений в Windows

В современных версиях Windows 10/11 и Windows Server 2019/2022 журнал установленных обновлений доступен в панели Settings.

Перейдите в Settings -> Update & Security -> Windows Update -> View update history (или вымолните команду
ms-settings:windowsupdate-history
).

ms-settings:windowsupdate-history

В этом разделе отображается список всех установленных в Windows обновлений. Отсюда же можно удалить обновление, если оно вызывает проблемы.

Также вы можете получить историю установки обновлений в Windows с помощью PowerShell. Можно получить дату установки последних обновлений на компьютере через CIM класс:

win32_quickfixengineering вывести историю установки обновлений

Или с помощью командлета
Get-WUHistory
из модуля PSWindowsUpdate.

Get-WUHistory из модуля PSWindowsUpdate