Расширенное ведение журнала W3C — это тип ведения журнала на стороне сервера, который можно включить в сеансе сервера или группе URL-адресов. Если ведение журнала W3C включено в группе URL-адресов, ведение журнала выполняется только для запросов, которые направляются в группу URL-адресов. Для каждой группы URL-адресов, настроенной для включения ведения журнала W3C, создается отдельный файл журнала.
Если ведение журнала W3C включено в сеансе сервера, оно функционирует как централизованная форма ведения журнала для всех групп URL-адресов в сеансе сервера. Один файл журнала поддерживается для всех групп URL-адресов в сеансе сервера.
В следующей таблице перечислены поля, которые могут быть зарегистрированы API HTTP-сервера. Таблица содержит подмножество констант HTTP_LOG_FIELD . Некоторые из перечисленных ниже полей автоматически создаются API HTTP-сервера и поэтому не содержатся в структуре HTTP_LOG_FIELDS_DATA . Столбец "Отображается как" содержит текст, отображаемый в файле журнала. Данные в таблице указаны в порядке вхождения в запись файла журнала.
Время в формате UTC, в которое произошло действие.
Создан API HTTP-сервера.
HTTP_LOG_FIELD_TIME
Имя службы и номер экземпляра
s-sitename
Имя и номер экземпляра интернет-службы, которые выполнялись на клиенте.
ServiceName
HTTP_LOG_FIELD_SITE_NAME
Server Name (Имя сервера)
s-computername
Имя сервера, на котором была создана запись файла журнала.
ServerName
HTTP_LOG_FIELD_COMPUTER_NAME
IP-адрес сервера
s-ip
IP-адрес сервера, на котором была создана запись файла журнала.
ServerIp
HTTP_LOG_FIELD_SERVER_IP
Метод
cs-method
Запрошенная глагола, например метод GET.
Метод
HTTP_LOG_FIELD_METHOD
Ствол URI
cs-uri-stem
Целевой объект глагола, например, Default.htm.
UriStem
HTTP_LOG_FIELD_URI_STEM
Запрос URI
cs-uri-query
Запрос, если таковой был, который пытался выполнить клиент. Запрос универсального кода ресурса (URI) требуется только для динамических страниц.
UriQuery
HTTP_LOG_FIELD_URI_QUERY
Порт сервера
s-port
Номер порта сервера, настроенный для службы.
ServerPort
HTTP_LOG_FIELD_SERVER_PORT
Имя пользователя
cs-username
Имя прошедшего проверку пользователя, который подключился к серверу. Анонимные пользователи обозначаются дефисом.
UserName
HTTP_LOG_FIELD_USER_NAME
IP-адрес клиента
c-ip
IP-адрес отправившего запрос клиента.
ClientIp
HTTP_LOG_FIELD_CLIENT_IP
Версия протокола
cs-version
Версия протокола HTTP, используемая клиентом.
Создан API HTTP-сервера.
HTTP_LOG_FIELD_VERSION
Агент пользователя
cs(User-Agent)
Тип браузера, используемый клиентом.
UserAgent
HTTP_LOG_FIELD_USER_AGENT
Куки-файл
cs(Cookie)
Содержимое файла cookie, отправленного или полученного, если таковое есть.
Куки-файл
HTTP_LOG_FIELD_COOKIE
Referrer
cs(Referrer)
Сайт, который пользователь в последний раз посещал. Этот сайт предоставил ссылку на текущий сайт.
Referrer
HTTP_LOG_FIELD_REFERRER
Узел
cs-host
Имя заголовка узла, если таковое есть.
Узел
HTTP_LOG_FIELD_HOST
Состояние HTTP
sc-status
Код состояния HTTP.
ProtocolStatus
HTTP_LOG_FIELD_STATUS
Подсостояние протокола
sc-substatus
Код ошибки подсостояние.
SubStatus
HTTP_LOG_FIELD_SUB_STATUS
Состояние Win32
sc-win32-status
Код состояния Windows.
Win32Status
HTTP_LOG_FIELD_WIN32_STATUS
Отправлено байт
sc-байты
Число байт, отправленных сервером.
Создан API HTTP-сервера.
HTTP_LOG_FIELD_BYTES_SENT
Получено байт
cs-байты
Количество байтов, полученных и обработанных сервером.
Создан API HTTP-сервера.
HTTP_LOG_FIELD_BYTES_RECV
Затраченное время
затраченное время
Количество времени, затраченное на выполнение действия (в миллисекундах).
Создан API HTTP-сервера.
HTTP_LOG_FIELD_TIME_TAKEN
Идентификатор потока
streamid
Идентификатор потока.
Создан API HTTP-сервера.
HTTP_LOG_FIELD_STREAM_ID
Файл журнала является настраиваемым текстовым форматом ASCII. Префиксы полей в файле определяются следующим образом:
Prefix
Описание
s
Действия сервера.
с
Действия клиента.
Sc
Действия между сервером и клиентом.
cs
Действия между клиентом и сервером.
Приложение может выбрать одно или несколько полей расширенного файла журнала W3C, однако не все поля будут содержать сведения. Для выбранных полей, для которых нет сведений, в качестве заполнителя отображается дефис (-). Если поле содержит непечатаемый символ, API HTTP-сервера заменяет его знаком "плюс" (+), чтобы сохранить формат файла журнала. Обычно это происходит с вирусными атаками, когда, например, злонамеренный пользователь отправляет возврат каретки и каналы строк, которые, если они не заменены знаком "плюс" (+), нарушают формат файла журнала. Поля разделяются пробелами.
Если поле включено группой URL-адресов или сеансом сервера, но не выбрано для запроса, оно отображается в файле журнала с дефисом (-) в качестве заполнителя.
Файлы журналов создаются при поступлении первого запроса в группу URL-адресов или сеанс сервера. Они не создаются при настройке ведения журнала. В следующем примере показана первая запись файла журнала W3C с включенными полями IP-адрес клиента, имя пользователя, IP-адрес сервера, порт сервера, метод, URI Stem, URI Query, Status и User Agent:
#Software: Microsoft HTTP Server API 2.0
#Version: 1.0 // the log file version as it's described by "https://www.w3.org/TR/WD-logfile".
#Date: 2002-05-02 17:42:15 // when the first log file entry was recorded, which is when the entire log file was created.
#Fields: date time c-ip cs-username s-ip s-port cs-method cs-uri-stem cs-uri-query sc-status cs(User-Agent)
2002-05-02 17:42:15 172.22.255.255 - 172.30.255.255 80 GET /images/picture.jpg - 200 Mozilla/4.0+(compatible;MSIE+5.5;+Windows+2000+Server)
Затраченное время поле инициализируется, когда API HTTP-сервера получает первый байт перед анализом запроса. Затраченная метка времени останавливается при завершении последней отправки. Затраченное время не отражает время в сети. Первый запрос к сайту показывает немного больше времени, чем другие аналогичные запросы, так как API HTTP-сервера открывает файл журнала с первым запросом.
Узнайте, как собрать выходные данные трассировки из веб-приложений Azure. Просмотрите поток журналов в реальном времени и загрузите файлы журналов для анализа в автономном режиме.
Вы можете настроить ведение журнала на веб-сервере или веб-сайте, записывающего сведения о HTTP-запросах и ошибках. Сведения в журнале помогут вам тро...
В этой статье описаны функциональные возможности поля, затраченного на время, в службы IIS (IIS) 6.0 и ведения журнала HTTP IIS 7.0, а также описываются значения, хранящиеся в поле времени.