Анализ log файла squid с помощью PowerShell

В организации была поставлена задача:Найти с какой машины(машин) посещали нежелательный сайт. И главное в какое время.

Долго описывать сам процесс не буду. Лог файл squid как правило достаточно объемный в нашем случае это около 3 ГБ.

Для поиска IP нарушителя был выбран PowerShell

Командлет который помог мне это сделать - SELECT-STRING
Строка: select-string -path d:\access.log -pattern "www.ok.ru" -allmatches -simplematch



Указанный сайт только пример реально искался другой. В этом случае вы получите целый список строк в котором будут строки в которых записи о посещении данного сайта. При использовании регулярных выражений можно добиться более точной информации
Path - путь к файлу с логами(он может быть и не один, например можно указать *.txt и тогда будет осуществляется поиск по всем текстовым файлам на диске D).
Pattern - эталонная строка для поиска, вот она как раз может содержать регулярное выражение

После получения списка мне оставалось только время из лога перевести из unix в понятное

Порадовала скорость с которой отработал PoSH

Пост мало содержателен, но пока все что есть по существу

Комментарии

Популярные сообщения из этого блога

PowerShell. Коммандлет для паузы в выполнении скрипта Wait-Event

Первоначальная настройка МФУ Kyocera FS-1035MFP для печати по сети