[Документация Yandex Cloud](../index.md) > [Yandex Application Load Balancer](index.md) > Логи L7-балансировщика

# Справочник логов Yandex Application Load Balancer

В этом разделе описаны поля логов, поставляемых L7-балансировщиком. 

Логи поставляются в формате JSON. Одна запись в логах соответствует одному запросу клиента к балансировщику. 

Подробнее читайте в разделе [Логирование](concepts/monitoring.md#logging).

Поле | Описание
---- | ----
`type` | Тип запроса. Возможные значения: <ul><li>`http` — HTTP/1.0 или HTTP/1.1 без шифрования.</li><li>`https` — HTTP/1.0 или HTTP/1.1 с TLS-шифрованием (HTTPS, HTTP over TLS).</li><li>`h2` — HTTP/2.</li><li>`h3` — HTTP3.</li><li>`grpc` — gRPC без шифрования.</li><li>`grpcs` — gRPC с TLS-шифрованием.</li></ul>
`time` | Дата и время запроса — получения балансировщиком первого байта от клиента. Записывается согласно [ISO 8601](https://ru.wikipedia.org/wiki/ISO_8601) в формате: `<YYYY>-<MM>-<DD>T<hh>:<mm>:<ss>Z`, где `Z` — время по Гринвичу, UTC.
`http_method` | Метод HTTP-запроса.
`authority` | Для HTTP/1.0 и HTTP/1.1 — значение заголовка `Host`. Для остальных поддерживаемых протоколов — значение псевдозаголовка `:authority`.
`request_uri` | Путь запроса. Например, `/api/v1/foo`.
`http_status` | Код ответа (состояния) HTTP.
`http_version` | Версия протокола HTTP, например `HTTP/2`.
`rewritten_request_uri` | Путь запроса после замены, настроенной в [маршруте](concepts/http-router.md#routes) HTTP-роутера. Например, `/api/backend/v1/foo`
`request_content_type` | Значение HTTP-заголовка `Content-Type` в запросе клиента — тип запрошенного контента.
`request_id` | Значение HTTP-заголовка `X-Request-ID` в запросе клиента.
`user_agent` | Значение HTTP-заголовка `User-Agent` — идентификационная строка клиентского приложения.
`referer` | Значение HTTP-заголовка `Referer` в запросе клиента — URL источника запроса. 
`response_content_type` | Значение HTTP-заголовка `Content-Type` в ответе балансировщика — тип запрошенного контента.
`client_ip` | IP-адрес клиента.
`client_port` | Клиентский порт TCP-соединения между клиентом и балансировщиком.
`backend_ip` | Внутренний IP-адрес эндпоинта [бэкенда](concepts/backend-group.md) — виртуальной машины из [целевой группы](concepts/target-group.md) или [бакета Object Storage](../storage/concepts/bucket.md).
`backend_port` | Порт, по которому балансировщик обращается к бэкенду.
`load_balancer_id` | Идентификатор балансировщика.
`http_router_id` | Идентификатор [HTTP-роутера](concepts/http-router.md).
`virtual_host_name` | Имя [виртуального хоста](concepts/http-router.md#virtual-host).
`route_name` | Имя [маршрута](concepts/http-router.md#routes).
`backend_group_id` | Идентификатор [группы бэкендов](concepts/backend-group.md).
`backend_name` | Имя бэкенда.
`request_headers_bytes` | Размер заголовков запроса в байтах.
`request_body_bytes` | Размер тела запроса в байтах.
`response_headers_bytes` | Размер заголовков ответа в байтах.
`response_body_bytes` | Размер тела ответа в байтах.
`error_details` | Ошибка, возникшая при обработке запроса балансировщиком. Возможные значения: <ul><li>`no_healthy_backend` — нет здоровых бэкендов. Подробнее в разделе [Проверки состояния](concepts/backend-group.md#health-checks).</li><li>`backend_request_timeout` — превышен таймаут запроса к бэкенду, указанный в настройках маршрута.</li><li>`balancer_reset` — соединение между клиентом и балансировщиком было сброшено.</li><li>`backend_connection_closed_before_data_sent_to_client` — соединение между балансировщиком  и бэкендом было сброшено.</li><li>`failed_to_connect_to_backend` — балансировщику не удалось соединиться с бэкендом.</li><li>`backend_connection_terminated` — бэкенд закрыл соединение с балансировщиком.</li><li>`no_route` — запрос клиента не соответствует ни одному из маршрутов, настроенных в HTTP-роутерах балансировщика.</li><li>`client_disconnected` — клиент закрыл соединение с балансировщиком.</li><li>`backend_stream_idle_timeout` — превышен таймаут простоя, указанный в настройках маршрута: соединение между балансировщиком и бэкендом слишком долго простаивало без передачи данных.</li><li>`backend_retry_limit_exceeded` — балансировщик превысил лимит попыток соединения с бэкендом.</li><li>`client_protocol_error` — ошибка протокола клиента.</li></ul>
`tls_version` | Версия протокола TLS, например `TLSv1.3`.
`cipher_suite` | Набор шифров, использованный при TLS-шифровании соединения между клиентом и балансировщиком.
`sni_hostname` | Доменное имя, которое клиент отправил балансировщику с помощью расширения TLS Server Name Indication (SNI).
`server_certificate_subject` | Доменное имя — субъект TLS-сертификата, который балансировщик отправил клиенту.
`grpc` | Информация о gRPC-запросе. Возвращается только для gRPC-запросов (`"type": "grpc"` или `"type": "grpcs"`).
&ensp; `method` | Метод gRPC-запроса.
&ensp; `service` | Имя gRPC-сервиса.
&ensp; `status` | Статус gRPC-запроса.
&emsp;&emsp; `code` | Код ошибки gRPC-запроса. Подробнее о том, какие статусы gRPC соответствуют кодам HTTP, смотрите [google.rpc.Code](https://github.com/googleapis/googleapis/blob/master/google/rpc/code.proto).
&emsp;&emsp; `message` | Описание ошибки gRPC-запроса.
`upstream_transport_failure_reason` | Сообщение об ошибке соединения между балансировщиком и бэкендом на транспортном уровне, например TLS-соединения.
`request_processing_times` | Информация о продолжительности обработки запроса. Для всех полей единица измерения — секунда.
&ensp; `request_time` | Полное время работы с запросом.
&ensp; `response_start_time` | Время до начала ответа: от получения балансировщиком первого байта запроса от клиента до отправки балансировщиком первого байта ответа клиенту.
&ensp; `request_processing_time` | Время обработки запроса балансировщиком: от получения первого байта от клиента до отправки первого байта бэкенду.
&ensp; `backend_processing_time` | Время обработки запроса бэкендом: от отправки балансировщиком первого байта бэкенду до получения балансировщиком первого байта от бэкенда.
&ensp; `response_processing_time` | Время обработки ответа балансировщиком: от получения первого байта от бэкенда до отправки первого байта клиенту.
&ensp; `request_rx_time` | Время получения запроса балансировщиком: между первым и последним байтами, полученными от клиента.
&ensp; `request_tx_time` | Время получения запроса бэкендом: между первым и последним байтами, отправленными балансировщиком.
&ensp; `backend_response_time` | Время ожидания ответа от бэкенда: от отправки балансировщиком последнего байта запроса бэкенду до получения балансировщиком первого байта ответа от бэкенда.
&ensp; `response_rx_time` | Время отправки ответа бэкендом: между первым и последним байтами, полученными балансировщиком.
&ensp; `response_tx_time` | Время отправки ответа балансировщиком: между первым и последним байтами, отправленными балансировщиком.
`x_forwarded_for` | Значение заголовка [X-Forwarded-For](https://en.wikipedia.org/wiki/X-Forwarded-For) (XFF) входящего запроса, содержащее IP-адреса узлов, через которые был перенаправлен запрос. В начале указывается `client_ip`, затем IP-адреса всех промежуточных узлов, если они есть. Например:<ul><li>`x_forwarded_for: 50.0.0.1` — запрос пришел от одного клиента напрямую. Application Load Balancer добавил его `client_ip` в заголовок.</li><li>`x_forwarded_for: 50.0.0.1,40.0.0.1` — запрос прошел через прокси-сервер. Application Load Balancer добавил в заголовок IP-адрес прокси-сервера после `client_ip`.</li></ul>