Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Трассировка HTTP-запросов — это функция IIS, которая позволяет определить, что именно происходит с запросом. К ним относится любая форма проверки подлинности, которая использовалась обработчиком и продолжительность каждого шага в конвейере. Включение трассировки запросов — это удобный способ диагностики неожиданного или нежелательного поведения.
Параметры компонента (/api/webserver/http-request-tracing)
Функция трассировки HTTP-запросов создает файлы трассировки на основе настроенного набора правил. Сведения в файлах трассировки определяются тем, какие поставщики доступны для этого правила. Параметры функции для трассировки запросов с созданием файлов трассировки.
GET/api/webserver/http-request-tracing/{request-tracing-id}
{
"id": "{request-tracing-id}",
"scope": "",
"metadata": {
"is_local": "true",
"is_locked": "false",
"override_mode": "inherit",
"override_mode_effective": "allow"
},
"enabled": "true",
"directory": "%SystemDrive%\\inetpub\\logs\\FailedReqLogFiles",
"maximum_number_trace_files": "50",
"website": null,
"_links": {
"providers": {
"href": "/api/webserver/http-request-tracing/providers?http_request_tracing.id={request-tracing-id}"
},
"rules": {
"href": "/api/webserver/http-request-tracing/rules?http_request_tracing.id={request-tracing-id}"
}
}
}
Поставщики трассировки (/api/webserver/http-request-trace/providers)
Поставщики трассировки HTTP-запросов определяют, какие сведения будут предоставляться при активации правила трассировки. IIS поставляется с набором поставщиков по умолчанию, которые предоставляют большую часть информации, которую требует потребитель.
GET/api/webserver/http-request-tracing/providers/{provider-id}
{
"name": "ASPNET",
"id": "{provider-id}",
"guid": "{aff081fe-0247-4275-9c4e-021f3dc1da35}",
"areas": [
"Infrastructure",
"Module",
"Page",
"AppServices"
],
"request_tracing": {
"id": "{request-tracing-id}",
"scope": "",
"_links": {
"self": {
"href": "/api/webserver/http-request-tracing/{request-tracing-id}"
}
}
}
}
Правила трассировки (/api/webserver/http-request-trace/rules)
Правила трассировки создают журналы трассировки запросов всякий раз, когда выполняется запрос, соответствующий условиям, указанным в правиле трассировки. Правила трассировки могут активироваться на основе кода состояния, времени выполнения и пути.
GET/api/webserver/http-request-tracing/rules/{rule-id}
{
"path": "*",
"id": "{rule-id}",
"status_codes": [
"101-999"
],
"min_request_execution_time": "2147483647",
"event_severity": "ignore",
"custom_action": {
"executable": "",
"params": "",
"trigger_limit": "1"
},
"traces": [
{
"allowed_areas": {
"Authentication": "true",
"Security": "true",
"Filter": "true",
"StaticFile": "true",
"CGI": "true",
"Compression": "true",
"Cache": "true",
"RequestNotifications": "true",
"Module": "true",
"FastCGI": "true",
"WebSocket": "true"
},
"provider": {
"name": "WWW Server",
"id": "{provider-id}",
"_links": {
"self": {
"href": "/api/webserver/http-request-tracing/providers/{provider-id}"
}
}
},
"verbosity": "warning"
}
],
"request_tracing": {
"id": "{request-tracing-id}",
"scope": "",
"_links": {
"self": {
"href": "/api/webserver/http-request-tracing/{request-tracing-id}"
}
}
}
}
Создание правила трассировки запросов
Правило трассировки запросов должно указывать, какой раздел трассировки запроса принадлежит при создании, а также указать всех поставщиков, которые должны регистрировать сведения для созданного файла журнала. В этом примере создается правило, которое создает только журналы трассировки для запросов к index.html. Журналы будут содержать сведения из поставщика трассировки WWW Server
POST/api/webserver/http-request-tracing/rules
{
"path": "index.html",
"status_codes": [
"100-999"
],
"traces": [
{
"allowed_areas": {
"Authentication": "true",
"Security": "true",
"Filter": "true",
"StaticFile": "true",
"CGI": "true",
"Compression": "true",
"Cache": "true",
"RequestNotifications": "true",
"Module": "true",
"FastCGI": "true",
"WebSocket": "true"
},
"provider": {
"id": "{www-server-provider-id}"
},
"verbosity": "warning"
}
],
"request_tracing": {
"id": "{request-tracing-id}"
}
}
Журналы трассировки (/api/webserver/http-request-trace/traces)
API администрирования СЛУЖБ IIS предоставляет конечную точку для просмотра данных для созданных журналов трассировки. Эта информация помогает быстро определить, какой файл трассировки интересен, а не открывать каждый файл по отдельности.
GET/api/webserver/http-request-trace/traces/{trace-id}
{
"id": "{trace-id}",
"url": "http://localhost:80/favicon.ico",
"method": "GET",
"status_code": "404",
"date": "2017-03-02T15:34:17.0627155-08:00",
"time_taken": "0",
"process_id": "8172",
"activity_id": "{8000009D-0001-F700-B63F-84710C7967BB}",
"file_info": {
"name": "fr000001.xml",
"id": "{file-id}",
"type": "file",
"physical_path": "c:\\inetpub\\logs\\FailedReqLogFiles\\W3SVC1\\fr000001.xml",
"_links": {
"self": {
"href": "/api/files/{file-id}"
}
}
},
"request_tracing": {
"id": "{request-tracing-id}",
"scope": "Default Web Site/",
"_links": {
"self": {
"href": "/api/webserver/http-request-tracing/{request-tracing-id}"
}
}
}
}