Настроить запись логов L7-балансировщика
Логи L7-балансировщика можно отправлять в сервис Yandex Cloud Logging.
Включить запись логов
- В консоли управления
выберите каталог, в котором находится балансировщик. - Выберите сервис Application Load Balancer.
- В списке выберите нужный балансировщик, нажмите
и выберите Редактировать. - В блоке Настройки логов:
-
Включите опцию Запись логов.
-
Выберите лог-группу Cloud Logging, в которую будут записываться логи балансировщика.
-
Нажмите кнопку Добавить правило отбрасывания логов и настройте его параметры:
- HTTP-коды — добавьте HTTP-коды.
- Классы HTTP-кодов — добавьте классы HTTP-кодов.
- gRPC-коды — добавьте gRPC-коды.
- Доля отбрасываемых логов — добавьте процент отбрасываемых логов.
Вы можете задать больше одного правила.
-
- Нажмите Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для управления логированием в балансировщике:
yc alb load-balancer logging --help
-
Включите логирование и установите параметры записи логов в Cloud Logging:
yc alb load-balancer logging <имя_балансировщика> \ --enable \ --log-group-id <идентификатор_лог-группы> \ --discard codes=[<HTTP-код>,<класс_HTTP-кода>,<gRPC-код>],percent=<доля_отбрасываемых_логов>
Где:
-
--enable
— параметр для включения логирования. -
--log-group-id
— идентификатор лог-группы, в которую будут записываться логи балансировщика. -
--discard
— правило отбрасывания логов. Параметры правила:codes
— HTTP-коды, классы HTTP-кодов или gRPC-коды.percent
— доля отбрасываемых логов в процентах.
Вы можете задать больше одного правила.
Результат:
done (42s) id: ds76g8b2op3f********* name: test-load-balancer ... log_options: log_group_id: e23p9bfj2kyr******** discard_rules: - http_codes: - "200" http_code_intervals: - HTTP_2XX grpc_codes: - OK discard_percent: "70"
-
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
Добавьте к описанию балансировщика в конфигурационном файле блок
log_options
:log_options { log_group_id = "<идентификатор_лог-группы>" discard_rule { http_codes = ["200"] http_code_intervals = ["HTTP_2XX"] grpc_codes = ["GRPC_OK"] discard_percent = 75 } }
Где
log_options
— параметры записи логов в Cloud Logging:-
log_group_id
— идентификатор лог-группы, в которую будут записываться логи балансировщика. -
discard_rule
— правило отбрасывания логов:http_codes
— HTTP-коды.http_code_intervals
— классы HTTP-кодов.grpc_codes
— gRPC-коды.discard_percent
— доля отбрасываемых логов в процентах.
Вы можете задать больше одного правила.
-
-
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
-
После этого в указанном балансировщике будет включено логирование. Проверить статус логирования и другие настройки балансировщика можно в консоли управления
yc alb load-balancer get <имя_балансировщика>
Чтобы включить запись логов, воспользуйтесь методом REST API update для ресурса LoadBalancer или вызовом gRPC API LoadBalancerService/Update.
Изменить параметры записи логов
- В консоли управления
выберите каталог, в котором находится балансировщик. - Выберите сервис Application Load Balancer.
- В списке выберите нужный балансировщик, нажмите
и выберите Редактировать. - В блоке Настройки логов:
-
Измените лог-группу Cloud Logging, в которую будут записываться логи балансировщика.
-
Измените правила отбрасывания логов:
- HTTP-коды — измените HTTP-коды.
- Классы HTTP-кодов — измените классы HTTP-кодов.
- gRPC-коды — измените gRPC-коды.
- Доля отбрасываемых логов — измените процент отбрасываемых логов.
Чтобы добавить еще одно правило, нажмите кнопку Добавить правило отбрасывания логов.
-
- Нажмите Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для управления логированием в балансировщике:
yc alb load-balancer logging --help
-
Измените параметры записи логов в Cloud Logging:
yc alb load-balancer logging <имя_балансировщика> \ --log-group-id <идентификатор_лог-группы> \ --discard codes=[<HTTP-код>,<класс_HTTP-кода>,<gRPC-код>],percent=<доля_отбрасываемых_логов>
Где:
-
--log-group-id
— идентификатор лог-группы, в которую будут записываться логи балансировщика. -
--discard
— правило отбрасывания логов. Параметры правила:codes
— HTTP-коды, классы HTTP-кодов или gRPC-коды.percent
— доля отбрасываемых логов в процентах.
Вы можете задать больше одного правила.
Результат:
done (42s) id: ds76g8b2op3f******** name: test-load-balancer ... log_options: log_group_id: e23p9bfj2kyr******** discard_rules: - http_codes: - "200" http_code_intervals: - HTTP_2XX grpc_codes: - OK discard_percent: "70"
-
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
В конфигурационном файле с описанием балансировщика измените блок
log_options
с новыми настройками логирования:log_options { log_group_id = "<идентификатор_лог-группы>" discard_rule { http_codes = ["200"] http_code_intervals = ["HTTP_2XX"] grpc_codes = ["GRPC_OK"] discard_percent = 75 } }
Где
log_options
— параметры записи логов в Cloud Logging:-
log_group_id
— идентификатор лог-группы, в которую будут записываться логи балансировщика. -
discard_rule
— правило отбрасывания логов:http_codes
— HTTP-коды.http_code_intervals
— классы HTTP-кодов.grpc_codes
— gRPC-коды.discard_percent
— доля отбрасываемых логов в процентах.
Вы можете задать больше одного правила.
-
-
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
-
После этого в указанном балансировщике будут изменены параметры логирования. Проверить настройки балансировщика можно в консоли управления
yc alb load-balancer get <имя_балансировщика>
Чтобы изменить параметры записи логов, воспользуйтесь методом REST API update для ресурса LoadBalancer или вызовом gRPC API LoadBalancerService/Update.
Выключить запись логов
- В консоли управления
выберите каталог, в котором находится балансировщик. - Выберите сервис Application Load Balancer.
- В списке выберите нужный балансировщик, нажмите
и выберите Редактировать. - В блоке Настройки логов выключите опцию Запись логов.
- Нажмите Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для управления логированием в балансировщике:
yc alb load-balancer logging --help
-
Выключите логирование:
yc alb load-balancer logging <имя_балансировщика> --disable
Где
--disable
— параметр для выключения логирования.Результат:
done (42s) id: ds76g8b2op3f******** name: test-load-balancer ... log_options: disable: true
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
-
В конфигурационном файле с описанием балансировщика удалите блок
log_options
:log_options { ... }
-
Примените изменения:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
После этого в указанном балансировщике будет выключено логирование. Проверить статус логирования и другие настройки балансировщика можно в консоли управления
или с помощью команды CLI:yc alb load-balancer get <имя_балансировщика>
-
Чтобы выключить запись логов, воспользуйтесь методом REST API update для ресурса LoadBalancer или вызовом gRPC API LoadBalancerService/Update.