LogParser - подстановка значений данных журнала событий

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

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

Мой сценарий очень прост:

SELECT
TimeGenerated AS Time,
EventTypeName AS Event,
EXTRACT_TOKEN(Strings, 0,'|') AS ProcessID,
EXTRACT_TOKEN(Strings, 1,'|') AS Process,
EXTRACT_TOKEN(Strings, 7,'|') AS Protocol,
EXTRACT_TOKEN(Strings, 2,'|') AS Direction,
EXTRACT_TOKEN(Strings, 3,'|') AS SourceAddress,
EXTRACT_TOKEN(Strings, 4,'|') AS SourcePort,
EXTRACT_TOKEN(Strings, 5,'|') AS DestinationAddress,
EXTRACT_TOKEN(Strings, 6,'|') AS DestinationPort
FROM Security
WHERE EventID IN (5152; 5153; 5154; 5155; 5156; 5157; 5158)

Хотя это дает интересующую меня информацию, я хотел бы, если возможно, изменить вывод. Например, вывод столбца "Процесс":

\ Device\harddiskvolume2\ приложения \ Mozilla\ FX-4\firefox.exe

Что мне действительно нравится, так это просто отображать имя процесса без пути. Аналогично, в столбце "Протокол" просто отображается числовое значение протокола. Я предпочитаю, чтобы он отображал "фактический" протокол.

Наконец, в столбце "Направление" отображаются числовые значения %%14592 и %%14593, и я предпочел бы видеть соответственно In и Out.

Если кто-нибудь может помочь, я был бы очень благодарен.

Спасибо

1 ответ

На вопрос о вашем имени файла работает ли процесс AS EXTRACT_FILENAME(EXTRACT_TOKEN(Strings, 1,'|'))?

Для вашего другого вопроса, как насчет:

CASE EXTRACT_TOKEN (Strings, 2, '|') WHEN '%% 14592' THEN 'IN' ELSE 'OUT' END Как направление

Другие вопросы по тегам