voliuf.narod.ru

главная

друзья

помощь сайту

Администрирование web-серверов в IIS

Бесплатные учебники по темам

Партнерская программа

1.Базовые сведения об IIS

2.Служба WWW

3.Служба FTP

4.Служба SMTP

5.Служба NNTP

6.Безопасность

7.Аутентификация

8.TCP/IP и DNS

9.Задачи по администрированию

10.Шифрование

11.Ведение журналов

12.Программирование на ASP


Администрирование web-серверов в IIS
11.Ведение журналов
  

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

 

Каждый тип журнала имеет как преимущества, так и недостатки (см. табл. 11.1).

 
Таблица 11.1. Преимущества и недостатки журналов
Тип журнала Преимущества Недостатки
W3C Extended (Расширенный формат журнала W3C) Наибольшее количество параметров и информации. Самый распространенный формат. Запись кодов подсостояний Большой размер файла при выборе слишком многих параметров.
Microsoft IIS (Формат журнала Microsoft IIS) Простота импортирования в другие форматы Неизменяемый ASCII-формат. Содержит только основную информацию.
NCSA Common (Общий формат журнала NCSA) Распространенный формат файлов, используемый многими веб-серверами. Совместимость с журналами веб-серверов не от Microsoft Неизменяемый ASCII-формат. Отсутствует возможность записи для FTP-сайтов. Регистрирует самые основные данные.
ODBC (Журнал ODBC) Запись информации в базу данных. Генерирование отчетов. Многие программы-анализаторы журналов не работают с этим форматом. Фиксирует меньше данных по сравнению с расширенным форматом.
 

Форматы журналов

В IIS используются четыре формата журналов:

 
  • W3C Extended (Расширенный формат журнала W3C);
  • Microsoft IIS (Формат журнала Microsoft IIS);
  • NCSA Common (Общий формат журнала NCSA);
  • ODBC (Журнал ODBC).
 

Форматы W3C Extended, Microsoft IIS и NCSA Common являются текстовыми ASCII-форматами. В журналах расширенного формата W3C и общего формата NCSA используется четырехзначный формат года, в журналах Microsoft IIS – двузначный формат года (для обеспечения совместимости с предыдущими версиями IIS).

 

Ведение журналов на сайте

Ведение журналов настраивается либо на уровне отдельного сайта, либо на компонентном уровне IIS. Веб-сайты и FTP-сайты сгруппированы на уровнях Web Sites и FTP Sites соответственно. NNTP- и SMTP-сайты на компонентном уровне не сгруппированы, и каждый узел представлен отдельной записью в списке узлов локального компьютера консоли IIS. Если ведение журнала настраивается на компонентном уровне, то указываемые настройки будут действовать для всех сайтов рассматриваемого сервера. Если ведение журналов настраивается на уровне отдельного сайта, оно будет работать только для данного сайта. Для включения журнала выполните следующие действия.

 
  1. Откройте консоль IIS MMC с помощью команды Start\Administrative Tools\Internet Information Services (IIS) Manager (Пуск\Администрирование\Диспетчер IIS).
  2. Щелкните правой кнопкой мыши на сайте или компоненте, для которого настраивается журнал, и выберите пункт Properties (Свойства).
  3. Параметры ведения журнала всегда отображаются на вкладке, открывающейся по умолчанию в окне свойств выбранного компонента (см. рис. 11.1).
  4. Отметьте опцию Enable Logging (Включить журнал).
  5. Выберите нужный тип журнала в ниспадающем меню Active Log Format (Формат активного журнала).
 

 

Окно свойств веб-сайта

Рис. 11.1.  Окно свойств веб-сайта

 

 

Окно свойств журнала

Нажмите на кнопку Properties (Свойства) в области Enable Logging (Включить журнал) окна свойств. Отобразится окно Logging Properties (Свойства журнала) (см. рис. 11.2). Для каждого типа журнала, кроме ODBC, вкладка General (Общие) выглядит одинаково. Вкладка с дополнительными параметрами отображается только при использовании формата W3C Extended Logging (Расширенный формат W3C).

 

 

Окно свойств журнала

Рис. 11.2.  Окно свойств журнала

 

 

New Log Schedule (Расписание создания новых журналов). В данной области указывается время создания новых журналов.

 
  • Hourly (Ежечасно). Создается каждый час.
  • Daily (Ежедневно). Первая запись фиксируется каждый день после полуночи
  • Weekly (Еженедельно). Первая запись фиксируется после полуночи субботы, т.е. ранним утром в воскресенье.
  • Monthly (Ежемесячно). Первая запись фиксируется после полуночи последнего дня месяца (т.е. в первый день следующего месяца).
  • Unlimited (Не ограничено). Всегда используется один и тот же файл журнала. В этом случае доступ к файлу журнала возможен только при остановке службы, использующей этот файл.
  • When The File Size Reaches (Когда размер файла достигает). Файл журнала создается по достижении указанного значения – от 1 до 4000 Мб.
 

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

 

Use Local Time for File Naming and Rollover (Использовать местное время в имени файла). Данная опция отображается только в окне свойств журнала W3C Extended, потому что в остальных форматах используется местное время. Расширенный формат W3C использует время по Гринвичу (GMT) или универсальное время (Universal Time Format, UTC). Поскольку местное время обычно отличается от универсального времени, эту опцию необходимо включить.

 

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

 

Choose the Log File Directory (Каталог файла журнала). Для указания каталога, в котором будет сохраняться журнал, введите путь к файлу журнала либо нажмите на кнопку Browse (Обзор) и перейдите в нужный каталог. По умолчанию указан каталог %systemroot%\System32\LogFiles. Каждый сайт имеет в этом каталоге свою собственную папку. Для сайтов используются следующие правила именования.

 
Веб-сайты W3SVC#
FTP-сайты MSFTPSVC#
SMTP-сайты SmtpSvc#
NNTP-сайты NntpSvc#
 

Символ "#" обозначает номер конкретного узла. Каждому создаваемому узлу присваивается свой номер, сгенерированный случайным образом. Номер веб-сайта по умолчанию всегда равен 1, поэтому папка журнала сайта по умолчанию называется W3SVC1. Если номер второго веб-сайта –34523453, то папка журнала этого сайта называется W3SVC34523453.

 

Правила именования журналов

Файлы журналов именуются в соответствии с определенными правилами. Имя файла назначается по периоду времени, в течение которого фиксировались данные. Это позволяет определить, к какому промежутку времени относится журнал.

 

Для каждого типа журнала предусмотрены следующие правила именования.

 
Hourly (Ежечасно) XXггммддчч.log
Daily (Ежедневно) XXггммдд.log
Weekly (Еженедельно) XXггммнн.log
Monthly (Ежемесячно) XXггм.log
 

Символы "XX" заменяются аббревиатурой, указывающей типа журнала.

 
Журналы W3C ex
Журналы Microsoft IIS in
Журналы NCSA nc
 

Примечание. О журналах ODBC вы узнаете в разделе "Журналы ODBC" далее в лекции.

 

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

 
Журналы W3C extend#.log
Журналы Microsoft IIS inetsv#.log
Журналы NCSA ncsa#.log
 

Файлы журналов и дисковое пространство

Если при добавлении записи в журнал обнаруживается отсутствие свободного пространства на жестком диске, то ведение журналов отключается. В журнале приложения сервера фиксируется соответствующее событие. IIS выполняет мониторинг дискового пространства, и после высвобождения на диске необходимого места журнал IIS снова активируется.

 

Форматы журналов

Каждый файл журнала имеет свой формат. Рассмотрим форматы текстовых файлов журналов.

 

Расширенный формат журнала W3C

Наиболее распространенным форматом журнала является расширенный формат W3C. Он обеспечивает высокую гибкость настройки параметров ведения журнала. Данный формат предложен Консорциумом WWW (W3C) – организацией, которая занимается разработкой спецификаций для интернет-технологий. Веб-сайт W3C расположен по адресу http://www.w3.org.

 

Расширенный формат W3C является настраиваемым ASCII-форматом, он позволяет задавать поля, фиксируемые в журнале, ограничивая тем самым его размер. Компания Microsoft использует несколько дополнительных полей в формате W3C. Рассмотрим этот формат более подробно.

 

Спецификации расширенного формата журнала

Расширенный формат разработан для обхода ограничений, имеющихся в общем формате, а также для введения стандарта журналов, не зависящего от операционной системы или веб-сервера. Расширенный формат использует обычный ASCII-текст. Каждая строка называется директивой или записью.

 

Директивы журнала. Директивы содержат информацию о файле журнала и его свойствах. Директивы отображаются в начале журнала, им предшествует символ "#". Имеется всего семь директив, однако только две из них являются обязательными.

 
  • Version (Версия). Определяет версию журнала W3C.
  • Software (Программное обеспечение). Указывает программный пакет, с помощью которого сгенерирован журнал.
  • Start-Date (Дата начала). Указывает дату и время начала ведения журнала.
  • End-Date (Дата окончания). Указывает дату и время окончания ведения журнала.
  • Date (Дата). Указывает дату и время добавления директив в начало журнала.
  • Remark (Комментарии). Комментарии, вводимые в журнал. Эта запись игнорируется программными анализаторами журнала.
  • Fields (Поля). Указывает поля, используемые в журнале. Это наиболее важная директива, поскольку содержит подробную информацию о том, как должны считываться данные из записи. В директиве Fields содержится префикс, определяющий ассоциирование данных с клиентом и/или сервером.
 

Записи журнала. Записи журнала фиксируют события текущего пользователя или события процесса. Каждая запись включает префикс и поле. Префикс отображается перед любым полем и обозначает клиента и/или сервер, с которым связаны данные. Описание префиксов приведено ниже.

 
c Клиент
s Сервер
r Удаленный
cs Клиент-сервер
sc Сервер-клиент
sr Сервер-удаленный сервер
rs Удаленный сервер-сервер
x Приложение
 

Примечание. Реализация расширенного формата журнала не предусматривает использование префиксов sr, rs и x. Они включены в список для полноты повествования.

 

Каждая запись журнала отображается в отдельной строке и отделяется пробелом. Это исключает использование какого-либо символа (например, запятой) для разделения записей. Ведь символ разделения может находиться в самой записи, что приведет к отрезанию содержимого журнала, расположенного после него. Если запись в поле отсутствует, то для обозначения пустой записи используется символ "-". Таким образом, все записи журнала содержат одинаковое число полей.

 

В таблице 11.2 приведены поля, определенные для ведения журнала в формате W3C.

 

Поскольку формат W3C является настраиваемым, в него могут быть добавлены и другие поля. Реализация журналов W3C от Microsoft предусматривает дополнительные поля (см. табл. 11.3).

 
Таблица 11.2. Стандартные поля расширенного формата журнала W3C
Поле Описание
date Дата выполнения транзакции. Имеет формат ГГГГ-ММ-ДД и записывается согласно времени по Гринвичу.
time Время выполнения транзакции. Имеет 24-часовой формат и записывается согласно времени по Гринвичу.
time-taken Время , затраченное на выполнение транзакции (с).
bytes Количество переданных байтов.
cached Фиксирует успешное обращение в кэш.
ip IP-адрес и (необязательно) номер порта (IIS использует отдельное поле).
dns Полное имя DNS (FQDN).
status Состояние в терминах FTP и HTTP.
comment Комментарий, связанный с кодом состояния.
method Используемый метод.
uri Полный URI.
uri-stem Основная часть URI.
uri-query Часть URI, представляющая собой запрос.
 
Таблица 11.3. Дополнительные поля расширенного формата журнала W3C
Поле Описание
username Имя пользователя для выполненной транзакции.
sitename Номер службы интернета и номер экземпляра, к которому осуществил доступ клиент.
computername Имя сервера, на котором сгенерирована запись.
port Номер порта.
Win32-status Состояние в терминах Windows.
version Версия протокола для данной транзакции.
host Содержимое заголовков узлов.
user-agent Браузер клиента.
Cookie Содержимое отправленных или принятых элементов cookie.
referrer Адрес предыдущего сайта.
 

Примечание. Некоторые пользователи могут спросить, почему вместо URL используется URI. Ответить на данный вопрос довольно сложно, поскольку существуют классические и современные интерпретации URI и URL. Даже W3C и IETF согласны с тем, что эти сокращения часто становятся причиной путаницы. Так как W3C использует URI, в рамках этой лекции (и в целях простоты) будем интерпретировать URI как элемент, идентичный URL.

 

Расширенные параметры ведения журнала W3C

Область Extended Logging Options (Расширенные опции ведения журнала) во вкладке Advanced (Дополнительно) (см. рис. 11.3) отображает свойства, указываемые при создании файла журнала. После каждой опции в скобках показан соответствующий префикс. В реализации от Microsoft формат W3C оптимизирован для ведения журналов с наиболее распространенными полями. Расширенный формат журнала использует стандарт W3C для префиксов и полей.

 

Отметьте опции, соответствующие элементам, которые необходимо включить в файл журнала. Расширенные опции журналов W3C приведены в табл. 11.4.

 

 

Окно Extended Logging Options (Расширенные параметры ведения журнала)

Рис. 11.3.  Окно Extended Logging Options (Расширенные параметры ведения журнала)

 

 
Таблица 11.4. Расширенные опции журнала W3C
Опция Префикс Описание
Date   Дата транзакции.
Time   Время транзакции.
Client IP address c-ip IP-адрес клиента.
User Name cs-username Имя пользователя, используемое клиентом для подключения к серверу; анонимные пользователи обозначаются дефисом ("-").
Service Name s-sitename Имя сайта сервера.
Server Name s-computername Имя компьютера сервера.
Server IP Address s-ip IP-адрес сервера.
Server Port s-port Номер порта, используемого сайтом на сервере.
Method cs-method Метод, используемый клиентом для доступа к серверу (например, HTTP GET).
URI Stem cs-uri-stem Основная часть URI, отправленная клиентом серверу, путь к документу (все, что указывается после имени сервера).
URI Query cs-uri-query Запрос URI, отправленный клиентом серверу (если таковой имеется).
Protocol Status sc-status Сообщение о состоянии протокола (например, "404: HTTP не найден").
Win32 Status sc-win32-status Состояние Windows от сервера клиенту (равно нулю при отсутствии ошибок).
Bytes Sent sc-bytes Количество байт, отправленных сервером клиенту.
Bytes Received cs-bytes Количество байт, отправленных клиентом серверу.
Time Taken time-taken Время, затраченное на транзакцию (с).
Protocol Version cs-version Версия протокола (например, HTTP/1.1).
Host cs-host Заголовки узлов, использованные клиентом для доступа к серверу.
User Agent cs(User-Agent) Тип браузера клиента.
Cookie cs(Cookie) Содержимое элементов сookie.
Referer cs(Referer) Адрес предыдущего сайта.
 

Коды ошибок подсостояния

Журналы расширенного формата W3C позволяют фиксировать ошибки на страницах. IIS6 не возвращает коды ошибок подсостояний HTTP, поэтому браузер не может определить, в чем заключается ошибка. Например, состояние HTTP 404 означает следующее: "Файл или каталог не найден". Эта ошибка возникает по многим причинам, и коды подсостояний позволяют разъяснять их. Например, состояние HTTP 404.2 означает, что политика блокировки запрещает получение данного файла. Для ASP необходимо включить расширение веб-службы для активных страниц сервера. Cообщение об ошибке полностью отображается в файле журнала, а вот клиент получит только часть этого сообщения – номер 404. Коды подсостояний учитываются только в журнале расширенного формата W3C.

 

На рисунке 11.4 показан фрагмент журнала расширенного формата W3C, открытый в программе Notepad (Блокнот).

 

Несмотря на свою сложность, расширенный формат W3C является очень гибким и позволяет фиксировать максимальное количество параметров.

 

 

Фрагмент журнала расширенного формата W3C

Рис. 11.4.  Фрагмент журнала расширенного формата W3C

 

 

Формат журнала Microsoft IIS

Журнал Microsoft IIS представляет собой неизменяемый файл ASCII, включающий основную информацию о каждой транзакции. Этот формат использует разделители-запятые и поэтому прекрасно импортируется в Microsoft Excel. Поля в журнале являются предопределенными и неизменными, поэтому информация о заголовках не очень важна, в отличие от формата W3C. Для этого формата отсутствует окно расширенных параметров. Пустое поле обозначается дефисом ("-"), время фиксируется в местном 24-часовом формате.

 

Поля журнала Microsoft IIS

Журнал Microsoft IIS включает следующие поля.

 
Поле Описание
Client IP Address IP-адрес компьютера клиента.
User Name Имя пользователя, используемое клиентом для подключения к серверу; анонимные пользователи обозначаются дефисом ("-").
Date Дата транзакции.
Time Время транзакции.
Service and Instance Номер службы и экземпляр определенного сайта (например, W3SVC1).
Computer Name Имя NetBIOS сервера (примечательно, что это не DNS-имя).
Server IP-address IP-адрес сервера.
Time Taken Время, затраченное на выполнение транзакции.
Bytes Sent Количество байт, отправленных сервером клиенту.
Bytes Received Количество байт, отправленных клиентом серверу.
Service Status Code Сообщение о состоянии протокола (например, "404: HTTP не найден").
Windows Status Code Состояние Windows от сервера клиенту (равно нулю при отсутствии ошибок).
Request Type Метод, используемый клиентом для доступа к серверу (например, HTTP GET).
Target URL Основная часть URI.
Parameters Параметры, переданные сценарию.
 

На рисунке 11.5 показан фрагмент журнала в формате Microsoft IIS.

 

 

Фрагмент журнала Microsoft IIS

Рис. 11.5.  Фрагмент журнала Microsoft IIS

 

 

Общий формат журнала NCSA

Общий формат журнала NCSA представляет собой неизменяемый) ASCII-файл. Он был разработан для HTTP-сервера CERN – самого первого веб-сервера. Данный формат не совместим с FTP-сайтами, тем не менее, его можно использовать на SMTP- и NNTP-сайтах IIS. Журнал NCSA фиксирует основную информацию о транзакции. Поля в журнале разделяются пробелами, пустое поле обозначается дефисом ("-"). Время фиксируется в местном 24-часовом формате.

 

Поля журнала общего формата NCSA

Журнал общего формата NCSA включает следующие поля.

 
Поле Описание
Remote hostname or IP address IP-адрес удаленного пользователя либо имя узла (при наличии DNS), посредством которого обработано имя.
User Name Имя пользователя при удаленном входе.
Authenticated name Имя пользователя при аутентификации на сервере.
Date Дата, время и временной пояс запроса.
Request Использованные в запросе метод, основная часть URI и протокол.
HTTP status code Сообщение о состоянии протокола (например, "404: HTTP не найден").
Bytes transferred Количество байт, переданных клиентом серверу.
 

На рисунке 11.6 показан фрагмент журнала NCSA.

 

 

Фрагмент журнала общего формата NCSA

Рис. 11.6.  Фрагмент журнала общего формата NCSA

 

 

Преобразование журналов в формат NCSA

Журналы, представленные другими форматами, можно преобразовывать в формат NCSA. Для этого используется утилита convlog.exe, расположенная в каталоге %systemroot%\System32. При переводе журнала в формат NCSA отсутствующие в этом формате поля игнорируются, а остальные поля преобразуются в стандарт NCSA.

 

Утилиту Convlog целесообразно применять в том случае, если анализатор файлов журнала работает только с форматом NCSA, либо преобразование файла требуется для совместимости с веб-серверами, работающими с форматом NCSA. Утилита Convlog.exe запускается из командной строки. Синтаксис команды имеет следующий вид:

 
convlog [параметры] [файл журнала]
 

Утилита convlog поддерживает следующие параметры.

 
Параметр Описание
-ii Задает в качестве формата Microsoft IIS.
-in Задает в качестве формата NCSA.
-ie Задает в качестве формата W3C Extended.
-t ncsa: Задает временной пояс относительно времени по Гринвичу (например, -0600).
-o Задает папку данных выхода.
-x Задает сохранение не-веб записей в отдельный файл вывода с расширением .dmp.
-d Задает преобразование IP-адресов в DNS-имена.
-l0 Задает дату в формате MM/DD/YY (по умолчанию) – это формат даты США.
-l1 Задает дату в формате YY/MM/DD – это формат даты Японии.
-l2 Задает дату в формате DD.MM.YY – это формат даты Германии.
 

Рассмотрим использование утилиты на примерах. Пусть требуется преобразовать файл журнала в формат Microsoft IIS, настроить его на шестичасовое смещение относительно времени по Гринвича и задать имя файла in021104.log. Команда примет следующий вид:

 
convlog -ii in021104.log -d -t ncsa:-0600
 

Теперь преобразуем файл ex040211.log из расширенного формата W3C в формат NCSA, разместим его в папке logfiles на удаленном сервере server1 и заменим IP-адреса именами DNS:

 
convlog -ie ex040211.log -d -o \\server1\logfiles
 

Присвоение имен файлам в утилите Convlog. Файл, получаемый после преобразования, называется так же, как исходный, а его расширение зависит от опции преобразования DNS. Файлы журналов, сконвертированные без преобразования в DNS-имена, имеют расширение .ncsa. Файлы журналов, сконвертированные с преобразованием в DNS-имена, имеют расширение .ncsa.dns. Исходный файл журнала не удаляется.

 

Журналы ODBC

Журналы ODBC – это более сложный тип журналов, он не имеет всех опций, доступных в журнале W3C. Тем не менее, если вы хотите использовать свои собственные, а не стандартные, оповещения о событиях IIS, вам потребуется журнал ODBC. Преимуществом журналов ODBC является то, что файлы журналов для каждого IIS-сайта сохраняются в одном месте, используется любая база данных, совместимая с ODBC, например, MS Access, SQL Server или Oracle. IIS не содержит готовой базы данных, поэтому ее нужно создать заблаговременно.

 

Примечание. ODBC открывает доступ к базе данных для сохранения информации с помощью стандартного программного интерфейса.

 

Журналы ODBC имеют фиксированные поля данных, поэтому их нельзя изменять. Максимальное количество символов в каждом поле ограничено – 255. Это не вызовет проблем, если записываемые в поля адреса URL не слишком длинные. В журналах ODBC фиксируется местное время.

 

Формат журнала ODBC

Журнал ODBC использует следующие поля.

 
Поле Описание
ClientHost IP-адрес клиента.
username Входное имя пользователя.
LogTime Время внесения записи в журнал.
service Идентификатор IIS службы (например, W3SVC1).
machine Имя компьютера клиента.
serverip IP-адрес, используемый клиентом для доступа к серверу.
processingtime Время, затраченное на обработку запроса (мс).
bytesrecvd Количество байт, отправленных клиентом серверу.
bytessent Количество байт, отправленных сервером клиенту.
servicestatus Записывает сообщение о состоянии протокола (например, "404: HTTP не найден")
win32status Записывает состояние Windows с сервера на клиент.
operation Метод, используемый клиентом для доступа к серверу.
target Основная часть URI, отправленная клиентом серверу, а также путь к документу (все, что указано после имени сервера).
parameters Параметры, переданные сценарию.
 

Создание базы данных для журналов ODBC

Для установки базы данных создайте новую базу данных. В рамках нашего примера используется MS Access.

 
  1. Запустите программу MS Access.
  2. Отобразится диалоговое окно со следующими вариантами: создание пустой базы данных, использование мастера или открытие имеющегося файла. Выберите создание пустой базы данных. Вам будет предложено сохранить базу данных.
  3. Укажите любое имя и место расположения, поскольку IIS будет использовать DSN для подключения к базе данных.
 

Теперь создайте таблицу для хранения информации. Вы можете создать таблицу и все поля вручную с помощью графического пользовательского интерфейса либо воспользоваться SQL. Создадим таблицу с помощью SQL.

 
  1. В главном окне базы данных выберите Insert\Query (Вставка\Запрос), затем – Design View (Дизайн).
  2. После выбора создания нового запроса появится окно Show Table (Показ таблицы).
  3. Нажмите Close (Закрыть), чтобы перейти в окно Select Query (Выбор запроса).
  4. Выберите команду View\SQL View (Просмотр\В виде SQL), чтобы изменить представление.
 

Совет. Если вы проводите тестирование или ведете журналы только для одного веб-сайта, то можно использовать MS Access. Если ведение журналов организуется для более серьезных целей, и журналы нескольких сайтов записываются в одну базу данных, настоятельно рекомендуем работать с более серьезной базой данных. Microsoft свободно распространяет продукт Microsoft Data Environment (MSDE), который позволяет вести журналы для нескольких сайтов. Суммарный размер журналов в базе данных – 2 Гб. Для очень больших журналов используйте Microsoft SQL Server.

 

Для создания таблицы введите SQL-код, например:

 
create table inetlog (
ClientHost varchar(255),
username varchar(255),
LogTime datetime,
service varchar( 255),
machine varchar( 255),
serverip varchar( 50),
processingtime int,
bytesrecvd int,
bytessent int,
servicestatus int,
win32status int,
operation varchar( 255),
target varchar(255),
parameters varchar(255)
 )
 

В результате его выполнения будет создана таблица inetlog, в которой содержатся все столбцы, необходимые для хранения данных сайта IIS. Синтаксис команды имеет следующий вид:

 
[имя_таблицы] [тип данных (максимальный размер)]
 

В нашем примере в таблице отсутствуют поля длиной более 255 символов, причем размер поля задается только для полей типа varchar (текстовых).

 

Если нужно переименовать таблицу (например, все таблицы для сайтов должны находиться в одной базе данных), то задайте другое имя в выражении SQL. Запомните это имя, поскольку оно потребуется при настройке свойств журнала.

 

Примечание. Приведенный здесь код SQL содержится в файле %systemroot%\System32\inetsrv\logtemp.sql и может использоваться для создания таблицы в любой серьезной СУБД (не только в Access).

 

После вставки сохраните SQL-код и закройте окно, затем присвойте запросу имя для дальнейшего использования. Теперь нужно выполнить запрос. В результате будет создана таблица, отображающая стандартное предупреждение. Закройте базу данных, запомните ее название и место расположения – эти данные потребуются в дальнейшей работе.

 

Создание DSN для базы данных

Создадим имя источника данных Data Source Name (DSN) для оповещения системы о месте расположения базы данных, чтобы выполнять обращение к базе по имени, не указывая весь путь целиком. Выполните следующие действия.

 
  1. Выберите команду Start\Administrative Tools\Data Sources (ODBC) (Пуск\Администрирование\Источники данных ODBC).
  2. Откройте вкладку System DSN (Системный DSN).
  3. Нажмите на кнопку Add (Добавить) для добавления нового источника данных.
  4. Появится окно Create New Data Source (Создание нового источника данных). Выберите источник данных, который следует установить. В нашем примере это будет Microsoft Access Driver (*.mdb).
  5. Нажмите на кнопку Finish (Готово).
 

Появится диалоговое окно ODBC Microsoft Access Setup (Установка драйвера ODBC для Microsoft Access) (см. рис. 11.7). В этом окне укажите имя источника данных DSN.

 

 

Окно ODBC Microsoft Access Setup (Установка драйвера ODBC для Microsoft Access)

Рис. 11.7.  Окно ODBC Microsoft Access Setup (Установка драйвера ODBC для Microsoft Access)

 

 

Это имя будет использоваться в окне свойств журнала ODBC для подключения к базе данных, поэтому должно быть легко запоминающимся. В нашем примере задайте имя inetlogdb. Описание укажите по своему усмотрению, введя нужную информацию в соответствующее поле, например, задайте путь: D:\InetDB\LogFile.mdb.

 

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

 

Теперь следует выбрать базу данных.

 
  1. В диалоговом окне ODBC Microsoft Access Setup (Установка драйвера ODBC для Microsoft Access) нажмите на кнопку Select (Выбрать) и перейдите к базе данных Access, созданной ранее (в нашем примере это путь InetDB\LogFile.mdb.
  2. Выберите базу данных Access, после чего нажмите на кнопку OK несколько раз, пока не закроется ODBC Administrator.
 

Теперь все готово для настройки свойств журнала ODBC, и следующий раздел можно пропустить. Если вы работаете не с MS Access, то следующий раздел – для вас.

 

Создание базы данных без MS Access

Базу данных Access можно создать в окне ODBC Microsoft Access Setup (Установка ODBC для Microsoft Access). Здесь также выполняются операции с существующими базами данных.

 

Для открытия окна настройки выполните следующие действия.

 
  1. Выберите команду Start\Control Panel\Administrative Tools\Data Sources (ODBC) (Пуск\Панель управления\Администрирование\Источники данных ODBC.
  2. В окне ODBC Data Source Administrator (Администратор источников данных ODBC) откройте вкладку System DSN (Системный DSN).
  3. Щелкните на созданном вами источнике данных.
  4. Нажмите на кнопку Configure (Настройка).
  5. Нажмите на кнопку Create (Создать).
  6. В диалоговом окне New Database (Создание базы данных) укажите имя и расположение для базы данных.
 

Выберите нужные опции.

 
  • Format (Формат). Номер версии используемой машины базы данных Jet (не версией MS Access). Значением по умолчанию для является версия 4.x. Не рекомендуется изменять это значение, так как версии 3.x и 2.x не поддерживают Unicode.
  • System Database (Системная база данных). При выборе опции база данных создается как системный DSN. Если при создании базы данных вы находились во вкладке System DSN (Системный DSN), имя источника данных будет создано в этой вкладке по умолчанию.
  • Encryption (Шифрование). Позволяет включить шифрование, чтобы информацию в базе данных нельзя было прочесть с помощью текстовых редакторов.
  • Network (Сеть). Позволяет связать устройство с другим компьютером для размещения на нем базы данных.
  • Locale (Национальные настройки). Позволяет выбрать язык базы данных.
 

При создании базы данных описываемым способом по-прежнему требуется таблица, и. возможно, это легче сделать в MS Access. При отсутствии MS Access используйте такой способ создания базы данных, а затем с помощью SQL сформируйте таблицу. MS Query (программа, поставляемая с MS Excel) выполняет запросы базы данных Access. Для получения дополнительной информации обратитесь к документации по MS Query.

 

Настройка сайта на журналы ODBC

Теперь выполним настройку веб-сайта на запись информации в журнал базы данных.

 
  1. Перейдите в окно свойств сайта, для которого настраивается журнал ODBC, и выберите формат активного журнала ODBC Logging (Журнал ODBC).
  2. Нажмите на кнопку Properties (Свойства) для открытия окна свойств журнала ODBC (см. рис. 11.8).
  3. Введите ранее созданный DSN (в нашем примере – inetlogdb).
  4. Введите имя таблицы (в нашем примере – inetlog).
 

 

Окно свойств журнала ODBC

Рис. 11.8.  Окно свойств журнала ODBC

 

 

Ниже приведены параметры окна свойств журнала ODBC.

 
  • ODBC Data Source Name (DSN) (Имя источника данных ODBC [DSN]). Укажите имя DSN, выбранное ранее (в нашем примере – inetlogdb).
  • Table (Таблица). Введите имя таблицы, созданное с помощью выражения SQL (в нашем примере – inetlog).
  • User Name and Password (Имя пользователя и пароль). Если базе данных требуется имя пользователя и пароль для доступа, их следует ввести здесь. В нашем примере оставьте поле пустым.
 

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

 

Работа с пользовательскими модулями журналов

Пользовательские модули журналов позволяют создать свой собственный формат журнала с новыми полями. Для этого создается COM-объект, использующий интерфейс IlogPlugin или IlogPluginEx , а затем IIS с помощью данного объекта вносит записи в журнал. При использовании особых параметров ведения журнала IIS отключает кэш режима ядра, поэтому производительность системы снижается. Для получения подробной информации о создании COM-объекта обратитесь к документации IIS SDK.

 

IIS по умолчанию записывает файлы журнала в папку %systemroot%\System32\LogFiles. HTTP.SYS обычно поддерживает запись информации журнала в эту папку. После определения собственного модуля журнала он использует учетную запись рабочего процесса, в котором выполняется. Рабочие процессы выполняются в учетной записи Network Service (Сетевая служба) по умолчанию, поэтому могут возникнуть проблемы при записи в папку %systemroot%. Лучший способ обойти эту проблему – настроить ваш модуль журнала на запись в другой каталог и предоставить группе IIS_WPG разрешения на запись в этот каталог.

 

Настройка собственного модуля журнала в IIS

При использовании собственного модуля журнала сначала нужно зарегистрировать его в системе. Затем с помощью его глобально уникального идентификатора (GUID) нужно выполнить идентификацию модуля в метабазе. После идентификации модуль можно использовать в IIS, выбирая его в ниспадающем меню Active Log Fornat (Формат активного журнала) в области Enable Logging (Включить ведение журнала) консоли MMC.

 
  1. Откройте файл MetaBase.xml в программе Notepad (Блокнот) (здесь подразумевается, что опция внесения изменений во время работы включена; за более подробной информацией по этой опции обратитесь к лекции 9).
  2. Перейдите в область IISLogModules файла метабазы (см. рис. 11.9).
  3. Вставьте запись IIsLogModule для вашего модуля журнала, указав дружественное, информативное имя. Это имя будет отображаться в ниспадающем меню Active Log Format (Формат активного журнала).
  4. Вставьте LogModuleId с помощью cls_id COM-объекта.
  5. Вставьте LogModuleUild с помощью cls_id UI COM-объекта.
 

Предупреждение. При неправильном изменении или неточности в форматировании метабазы вы можете нарушить работу IIS. Пожалуйста, будьте осторожны!

 

 

Область IISLogModule файла метабазы

Рис. 11.9.  Область IISLogModule файла метабазы

 

 

COM-объектом по умолчанию является {FF160663-DE82-11CF-BC0A-00AA006111E0} –это элемент управления собственным журналом или iislog.dll. После настройки этот элемент добавляется в ниспадающее меню Active Log Format (Формат активного журнала) в IIS MMC. Перечень доступных модулей журналов индивидуален для каждой службы, например, служба WWW может содержать опции, отсутствующие в службе FTP. Если службе нужен журнал, то следует включить ведение этого журнала с помощью редактирования метабазы.

 
  1. Откройте файл MetaBase.xml в программе Notepad (здесь подразумевается, что включена опция внесения изменений во время работы).
  2. Перейдите в область Info. Каждая служба имеет свою собственную секцию: IIsWebInfo, IIsSmtpInfo, IIsNntpInfo и IIsFtpinfo.
  3. Добавьте свой модуль в список ключа LogModuleList метабазы. Остальные записи представлены в формате с разделителями запятыми.
 

Теперь вы можете выбрать пользовательский формат журнала в списке Active Log Format (Формат активного журнала) (см. рис. 11.10).

 

 

Список форматов активного журнала с созданным модулем

Рис. 11.10.  Список форматов активного журнала с созданным модулем

 

 

Централизованное ведение журналов в двоичной форме

Посредством централизованного ведения журналов в двоичной форме все веб-сайты сервера записывают свои журналы в один файл. Если на сервере находится много веб-сайтов, то файлы журналов могут занимать значительную часть ресурсов сервера. Централизованное ведение журналов использует для фиксирования данных в журнале один двоичный файл, что положительно влияет на уровень производительности системы.

 

Централизованное ведение журналов является свойством сервера, поэтому при включении применяется ко всем сайтам сервера. После установки централизованного ведения нельзя выполнить настройку журналов на отдельных серверах.

 

Установка централизованного ведения журналов

Самым простым способом установки централизованного ведения журналов в двоичной форме является использование сценария adsutil.vbs, расположенного в каталоге Inetpub\AdminScripts.

 
  1. Откройте командную строку.
  2. Перейдите в каталог C:\Inetpub\AdminScripts (по умолчанию он расположен на диске C. В вашем случае это может быть другое место.)
  3. Введите cscript.exe adsutil.vbs set w3svc/centralbinarylogingenabled true.
  4. Нажмите на клавишу Enter.
  5. Выполните команду Start\Control Panel\Services (Пуск\Панель управления\Службы).
  6. Остановите и запустите службу WWW в панели управления Services (Службы).
 

После перезапуска службы WWW активизируется ведение журнала в двоичной форме. Файл журнала имеет расширение .ibl, его содержимое записывается в двоичном формате, поэтому просмотреть его в программе Notepad (Блокнот) нельзя. При открытии файла вы увидите беспорядочный набор символов вместо обычного текста. Для извлечения данных используется утилита обработки, включенная в пакет IIS 6 Resource Kit.

 

Анализ данных

Теперь можно начать работу с данными журнала. Они позволят определить следующие факты.

 

Место, откуда посетители подключались к сайту – национальный провайдер, компания, частный ISP, страна и т.д.

 

Способ, посредством которого посетители открыли сайт (указывается адрес расположения, из которого был совершен переход). Это помогает в определении эффективности рекламы и ссылок, генерирующих трафик.

 

Поврежденные ссылки на этом сайте или на других сайтах (ссылающиеся на данный сайт).

 

Данные о неавторизованном или злоумышленном использовании сайта.

 

Наиболее и наименее популярные области сайта.

 

Файлы журнала, создаваемые IIS, имеют обычный текстовый формат, но их анализ сложно выполнить с помощью просмотра файла. Журналы не упорядочивают данные должным образом, особенно если фиксируют информацию нескольких сайтов. Для просмотра журналов требуются специальные программы просмотра. В WS03 таких программ нет, поэтому придется их приобрести дополнительно. На рынке имеется множество программ просмотра; некоторые являются бесплатными, некоторые коммерческими. Ниже приведены примеры таких программ:

 
  • WebTrends;
  • Xcavate;
  • Awstats;
  • утилита MS Log Parser.
 

Если вы хотите серьезно отслеживать данные своего веб-сайта, то имеет смысл приобрести одну из этих программ.

 
источник: http://www.INTUIT.ru 


 

13 центов(0,13$) за клик, выплаты через WebMoney каждый вторник +10% с рефералов

Мы выкупаем 100% трафа! $12 за 1000 хостов (РФ), и до $4 за 1000 хостов (зарубежный траф) + 10% с дохода Ваших рефералов!
 Выплаты через
WebMoney

~80-100$ за1000 хостов 2.5$ за 1 смс.
реф. процент - 10 %Выплаты происходят раз в неделю, в четверг на
WebMoney
 
 

 

____________________________

Посмотреть порно видео в онлайне »

_______________________________

 

   
   
Сайт управляется системой uCoz