1 / 1 / 1
Регистрация: 04.03.2012
Сообщений: 101
|
|
1 | |
анализ лог файла03.05.2012, 18:25. Показов 3564. Ответов 8
Метки нет (Все метки)
Здравствуйте! Недавно решил посвящать свое свободное время веб программированию. Увлеченно учу html css javascript. Пару дней назад начал изучение php. Через некоторое время нужно сдавать лабораторную работу по обработке лог файла. Слышал что на php это решается легче всего. Буду рад, если кто-нибудь откликнется, от себя обязуюсь что не заброшу изучение сего языка.
Суть: Написать программу по разбивке и анализу содержимого файла отчета работы ПО (log-файла). Необходимо проанализаровать и подсчитать запросы, а также вывести их в алфавитном порядке с подсчетом количества повторений. Программа должна выдавать отчет о своей работе в виде: Дата Запросы 25.04.2002 - 12 26.04.2002 - 10 27.04.2002 - 5 ... Всего было сделано (запросов) - 1679 Сортировка запросов: Бухгалтерский учет - 25 Бухгалтерский журнал - 30 Экономика Томска - 6 Экономика Якутии - 1 ... Пример файла отчета работы программы wslog.txt Сортировку запросов необходимо проводить по CGI-переменным S21STR= S21ALL= Вставил кусок лог файла, в оригинале он намного больше (400кб)
0
|
03.05.2012, 18:25 | |
Ответы с готовыми решениями:
8
Постоянный парсинг лог-файла Анализ лог файла apache Анализ лог-файла маршрутизатора Провести анализ лог-файла tcpdump с помощью scapy |
shafl
|
03.05.2012, 19:09
#2
|
Не по теме: приложите весь лог, прошу в личных целях :)
0
|
1 / 1 / 1
Регистрация: 04.03.2012
Сообщений: 101
|
|
03.05.2012, 19:51 [ТС] | 3 |
0
|
1 / 1 / 1
Регистрация: 04.03.2012
Сообщений: 101
|
||||||
05.05.2012, 10:59 [ТС] | 4 | |||||
Так, кое-что получилось сделать.
Добавлено через 23 минуты Появилась небольшая идея, но как реализовать не пойму что-то. Записать все даты в отдельный файл как обычную строку через пробел каждую дату, потом подсчитать количество одинаковых дат и вывести. 25.02.2002 25.02.2002 25.02.2002 26.02.2002 26.02.2002 26.02.2002 26.02.2002 26.02.2002 25.02.2002 - 3 26.02.2002 - 5
0
|
258 / 147 / 37
Регистрация: 24.01.2011
Сообщений: 427
|
|
05.05.2012, 11:20 | 5 |
считывайте всё в массив построчно с помощью file() и работайте с массивом.
0
|
1 / 1 / 1
Регистрация: 04.03.2012
Сообщений: 101
|
||||||
05.05.2012, 12:15 [ТС] | 6 | |||||
Сделал так:
Добавлено через 4 минуты Теперь самое трудное-сортировка запросов. Можно ли использовать функцию parse_str? Я посмотрел, вроде подходит, так как у нас перед названием стоит &002S21STR.
0
|
258 / 147 / 37
Регистрация: 24.01.2011
Сообщений: 427
|
|
05.05.2012, 12:28 | 7 |
я бы рекомендовал регулярными выражениями парсить
0
|
1 / 1 / 1
Регистрация: 04.03.2012
Сообщений: 101
|
|||||||||||
05.05.2012, 14:37 [ТС] | 8 | ||||||||||
1 проблема: выдает ошибку Undefined variable: kind в 47 строке, появилась внезапно, после перезагрузки сервера (wampserver), до этого не было.
2 проблема: косячит с подсчетом Бухгалтерского учета (пишет больше чем есть на самом деле) 3 проблема: почемуто не удаляет первый символ при сортировке с помощью unset , хотя с датами все нормально удалялось.
Содержимое лог-файла:
0
|
1 / 1 / 1
Регистрация: 04.03.2012
Сообщений: 101
|
|||||||||||
05.05.2012, 19:25 [ТС] | 9 | ||||||||||
Разобрался со всем, кроме:
когда за забросом идет пустой заброс, этот запрос почему-то считается предыдущим запросом. На примере:
Вот кусок кода, отвечающий за это:
0
|
05.05.2012, 19:25 | |
05.05.2012, 19:25 | |
Помогаю со студенческими работами здесь
9
Анализ лог файлов Анализ лог файлов на C# Запись лог файла Ошибки лог-файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |