Common Log Format (CLF)

Каждая запись при использовании Обычного формата протоколирования (CLF – Common Log Format) состоит из семи полей, представленных в таблице 9.1.

Таблица 9.1. Common Log Format

Поле

Значение

Remote host

Имя Компьютера или IP-адрес запрашивающего клиента

Rcmotc identity

Учетная запись пользователя на клиентской машине

Authenticated uscr

Имя, указанное пользователем при аутентификации

Time

Дата/время запроса

Request

Метод запроса, URI запроса и версия протокола

Response code

Код НТТР-ответа

Content length

Число байтов в ответе

•          Remote host. Данное поле содержит IP-адрес клиента или его доменное имя, например 10.245.131.2 или users.bar.com. Сервер может напрямую определить IP-адрес клиента по сокету, связанному с HTTP-запросом. Для получения же доменного имени клиента требуется произвести запрос к DNS серверу, чтобы преобразовать IP-адрес в доменное имя. Сервер записывает IP-адрес клиента, если запросы к DNS-серверу отключены или запрос был безуспешен. Web- серверы, обслуживающие загруженные сайты, Обычно отключают обратный поиск в DNS, как это было описапо в главе 5 (раздел 5.3.4).

•          Remote identity. Поле определяет пользователя, который открыл ТСР-соеди- пение. ТСР-соединеиие связывает Web-сервер с приложением, запущенным тем или ииым пользователем на клиентском компьютере. Имя, связанное с учетной записью пользователя, Обычно недостунпо на другом копце TCP-co- единеиия. RFC 1413 определяет протокол идентификации [St.93J для получения информации от удаленного Компьютера. Но на практике эти запросы требуют много времени, и многие компьютеры на них не отвечают. Поэтому большинство Web-серверов не делают таких запросов. Вместо имени пользователя в таком случае в журиал сервера пишется "-".

•          Authenticated user. Поле содержит имя пользователя, которое было предоставлено в строке Authorization заголовка HTTP-запроса. Это поле соответствует имени, введенному пользователем при запросе информации, защищенной паролем. В это поле записывается "-", если HTTP-запрос не содержал никакой информации для аутентификации или если сервер не записывает такую информацию.

•          Time. Журнал сервера также содержит время запроса с разрешением до одной секунды. CLF не определяют формат и способ интерпретации этого поля, что приводит к существенным отличиям в журналах различных серверов. Правильная интерпретация этого поля зависит от того, когда сервер вызывает системную функцию (например, gettimeofday()), чтобы определить время [Dav99]. В зависимости от реализации сервера, время может соответствовать началу чтения запроса, пачалу генерации ответа, началу записи ответа в буфер или концу записи ответа в буфер. Эти четыре зиачепия времени могут заметно отличаться, особенно для больших ресурсов или динамически генерируемого содержимого. Сервер не обязательно имеет информацию, когда операционная система передает первый или последний пакеты ответного сообщения.

•          Request. Поле содержит первую строку заголовка HTTP-запроса, которая состоит из метода запроса, запрошенного URI и версии протокола.

•          Response code. Поле содержит трехразрядпый код, содержащийся в заголовке HTTP-ответа, например 200 для ответа 200 ОК.

•          Content length. Это поле содержит число байтов в ответе. В зависимости от реализации сервера это поле может содержать размер тела ответа, размер сообщения-ответа или число байтов, переданных сервером. Если сервер записывает размер тела ответа, то иоле Content length примет зпачепие 0 или "-" для ответов, не включающих тела (например, 304 Not Modified). Размер сообщения-от- вета отличается от числа переданных байтов, если сервер не отправляет все сообщение. Например, при отмепе запроса число переданных байтов может быть меньше размера запрошенного ресурса.

На рис. 9.1 представлены четыре записи журнала в формате CLF. В каждом запросе вторые и третьи поля равиы "—", так как сервер не записывает имя удаленной учетной записи и имя пользователя. Время содержит деиь, месяц, год, после чего идет местное время; "-0400" означает, что местное время отстает от Гринвичского на четыре часа.

10.245.131.2 – – [15/Oct/2000:00:00:25 -0400] "GET /img/logo.gif НТТР/1.0" 304 0

10.245.131.2 – – [15/Oct/2000:00:00:25 -0400] "GET /img/logo.gif НТТР/1.0" 304 0

10.245.131.2 – – [15/0ct/2000:00:00:26 -0400] "GET /img/site.gif НТТР/1.0" 304 0

10.3.2.16 – – С15/0ct/2000:00:00:38 -0400] "GET /est/bubhi.html НТТР/1.0" 304 0

10.16.202.34 – – [15/0ct/2000:00:00:45 -0400] "GET /img/tday.gif НТТР/1.0" 200 3699

Рис. 9.1. Фрагмент журнала в формате CLF с вымышленными IP-адресамн клиентов

Источник: Web-протоколы. Теория и практика. — M.: ЗАО «Издательство БИНОМ», 2002 г. – 592 c.: ил.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100