Отчет по лабораторной работе №2 Ревизия




Скачать 270.31 Kb.
НазваниеОтчет по лабораторной работе №2 Ревизия
страница1/7
Дата публикации19.06.2013
Размер270.31 Kb.
ТипОтчет
lit-yaz.ru > Информатика > Отчет
  1   2   3   4   5   6   7


Разработка многопроцессного приложения для анализа логов web-сервера Apache

Отчет по лабораторной работе №2

Ревизия: 0.1

История изменений


30.01.2011 – Версия 0.1. Первичный документ. Влад Ковтун

Содержание


История изменений 2

Содержание 3

Лабораторная работа 2. Разработка многопроцессного приложения для анализа логов web-сервера 5

Постановка задачи 5

Цель 5

Задачи 5

Вход 5

Пример 6

Вывод 6

Требования 6

Алгоритм 7

Управляющий процесс 9

Обзор 9

Интерфейс 10

Обработка 10

Процесс первичного анализа 12

Обзор 12

Интерфейс 12

Обработка 12

Процесс вторичного анализа 12

Обзор 12

Интерфейс 13

Обработка 13

Процесс формирования результата 13

Обзор 13

Интерфейс 14

Обработка 14

Хранилища данных 14

Обзор 14

Структура хранилища первичных данных 14

Структура хранилища вторичных данных 15

Обработка 15

Программная реализация 15

Обзор 15

Работа с БД 16

Доступ к данным 16

Работа с данными 16

Межпроцессное взаимодействие 16

Обзор 16

Тестирование 16

Эксперимент 16

Описание экспериментальной установки 16

Аппаратное обеспечение 16

Программное обеспечение 17

Результаты эксперимента 18

Выводы 19

Литература 19
^

Лабораторная работа 2. Разработка многопроцессного приложения для анализа логов web-сервера

Постановка задачи

Цель


Разработать консольное распределенное приложение, которое анализирует логи web-сервера Apache, основываясь на парадигме параллельных вычислений.

Задачи


1. Ознакомиться с понятиями процессов и потоков в ОС.

2. Ознакомиться с понятиями межпроцессного и межпоточного взаимодействия.

3. Разработать консольное распределенное приложение для параллельного анализа нескольких файлов логов web-сервера Apache.

3.1. На основе файлов логов web-сервера, следует сформировать следующую статистику:

  • количество уникальных посетителей за каждый день.

  • наиболее популярные браузеры.

  • наиболее популярные ОС.

  • наиболее популярные страницы (ссылки).

  • наиболее активные пользователи (IP) за каждый день.

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

5. Провести исследование разработанного приложения.

5.1. Оценить производительность приложения, при различном количестве процессов чтения и анализа. Количество процессов следует изменять от 1 до 8.

6. Оформить функциональную спецификацию на приложение. В функциональной спецификации обязательно указать, каким образом производится тестирование на корректность.

7. Оформить отчет к лабораторной работе.

Вход


В качестве входных данных предлагается использовать файлы логов web-сервера Apache, которые сжаты с помощью архиватора ZIP (GZIP). Эти файлы находятся на общедоступном сетевом хранилище, что позволяет получить к ним доступ любой рабочей станции данной корпоративной сети.

Для управления приложением предлагается использовать следующие ключи командной строки:

  • /id: – полный путь к директории, в которой хранятся файлы логов для анализа. Данный параметр является обязательным, если он не указан, то происходит вывод на экран соответствующего сообщения и подсказки по использованию данного приложения. Отметим, что путь является как локальным, так и сетевым, что позволяет производить к нему доступ одновременно не только с одной рабочей станции, но и с нескольких рабочих станций в сети.

  • /if: - перечисление имен файлов логов через пробел, которые необходимо проанализировать. Файлы обязаны, находится в директории указанной с помощью ключа /id. Данный ключ позволяет осуществлять выборочный анализ файлов логов.

  • /o: – полный путь к файлу, либо имя файла, который будет хранить отчет. Если данный параметр не указывается, то вывод производится на экран.

  • /r: - перечисляются, через пробел, IP адреса компонентов (с указанием портов), которые будут производить чтение данных из файлов.

  • /a: - перечисляются, через пробел, IP адреса компонентов (с указанием портов), которые будут производить анализ данных из хранилища с результатами первичного анализа.

  • /g: - указывается IP адрес компонента (с указанием порта), который будут производить формирование финального отчета, на основе данных из хранилища результатов первичного анализа.

  • /s1: - указывается IP адрес (или имя сервера) компонента (с указанием порта), который является хранилищем данных – результатов первичного анализа. Кроме того, через пробел указывается имя пользователя и его пароль, под которым следует производить подключение. В случае отсутствия имени пользователя и пароля, подразумевается, что будет использоваться windows-аутентификация.

  • /s2: - указывается IP адрес (или имя сервера) компонента (с указанием порта), который является хранилищем данных – результатов вторичного анализа. Кроме того, через пробел указывается имя пользователя и его пароль, под которым следует производить подключение. В случае отсутствия имени пользователя и пароля, подразумевается, что будет использоваться windows-аутентификация.

  • /start: - указывается дата, с которой интересует информация в логах. Если дата не указана, то берется самая первая дата из записей логов.

  • /finish: - указывается дата, до которой интересует информация в логах. Если дата не указана, то берется самая последняя дата из записей логов.

  • /? - вывод информации о допустимых ключах командной строки.

Параметры – размеры буферов, настраиваются индивидуально для каждого компонента.

Пример


Анализ 9 файлов логов web-сервера Apache, которые находятся в публичном хранилище \\file-storage\logs\ результат анализа выводится в файл \\file-storage\reports\report.dat.

C:/>analyser.exe /id:”\\file-storage\logs\” /if:access-www.1.log access-www.2.log access-www.3.log access-www.4.log access-www.5.log access-www.6.log access-www.7.log access-www.8.log access-www.9.log /r:192.168.1.20 192.168.1.21 /a:192.168.1.20:8800 192.168.1.22 /g:192.168.1.22:8800 /s1:192.168.1.23 /s2:192.168.1.24 /o:”\\file-storage\reports\report.dat

Вывод


Во время работы приложения, рекомендуется выводить информацию о статусе приложения, а также о корректности его работы на консоль.

Другими словами, необходимо анализировать, сколько процентов из каждого файла – проанализировано.

Допускается перенаправление вывода консоли в текстовый файл, например:

C:/>analyser.exe /id:”\\file-storage\logs\” /if:access-www.1.log access-www.2.log access-www.3.log access-www.4.log access-www.5.log access-www.6.log access-www.7.log access-www.8.log access-www.9.log /r:192.168.1.20 192.168.1.21 /a:192.168.1.20:8800 192.168.1.22 /g:192.168.1.22:8800 /s1:192.168.1.23 /s2:192.168.1.24 /o:”\\file-storage\reports\report.dat >console.txt

Требования


  • Архитектура приложения строится по модульному принципу.

  • За основу принимается стандартная библиотека С++ (в случае разработки на C++).

  • Рекомендуется использовать защищенные ресурсы и указатели.

  • Обязательным является обработка исключений.

  • Во время работы приложения обязательным является отображение информации о статусе приложения, т.е. оно работает, обработано столько-то процентов текста.

  • Следует предусмотреть возможность работы приложения в отладочном режиме, когда вся информация заносится в лог приложения. Допускается ведение персонального лога для каждого из процессов (потоков).

  • Исходный код обязан быть комментирован. Для C# следует использовать нотацию Microsoft XML Documentation [^ 1], для C++ следует использовать нотацию doxygen [2].
  1   2   3   4   5   6   7

Добавить документ в свой блог или на сайт

Похожие:

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе должен содержать введение, отражающее...
Для каждой лабораторной работы приведены перечень теоретических вопросов для сдачи коллоквиумов и перечень вопросов для сдачи отчетов....

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе Отчет представляет собой таблицу вида
В первом окне выводятся различные элементы управления (RadioButton, CheckBox, MaskEdit – в соответствии с заданием)

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе Тема: «Умножение разреженных матриц»
Государственное образовательное учреждение высшего профессионального образования Нижегородский государственный университет

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе Тема: «Умножение разреженных матриц»
Государственное образовательное учреждение высшего профессионального образования Нижегородский государственный университет

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе №1 по предмету «Экономико-математические...
Предложения (рекомендации) лицу, ответственному за принятие решений, по оптимальному управленческому поведению 6

Отчет по лабораторной работе №2 Ревизия iconМетодические указания к выполнению лабораторной работе «решение систем...
В ряде практических задач управления и оптимизации приходится решать системы линейных алгебраических уравнений (слу). В настоящей...

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе по дисциплине "Технологии программирования"...
Пояснительная записка: с., 22 рис., 17 табл., 11 библиограф источников, 2 приложения

Отчет по лабораторной работе №2 Ревизия iconОтчёт по лабораторной работе №4 по курсу «Безопасность программ и...
В качестве симметричного алгоритма используется алгоритм des с режимом шифрования cbc

Отчет по лабораторной работе №2 Ревизия iconОтчет по нир должен содержать исчерпывающие сведения о выполненной...
Южный филиал Национального университета биоресурсов и природопользования украины

Отчет по лабораторной работе №2 Ревизия iconОтчет по лабораторной работе по дисциплине "Технологии программирования"...
Произвести анализ предметной области по методологии объектной декомпозиции и разработать логический проект системы по технологии...



Образовательный материал



При копировании материала укажите ссылку © 2013
контакты
lit-yaz.ru
главная страница