Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.54/35: Рейтинг темы: голосов - 35, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 21

Обработка лога

22.09.2014, 01:55. Показов 7004. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
С помощью "кирпичиков" на cyberforum получился текст. Задача- обработка логов с поиском заданных строк, сравнить полученный массив со "вчерашним" списком ip и выдать уникальный.
Уверен, что количество действий может быть существенно сокращено и столько файлов наверное не надо создавать.
Посмотрите пожалуйста, как можно сократить.
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#Используем номер дня в году
$numf = New-Object DateTime
$numf = Get-Date -UFormat %j
#Номер вчерашнего дня
$numf0=$numf-1
#имена промежуточных файлов
$numf1="A$numf"
$numf2="B$numf"
$numf3="C$numf"
$numf4="D$numf"
$numf5="E$numf"
$numf6="F$numf"
$numf7="G$numf"
#Поиск строк по 1-му критерию
get-content D:\security.log|?{$_ -match "doesn't exist. Attempt from IP address \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"}|%{$Matches[0]}| Select-Object -Unique | Set-Content D:\$numf1.txt
#оставляем только ip
$text = Get-Content d:\$numf1.txt
$text -replace "doesn't exist. Attempt from IP address ","" >d:\$numf2.txt
#Поиск строк по 2-му критерию
get-content D:\security.log|?{$_ -match "Failed POP3 login from \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"}|%{$Matches[0]} | Select-Object -Unique | Set-Content D:\$numf3.txt
#оставляем только ip
$text = Get-Content D:\$numf3.txt
$text -replace "Failed POP3 login from ","" >D:\$numf4.txt
#Поиск строк по 2-му критерию
get-content D:\security.log|?{$_ -match "SMTP Spam attack detected from \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}"}|%{$Matches[0]} | Select-Object -Unique | Set-Content D:\$numf5.txt
#оставляем только ip
$text = Get-Content D:\$numf5.txt
$text -replace "SMTP Spam attack detected from ","" >D:\$numf6.txt
# ЗДЕСЬ НЕ ПОЛУЧАЕТСЯ СКОПИРОВАТЬ В ОДИН ФАЙЛ ВЧЕРАШНИЙ ИТОГОВЫЙ ЛОГ IP И НОВЫЕ
Copy-Item -Path $numf0 + $numf2 + $numf4 + $numf6 -Destination $numf7
#чтобы получить только свежий список уникальных ip адресов.
Get-Content D:\$numf7.txt | Select-Object -Unique | Set-Content D:\$numf.txt
#удаляем промежуточные файлы
Remove-Item D:\$numf1.txt
Remove-Item D:\$numf2.txt
Remove-Item D:\$numf3.txt
Remove-Item D:\$numf4.txt
Remove-Item D:\$numf5.txt
Remove-Item D:\$numf6.txt
Remove-Item D:\$numf7.txt
Так же не нашел решения как свести несколько файлов в один наподобие "copy 1.txt + 2.txt 3.txt"
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.09.2014, 01:55
Ответы с готовыми решениями:

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

Парсинг лога
Доброго времени суток! Прошу помощи профессионалов. Нужен скрипт который распарсит лог: 1) Берём название файла который лежит в папке...

Парсер лога
Прошу помощи в написании скрипта: Необходимо распарсить лог C:\Windows\WindowsUpdate.log. Поскольку лог пишется сверху вниз то с...

26
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 21
28.09.2014, 18:26  [ТС]
Студворк — интернет-сервис помощи студентам
Уважаемый borne,
посмотрите пожалуйста крайнюю редакцию в предыдущем посте.
Если у Вас не возникнет желания что-то поменять, то закроем это проект.
У меня этот скрипт работает отлично!
0
 Аватар для borne
88 / 88 / 37
Регистрация: 28.11.2012
Сообщений: 309
29.09.2014, 15:49
Вроде выглядит нормально, тем более если оно работает как должно... Единственное я бы при "незапуске" службы отправлял админу не письмо а NetSend...
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 21
29.09.2014, 16:05  [ТС]
Цитата Сообщение от borne Посмотреть сообщение
отправлял админу не письмо а NetSend...
типа так?

PowerShell
Send-Messege -Name comp-name -Message "Текст сообщения"
0
 Аватар для borne
88 / 88 / 37
Регистрация: 28.11.2012
Сообщений: 309
29.09.2014, 16:14
нет именно netsend через:
PowerShell
&net send "кому" "что"
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 21
29.09.2014, 16:28  [ТС]
но net send в старом понимании после 2008 сервера уже не работает. Т.е. такая конструкция не работает на WinServer 2012:
Code
1
net send comp-name "Текст сообщения"
0
 Аватар для borne
88 / 88 / 37
Регистрация: 28.11.2012
Сообщений: 309
29.09.2014, 16:44
тогда да, тока письмо на мыло...
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 21
29.09.2014, 17:27  [ТС]
ок. borne, огромное спасибо за решение задачи!
Зарываем это проект как завершенный.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.09.2014, 17:27
Помогаю со студенческими работами здесь

Парсинг лога
Есть скрипт: gci C:\1 |?{!($_.psiscontainer)} | %{gc "C:\temp.log" | sls -pattern $($_.Name)} Строчки с именем фалов то на ходит,...

Поменять формат лога
Здравствуйте! У меня есть следующее задание. Есть исходный формат лога программы: Исходный формат лога: Jul 6 17:35:10 sdc-prius...

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

Ведение лога стабильности соединения
Появилась необходимость проверки стабильности интернет соединения. первое что пришло в голову это ping -t 8.8.8.8 > log.txt. Но...

Нужна помощь гуру в разборе лога отправики и чтения лога
Уважаемые специалисты в ARM Sortix. Нужна помощь в разборе лога отправки и чтения Sortix-R по COM-порту. Соответственно - есть логи...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru