Назад | Перейти на главную страницу

Доступ к журналу событий командной строки WMI

Может кто-нибудь объяснить мне, как получить доступ к произвольным системным журналам в eventlog служебные файлы?


Теперь ковыряюсь в WMI (wmic.exe) и пытаюсь выполнить следующие команды:

Для системных служб, таких как приложения, этот подход работает нормально:

WMIC NTEVENT WHERE "LogFile = 'application'"

А другой файл журнала со следующим синтаксисом не работает.

WMIC NTEVENT WHERE "LogFile = 'Microsoft-Windows-CAPI2 / Operational'"

приводит к:

No Instance(s) Available.

Может ли кто-нибудь поделиться рабочей командой для выполнения работы или каким-либо руководством по этому поводу?

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

Заметка: Я тестировал их на Windows 8 и Server 2012, и они работают нормально. Вы не указали ОС. Вам также потребуется запустить Powershell от имени администратора.

Самый простой способ - заглянуть в Просмотрщик событий (eventvwr.exe) и щелкните правой кнопкой мыши -> Свойства в журнале, который вы хотите проанализировать. Найти Путь к журналу, и вы можете запросить журнал так просто:

get-winevent -path <full_path_to_logfile.evtx>

В качестве примера вы можете попробовать этот, который должен существовать на вашем компьютере с Windows:

get-winevent -path C:\Windows\System32\winevt\Logs\Security.evtx

Get-winevent - это встроенный командлет, поэтому он у вас должен быть доступен. Вы можете использовать обычную логику PowerShell, чтобы вырезать только те части, которые вам нравятся, или передать их в файл, или множество других забавных вещей. Надеюсь это поможет!