Приступая к работе с коллекцией событий установки и загрузки

Обзор

Коллекция событий установки и загрузки — это новая функция в Windows Server 2016, которая позволяет назначить компьютер сборщика, который может собирать различные важные события, происходящие на других компьютерах при загрузке или прохождении процесса установки. Затем вы можете проанализировать собранные события с помощью компонента "Просмотр событий", анализатора сообщений, Wevtutil или командлетов Windows PowerShell.

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

  • Загрузка модулей ядра и драйверов

  • Перечисление устройств и инициализации драйверов (включая устройства, такие как тип ЦП)

  • Проверка и подключение файловых систем

  • Запуск исполняемых файлов

  • Запуск и завершение обновлений системы

  • Точки, когда система становится доступной для входа, устанавливает соединение с контроллером домена, завершением запуска службы и доступностью сетевых общих папок

Компьютер сборщика должен работать под управлением Windows Server 2016 (он может находиться в сервере с рабочим возможностями или в режиме основных серверных компонентов). Целевой компьютер должен работать под управлением Windows 10 или Windows Server 2016. Эту службу можно также запустить на виртуальной машине, размещенной на компьютере, не работающем под управлением Windows Server 2016. Известны следующие сочетания виртуализированных сборщиков и целевых компьютеров:

Узел виртуализации Виртуальная машина сборщика Целевая виртуальная машина
Windows 8.1 yes yes
Windows 10 yes yes
Windows Server 2016 yes yes
Windows Server 2012 R2 yes no

Установка службы сборщика

Начиная с Windows Server 2016 служба сборщика событий доступна в качестве необязательной функции. В этом выпуске его можно установить с помощью DISM.exe с этой командой в командной строке Windows PowerShell с повышенными привилегиями:

dism /online /enable-feature /featurename:SetupAndBootEventCollection

Эта команда создает службу с именем BootEventCollector и запускает ее с пустого файла конфигурации.

Убедитесь, что установка выполнена успешно, проверив get-service -displayname *boot*проверку. Сборщик событий загрузки должен выполняться. Он выполняется под учетной записью сетевой службы и создает пустой файл конфигурации (Active.xml) в %SystemDrive%\ProgramData\Microsoft\BootEventCollector\Config.

Вы также можете установить службу сбора событий установки и загрузки с помощью мастера добавления ролей и компонентов в диспетчер сервера.

Настройка

Необходимо настроить два элемента для сбора событий установки и загрузки.

  • На целевых компьютерах, которые будут отправлять события (то есть компьютеры, программы установки и загрузки которых требуется отслеживать), включите транспорт KDNET/EVENT-NET и включите пересылку событий.

  • На компьютере сборщика укажите, какие компьютеры будут принимать события из и где их сохранить.

Примечание.

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

Настройка целевого компьютера

На каждом целевом компьютере сначала включите транспорт KDNET/EVENT-NET, а затем включите отправку событий ETW через транспорт, а затем перезагрузите целевой компьютер. EVENT-NET — это протокол транспорта в ядре, аналогичный KDNET (протокол отладчика ядра). EVENT-NET передает только события и не разрешает доступ отладчика. Эти два протокола являются взаимоисключающими; Вы можете включить только один из них одновременно.

Вы можете удаленно включить транспорт событий (с помощью Windows PowerShell) или локально.

Удаленное включение транспорта событий
  1. Если вы уже настроили удаленное взаимодействие Windows PowerShell на целевом компьютере, перейдите к шагу 3. В противном случае на целевом компьютере откройте командную строку и выполните следующую команду:

    winrm quickconfig

  2. Ответьте на запросы, а затем перезапустите целевой компьютер. Если целевые компьютеры находятся не в том же домене, что и компьютер сборщика, может потребоваться определить их как доверенные узлы. Для этого:

  3. На компьютере сборщика выполните любую из следующих команд:

    • В командной строке Windows PowerShell: Set-Item -Force WSMan:\localhost\Client\TrustedHosts <target1>,<target2>,...за которым следует Set-Item -Force WSMan:\localhost\Client\AllowUnencrypted true <target1> и т. д. имена или IP-адреса целевых компьютеров.

    • Или в командной строке: winrm set winrm/config/client @{TrustedHosts=<target1,target2><>,...; AllowUnencrypted=true}

      Внимание

      Это настраивает незашифрованное взаимодействие, поэтому это не делается за пределами лабораторной среды.

  4. Проверьте удаленное подключение, перейдя на компьютер сборщика и выполнив одну из следующих команд Windows PowerShell:

    Если целевой компьютер находится в том же домене, что и компьютер сборщика, запустите New-PSSession -Computer <target> | Remove-PSSession

    Если целевой компьютер не находится в том же домене, выполните команду New-PSSession -Computer <target> -Credential Administrator | Remove-PSSession, которая предложит вам указать учетные данные.

    Если команда ничего не возвращает, удаленное взаимодействие выполнено успешно.

  5. На целевом компьютере откройте запрос Windows PowerShell с повышенными привилегиями и выполните следующую команду:

    Enable-SbecBcd -ComputerName <target_name> -CollectorIP <ip> -CollectorPort <port> -Key <a.b.c.d>

    Здесь <target_name> имя целевого компьютера, <IP-адрес> компьютера сборщика. <порт — это номер порта> , в котором будет выполняться сборщик. Ключ <a.b.c.d> является обязательным ключом шифрования для связи, состоящим из четырех буквенно-цифровых строк, разделенных точками. Этот же ключ используется на компьютере сборщика. Если ключ не введен, система создает случайный ключ; Это потребуется для компьютера сборщика, поэтому запишите его.

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

Включение транспорта событий локально на целевом компьютере
  1. Запустите командную строку с повышенными привилегиями и выполните следующие команды:

    bcdedit /event yes

    bcdedit /eventsettings net hostip:1.2.3.4 port:50000 key:a.b.c.d

    Ниже приведен пример 1.2.3.4; замените его IP-адресом компьютера сборщика. Кроме того, замените 50000 номером порта, на который будет выполняться сборщик, и a.b.c.d необходимым ключом шифрования для связи. Этот же ключ используется на компьютере сборщика. Если ключ не введен, система создает случайный ключ; Это потребуется для компьютера сборщика, поэтому запишите его.

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

Теперь, когда транспорт событий включен, необходимо разрешить системе фактически отправлять события ETW через этот транспорт.

Включение удаленной отправки событий ETW через транспорт
  1. На компьютере сборщика откройте запрос Windows PowerShell с повышенными привилегиями.

  2. Запустите Enable-SbecAutologger -ComputerName <target_name>, где <target_name> — это имя целевого компьютера.

Если вы не можете настроить удаленное взаимодействие Windows PowerShell, вы всегда можете включить отправку событий непосредственно на целевом компьютере.

Включение отправки событий ETW через транспорт локально
  1. На целевом компьютере запустите Regedit.exe и найдите этот раздел реестра:

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WMI\AutoLogger. Различные сеансы журнала перечислены как вложенные ключи в этом ключе. Платформа установки, средство ведения журнала ядра NT и программа установки Microsoft-Windows доступны для использования с коллекцией событий установки и загрузки, но рекомендуемый вариант — EventLog-System. Эти ключи подробно описаны в разделе "Настройка и запуск сеанса автолога".

  2. В ключе EventLog-System измените значение LogFileMode с 0x10000180 на 0x10080180. Дополнительные сведения об этих параметрах см. в разделе "Константы режима ведения журнала".

  3. При необходимости можно также включить пересылку данных проверки ошибок на компьютер сборщика. Для этого найдите раздел реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager и создайте ключ отладочного фильтра печати со значением 0x1.

  4. Перезапустите целевой компьютер.

Выбор сетевого адаптера

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

Указание сетевого адаптера
  1. На целевом компьютере откройте диспетчер устройств, разверните сетевые адаптеры, найдите сетевой адаптер, который вы хотите использовать, и щелкните его правой кнопкой мыши.

  2. В открывающемся меню выберите пункт "Свойства", а затем откройте вкладку "Сведения ". Разверните меню в поле "Свойство ", прокрутите страницу, чтобы найти сведения о расположении (список, вероятно, не в алфавитном порядке), а затем щелкните его. Это значение будет строкой шины PCI X, устройства Y, функции Z. Запишите X.Y.Z; это параметры шины, необходимые для следующей команды.

  3. Выполните одну из следующих команд:

    В командной строке Windows PowerShell с повышенными привилегиями: Enable-SbecBcd -ComputerName <target_name> -CollectorIP <ip> -CollectorPort <port> -Key <a.b.c.d> -BusParams <X.Y.Z>

    Из командной строки с повышенными привилегиями: bcdedit /eventsettings net hostip:aaa port:50000 key:bbb busparams:X.Y.Z

Проверка конфигурации целевого компьютера

Чтобы проверить параметры на целевом компьютере, откройте командную строку с повышенными привилегиями и запустите bcdedit /enum. По завершении выполните bcdedit /eventsettings. Можно дважды проверить следующие значения:

  • Ключ

  • Debugtype = NET

  • Hostip = <IP-адрес сборщика>

  • Port = <номер порта, указанный для используемого сборщика>

  • DHCP = да

Также убедитесь, что вы включили bcdedit /event, так как /debug и /event являются взаимоисключающими. Вы можете запустить только одну или другую. Аналогичным образом нельзя смешивать /eventsettings с /debug или /dbgsettings с /event.

Обратите внимание, что коллекция событий не работает, если вы настроили его на последовательный порт.

Настройка компьютера сборщика

Служба сборщика получает события и сохраняет их в файлах ETL. Затем эти файлы ETL можно считывать другими средствами, такими как Просмотр событий, анализатор сообщений, Wevtutil и командлеты Windows PowerShell.

Так как формат ETW не позволяет указать имя целевого компьютера, события для каждого целевого компьютера должны сохраняться в отдельном файле. Средства отображения могут отображать имя компьютера, но это будет имя компьютера, на котором выполняется средство.

Точнее, каждому целевому компьютеру присваивается кольцо файлов ETL. Каждое имя файла содержит индекс от 000 до максимального значения, которое вы настраиваете (до 999). Когда размер файла достигает максимального размера, он переключает события записи в следующий файл. После максимального возможного файла он переключится на индекс файла 000. Таким образом, файлы автоматически перезапускаются, что ограничивает использование места на диске. Можно также задать дополнительные внешние политики хранения, чтобы дополнительно ограничить использование дисков; Например, можно удалить файлы старше заданного числа дней.

Собранные файлы ETL обычно хранятся в каталоге c:\ProgramData\Microsoft\BootEventCollector\Etl (которые могут иметь дополнительные подкаталоги). Вы можете найти последний файл журнала, отсортируя их по времени последнего изменения. Существует также журнал состояния (обычно в c:\ProgramData\Microsoft\BootEventCollector\Logs), который записывает записи при каждом переключение сборщика на новый файл.

Существует также журнал сборщика, который записывает сведения о самом сборщике. Этот журнал можно сохранить в формате ETW (в котором события передаются службе журналов Windows; это по умолчанию) или в файле (обычно в c:\ProgramData\Microsoft\BootEventCollector\Logs). Использование файла может быть полезным, если вы хотите включить подробные режимы, которые создают много данных. Журнал также можно задать для записи в стандартные выходные данные, выполнив сборщик из командной строки.

Создание файла конфигурации сборщика

При включении службы создаются и хранятся три XML-файла конфигурации в папке c:\ProgramData\Microsoft\BootEventCollector\Config:

  • Active.xml этот файл содержит текущую активную конфигурацию службы сборщика. Сразу после установки этот файл имеет то же содержимое, что и Empty.xml. При настройке новой конфигурации сборщика вы сохраните его в этом файле.

  • Empty.xml Этот файл содержит минимальные элементы конфигурации, необходимые для набора значений по умолчанию. Она не включает ни одну коллекцию; он позволяет службе сборщика запускаться только в режиме простоя.

  • Example.xml этот файл содержит примеры и объяснения возможных элементов конфигурации.

Выбор ограничения размера файла

Одним из решений, которые необходимо принять, является установка ограничения размера файла. Максимальное ограничение размера файла зависит от ожидаемого объема событий и доступного места на диске. Меньшие файлы удобнее с точки зрения очистки старых данных. Однако каждый файл несет с собой затраты на 64 КБ заголовка и чтение многих файлов, чтобы получить объединенную историю, может оказаться неудобным. Абсолютный минимальный размер файла составляет 256 КБ. Разумный практический размер файла должен превышать 1 МБ, и 10 МБ, вероятно, является хорошим типичным значением. Более высокий предел может быть разумным, если вы ожидаете много событий.

Существует несколько сведений, которые следует учитывать в отношении файла конфигурации:

  • Адрес целевого компьютера. Вы можете использовать его IPv4-адрес, MAC-адрес или GUID SMBIOS. При выборе адреса следует учитывать следующие факторы:

    • IPv4-адрес лучше всего подходит для статического назначения IP-адресов. Однако даже статические IP-адреса должны быть доступны через DHCP.

    • MAC-адрес или GUID SMBIOS удобно, если они известны заранее, но IP-адреса назначаются динамически.

    • Адреса IPv6 не поддерживаются протоколом EVENT-NET.

    • Можно указать несколько способов идентификации компьютера. Например, если физическое оборудование будет заменено, можно ввести как старые, так и новые MAC-адреса, и либо будет принято.

  • Ключ шифрования, используемый для связи с компьютером сборщика

  • Имя целевого компьютера. Вы можете использовать IP-адрес, имя узла или любое другое имя в качестве имени компьютера.

  • Имя используемого файла ETL и конфигурации размера кольца для него

Создание файла конфигурации
  1. Откройте запрос Windows PowerShell с повышенными привилегиями и измените каталоги на %SystemDrive%\ProgramData\Microsoft\BootEventCollector\Config.

  2. Введите notepad .\newconfig.xml и нажмите клавишу ВВОД.

  3. Скопируйте эту конфигурацию в окно Блокнота:

    <collector configVersionMajor=1 statuslog=c:\ProgramData\Microsoft\BootEventCollector\Logs\statuslog.xml>
      <common>
        <collectorport value=50000/>
        <forwarder type=etl>
          <set name=file value=c:\ProgramData\Microsoft\BootEventCollector\Etl\{computer}\{computer}_{#3}.etl/>
          <set name=size value=10mb/>
          <set name=nfiles value=10/>
          <set name=toxml value=none/>
        </forwarder>
        <target>
          <ipv4 value=192.168.1.1/>
          <key value=a.b.c.d/>
          <computer value=computer1/>
        </target>
        <target>
          <ipv4 value=192.168.1.2/>
          <key value=d1.e2.f3.g4/>
          <computer value=computer2/>
        </target>
      </common>
    </collector>
    

    Примечание.

    Корневой узел является сборщиком<>. Его атрибуты указывают версию синтаксиса файла конфигурации и имя файла журнала состояния.

    Общие <> группы элементов объединяют несколько целевых объектов, определяющих общие элементы конфигурации для них, так же как и группу пользователей, можно использовать для указания общих разрешений для нескольких пользователей.

    Элемент <сборщика> определяет номер порта UDP, где сборщик будет прослушивать входящие данные. Это тот же порт, что и в целевом шаге конфигурации для Bcdedit. Сборщик поддерживает только один порт, и все целевые объекты должны подключаться к одному порту.

    Элемент <пересылки> указывает, как будут пересылаться события ETW, полученные от целевых компьютеров. Существует только один тип пересылки, который записывает их в файлы ETL. Параметры указывают шаблон имени файла, ограничение размера каждого файла в кольце и размер кольца для каждого компьютера. Параметр toxml указывает, что события ETW записываются в двоичном виде по мере их получения без преобразования в XML. См. раздел преобразования событий XML, чтобы узнать, следует ли отправлять события в XML. Шаблон имени файла содержит следующие подстановки: {computer} для имени компьютера и {#3} для индекса файла в кольце.

    В этом примере файла два целевых компьютера определяются с целевым> элементом<. Каждое определение задает IP-адрес с <ipv4>, но вы также можете использовать MAC-адрес (например, <mac value=11:22:33:44:55:66/> или) или <mac value=11-22-33-44-55-66/>GUID SMBIOS (например, <guid value={269076F9-4B77-46E1-B03B-CA5003775B88}/>для идентификации целевого компьютера). Кроме того, обратите внимание на ключ шифрования (то же, что и указанный или созданный с помощью Bcdedit на целевом компьютере), а также имя компьютера.

  4. Введите сведения для каждого целевого компьютера в качестве отдельного <целевого> элемента в файле конфигурации, а затем сохраните Newconfig.xml и закройте Блокнот.

  5. Примените новую конфигурацию с $result = (Get-Content .\newconfig.xml | Set-SbecActiveConfig); $result. Выходные данные должны возвращаться с полем Success true. Если вы получите другой результат, см. раздел "Устранение неполадок" этого раздела.

Вы всегда можете проверить текущую активную конфигурацию с (Get-SbecActiveConfig).textпомощью .

С помощью файла $result = (Get-Content .\newconfig.xml | Check-SbecConfig); $resultконфигурации можно выполнить проверку действительности.

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

  • С помощью Windows PowerShell: Restart-Service BootEventCollector

  • В обычной командной строке: sc stop BootEventCollector; sc start BootEventCollector

Настройка Nano Server в качестве целевого компьютера

Минимальный интерфейс, предлагаемый Nano Server, иногда может затруднить диагностику проблем с ним. Вы можете настроить образ Nano Server для участия в настройке и сборе событий загрузки автоматически, отправляя диагностические данные на компьютер сборщика без дальнейшего вмешательства. Для этого выполните следующие шаги.

Настройка Nano Server в качестве целевого компьютера

  1. Создайте базовый образ Nano Server. Дополнительные сведения см. в статье "Начало работы с Nano Server ".

  2. Настройте компьютер сборщика, как в разделе "Настройка компьютера сборщика" этого раздела.

  3. Добавьте разделы реестра AutoLogger, чтобы включить отправку диагностических сообщений. Для этого подключите виртуальный жесткий диск Nano Server, созданный на шаге 1, загрузите куст реестра и добавьте определенные разделы реестра. В этом примере образ Nano Server находится в C:\NanoServer; Путь может отличаться, поэтому настройте шаги соответствующим образом.

    1. Скопируйте файл на компьютере сборщика. \Windows\System32\WindowsPowerShell\v1.0\Modules\BootEventCollector и вставьте его в папку .. \Windows\System32\WindowsPowerShell\v1.0\Modules на компьютере, который вы используете для изменения виртуального жесткого диска Nano Server.

    2. Запустите консоль Windows PowerShell с повышенными разрешениями и запустите.Import-Module BootEventCollector

    3. Обновите реестр VHD Nano Server, чтобы включить autoLoggers. Для этого выполните команду Enable-SbecAutoLogger -Path C:\NanoServer\Workloads\IncludingWorkloads.vhd. Это добавляет базовый список наиболее типичных событий установки и загрузки; Вы можете изучить других пользователей на этапе управления сеансами трассировки событий.

  4. Обновите параметры BCD на изображении Nano Server, чтобы включить флаг событий и задать компьютер сборщика, чтобы убедиться, что события диагностики отправляются на правильный сервер. Обратите внимание на IPv4-адрес компьютера сборщика, TCP-порт и ключ шифрования, настроенный в файле Active.XML сборщика (описано в этом разделе). Используйте эту команду в консоли Windows PowerShell с повышенными разрешениями: Enable-SbecBcd -Path C:\NanoServer\Workloads\IncludingWorkloads.vhd -CollectorIp 192.168.100.1 -CollectorPort 50000 -Key a.b.c.d

  5. Обновите компьютер сборщика, чтобы получить событие, отправленное компьютером Nano Server, добавив диапазон адресов IPv4, конкретный IPv4-адрес или MAC-адрес Сервера Nano Server в файл Active.XML на компьютере сборщика (см. раздел "Настройка компьютера сборщика" этого раздела).

Запуск службы сборщика событий

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

Журнал самой службы сборщика (который отличается от данных установки и загрузки, собранных службой), можно найти в разделе Microsoft-Windows-BootEvent-Collector/Admin. Для графического интерфейса событий используйте Просмотр событий. Создание нового представления; разверните журналы приложений и служб, а затем разверните узел Майкрософт и Windows. Найдите BootEvent-Collector, разверните его и найдите администратора.

  • С помощью Windows PowerShell: Get-WinEvent -LogName Microsoft-Windows-BootEvent-Collector/Admin

  • В обычной командной строке: wevtutil qe Microsoft-Windows-BootEvent-Collector/Admin

Устранение неполадок

Устранение неполадок при установке компонента

Ошибка Описание ошибки Симптом Потенциальная проблема
Dism.exe 87 Параметр "Имя функции" не распознается в этом контексте Это может произойти, если вы пропустили имя функции. Убедитесь, что у вас есть правильная орфография и повторите попытку. Убедитесь, что эта функция доступна в используемой версии операционной системы. В Windows PowerShell выполните команду dism /online /get-features &#124; ?{$_ -match boot}. Если совпадение не возвращается, возможно, вы запускаете версию, которая не поддерживает эту функцию.
Dism.exe 0x800f080c Функция <name> неизвестна. То же, что и выше

Устранение неполадок сборщика

Ведение журнала. Сборщик регистрирует свои собственные события в качестве поставщика ETW Microsoft-Windows-BootEvent-Collector. Это первое место, где вы должны искать устранение неполадок с сборщиком. Их можно найти в Просмотр событий в разделе "Приложения и службы" в разделе "Администратор > Microsoft > Windows > BootEvent-Collector>", или вы можете прочитать их в командном окне с помощью любой из следующих команд:

В обычной командной строке: wevtutil qe Microsoft-Windows-BootEvent-Collector/Admin

В командной строке Windows PowerShell: Get-WinEvent -LogName Microsoft-Windows-BootEvent-Collector/Admin (сначала можно добавить -Oldest список в хронологическом порядке с самыми старыми событиями).

Уровень детализации в журналах можно настроить с помощью предупреждения, сведений (по умолчанию), подробных и отладочных данных. Более подробные уровни, чем сведения, полезны для диагностики проблем с целевыми компьютерами, не подключающимися, но могут создавать большое количество данных, поэтому используйте их с осторожностью.

Вы задаете минимальный уровень журнала в <элементе сборщика> файла конфигурации. Например: <сборщик configVersionMajor=1 minlog=verbose>.

Подробный уровень регистрирует запись для каждого полученного пакета по мере обработки. Уровень отладки добавляет дополнительные сведения об обработке и сбрасывает содержимое всех полученных пакетов ETW, а также.

На уровне отладки может быть полезно написать вход в файл, а не пытаться просмотреть его в обычной системе ведения журнала. Для этого добавьте дополнительный элемент в <элемент сборщика> файла конфигурации:

<сборщик configVersionMajor=1 minlog=debug log=c:\ProgramData\Microsoft\BootEventCollector\Logs\log.txt>

Рекомендуемый подход к устранению неполадок сборщика:

  1. Во-первых, убедитесь, что сборщик получил подключение от целевого объекта (он создаст файл, только когда целевой объект начинает отправлять сообщения)

    Get-SbecForwarding
    

    Если он возвращает подключение из этого целевого объекта, проблема может находиться в параметрах автолога. Если он не возвращает ничего, проблема связана с подключением KDNET для начала. Чтобы диагностировать проблемы с подключением KDNET, попробуйте проверить подключение с обеих сторон (т. е. от сборщика и из целевого объекта).

  2. Чтобы просмотреть расширенные диагностика из сборщика, добавьте его в <элемент сборщика файла конфигурации: <сборщик> ... minlog=verbose> Это позволит включить сообщения о каждом полученном пакете.

  3. Проверьте, получены ли все пакеты. При необходимости может потребоваться записать журнал в подробном режиме непосредственно в файл, а не через ETW. Для этого добавьте его в <элемент сборщика> файла конфигурации: <сборщик ... minlog=verbose log=c:\ProgramData\Microsoft\BootEventCollector\Logs\log.txt>

  4. Проверьте журналы событий для всех сообщений о полученных пакетах. Проверьте, получены ли все пакеты. Если пакеты получены, но неверны, проверьте сведения о событиях.

  5. С целевой стороны KDNET записывает в реестр некоторые диагностические сведения. Посмотрите в HKLM\SYSTEM\CurrentControlSet\Services\kdnet для сообщений. KdInitStatus (DWORD) = 0 при успешном выполнении и отображает код ошибки по ошибке KdInitErrorString = объяснение ошибки (также содержит информационные сообщения, если ошибка отсутствует).

  6. Запустите Ipconfig.exe в целевом объекте и проверьте имя устройства, которое он сообщает. Если KDNET загружена должным образом, имя устройства должно быть примерно таким, как kdnic, а не имя карточки исходного поставщика.

  7. Проверьте, настроен ли DHCP для целевого объекта. KDNET абсолютно требует DHCP.

  8. Убедитесь, что сборщик находится в той же сети, что и целевой объект. Если нет, проверьте, настроена ли маршрутизация правильно, особенно параметр шлюза по умолчанию для DHCP.

Состояние подключения

Вы можете проверить текущий список установленных подключений и сведения о том, где пересылаются Get-SbecForwardingданные.

Вы также можете получить последние журналы изменений состояния в подключениях.Get-SbecHistory

Устранение неполадок с настройкой новой конфигурации

Если вы применили конфигурацию с помощью команды $result = (Get-Content .\newconfig.xml | Set-SbecActiveConfig); $resultWindows PowerShell, переменная $result будет содержать сведения о развертывании. Эту переменную можно запросить, чтобы получить из нее разные сведения:

Получение сведений об ошибках с $result.ErrorStringпомощью . Если в этой статье сообщается о каких-либо ошибках, новая конфигурация не будет применена, а старая конфигурация будет без изменений.

Получение предупреждений с $result.WarningStringпомощью .

Получение сведений о конфигурации с $result.InfoStringпомощью .

Полный результат можно получить с $result | fl *помощью . Кроме того, если вы не хотите сохранить результат в переменной, можно использовать Get-Content .\newconfig.xml | Set-SbecActiveConfig | fl *.

Устранение неполадок с целевыми компьютерами

Ошибка Описание ошибки Потенциальная проблема
Целевой компьютер Целевой объект не подключается к сборщику Целевой компьютер не перезагрузился после его настройки. Перезапустите целевой компьютер. На целевом компьютере указаны неверные параметры BCD. Проверьте параметры в разделе "Проверка параметров целевого компьютера". Исправьте при необходимости, а затем перезапустите целевой компьютер.

Драйвер KDNET/EVENT-NET не смог подключиться к сетевому адаптеру или подключиться к неправильному сетевому адаптеру. В Windows PowerShell запустите gwmi Win32_NetworkAdapter и проверьте выходные данные для одного с помощью kdnic ServiceName. Если выбран неправильный сетевой адаптер, выполните действия, описанные в разделе "Чтобы указать сетевой адаптер". Если сетевой адаптер не отображается вообще, возможно, драйвер не поддерживает ни один из сетевых адаптеров.

См. также: предлагаемый подход к устранению неполадок с сборщиком выше, особенно шаги 5–8.

Сборщик После переноса виртуальной машины, на котором размещен сборщик, я больше не вижу события. Убедитесь, что IP-адрес компьютера сборщика не изменился. Если он имеется, проверьте, чтобы включить отправку событий ETW через транспорт удаленно.
Сборщик Файлы ETL не создаются. Get-SbecForwarding показывает, что целевой объект подключен без ошибок, но файлы ETL не создаются.

Целевой компьютер, вероятно, еще не отправил никаких данных; Файлы ETL создаются только при получении данных.

Сборщик Событие не отображается в файле ETL. Целевой компьютер отправил событие, но когда файл ETL считывается с Просмотр событий анализатора сообщений, событие отсутствует. Событие по-прежнему может находиться в буфере. События не записываются в файл ETL, пока не будет собран полный буфер 64 КБ или время ожидания около 10–15 секунд без новых событий. Дождитесь истечения срока ожидания или очистки буферов Save-SbecInstance.

Манифест события недоступен на компьютере сборщика или компьютере, на котором выполняется Просмотр событий или анализатор сообщений. В этом случае сборщик может не сможет обработать событие (проверить журнал сборщика) или средство просмотра не сможет отобразить его. Рекомендуется установить все манифесты на компьютере сборщика и установить обновления на компьютере сборщика перед установкой на целевых компьютерах.