diff --git a/docs/ru/docs/advanced/opentelemetry.md b/docs/ru/docs/advanced/opentelemetry.md index 1a3d591acf..e9b8c7d181 100644 --- a/docs/ru/docs/advanced/opentelemetry.md +++ b/docs/ru/docs/advanced/opentelemetry.md @@ -5,7 +5,7 @@ **Телеметрия** — это данные о поведении вашего приложения, которые помогают ответить на эти вопросы. Распространённые типы включают: - **Метрики**: измерения, которые можно агрегировать за период времени, например время ответа и количество обрабатываемых HTTP-запросов. -- **Трейсы**: записи отдельных HTTP-запросов и операций, выполненных для их обработки. Каждая операция с измеренным временем называется **спан**. +- **Трейсы**: записи отдельных HTTP-запросов и операций, выполненных для их обработки. Каждая операция с измеренным временем называется **спаном**. - **Логи**: записи событий с временными метками, например запуск приложения или сбой операции. [**OpenTelemetry**](https://opentelemetry.io/) — это набор стандартов и инструментов для сбора телеметрии и отправки её в сервис мониторинга, где её можно просматривать на дашбордах. @@ -31,7 +31,7 @@ $ uv add "fastapi[standard]" {* ../../docs_src/opentelemetry/tutorial001_py310.py *} -Обратите внимание, что всё это работает по умолчанию, вам не нужно писать какой-либо пользовательский код, чтобы телеметрия работала. +Вам не нужно писать какой-либо пользовательский код для сбора телеметрии. ## FastAPI Cloud { #fastapi-cloud } @@ -48,11 +48,12 @@ $ uv add "fastapi[standard]" Задайте эти переменные окружения, заменив пример URL на ваш эндпоинт: ```bash +export FASTAPI_OTEL_AUTO_CONFIGURE=true export OTEL_SERVICE_NAME=my-api export OTEL_EXPORTER_OTLP_ENDPOINT=https://collector.example.com ``` -`OTEL_SERVICE_NAME` идентифицирует ваше приложение в сервисе мониторинга. Эндпоинт — это базовый URL для получения данных. Трейсы отправляются в `/v1/traces`, метрики — в `/v1/metrics`, а логи — в `/v1/logs` по этому URL. +`FASTAPI_OTEL_AUTO_CONFIGURE=true` включает автоматическую настройку экспортеров FastAPI. `OTEL_SERVICE_NAME` идентифицирует ваше приложение в сервисе мониторинга. Эндпоинт — это базовый URL для получения данных. Трейсы отправляются в `/v1/traces`, метрики — в `/v1/metrics`, а логи — в `/v1/logs` по этому URL. Если ваш сервис требует аутентификации, задайте `OTEL_EXPORTER_OTLP_HEADERS` со значением HTTP-заголовков, которые он указывает, например `api-key=YOUR_API_KEY`. @@ -85,13 +86,9 @@ $ curl http://127.0.0.1:8000/items/1 Библиотеки телеметрии могут настраивать глобальные провайдеры OpenTelemetry. Настройте библиотеку до запуска приложения, и FastAPI будет использовать эти провайдеры автоматически. -Когда OTLP-эндпоинт задан в окружении, FastAPI добавляет экспортер для этого получателя к каждому включённому провайдеру. Существующие экспортеры продолжают отправлять данные своим получателям. +По умолчанию FastAPI использует настроенные провайдеры, не добавляя экспортеры. Когда автоматическая настройка включена и OTLP-эндпоинт задан в окружении, FastAPI добавляет экспортер для этого получателя к каждому включённому провайдеру. Существующие экспортеры продолжают отправлять данные своим получателям. -Настраивайте каждого получателя один раз. Если другая библиотека уже отправляет данные получателю, заданному в окружении, отключите у неё экспорт по настройкам из окружения или выключите автоматическую настройку FastAPI: - -```python -app = FastAPI(telemetry={"auto_configure": False}) -``` +Если другая библиотека уже настраивает экспорт тому же получателю, не задавайте `FASTAPI_OTEL_AUTO_CONFIGURE` или установите её в `false`, чтобы избежать дублирования телеметрии. Вы также можете передать провайдер напрямую в словаре `telemetry`. Например, этот провайдер использует консольный экспортер OpenTelemetry, чтобы печатать спаны HTTP-запросов в вашем терминале: @@ -143,7 +140,7 @@ FastAPI также записывает ошибки валидации HTTP-з | `logs` | Записывать ошибки валидации и необработанные исключения | `True` | | `operation_spans` | Добавлять спаны для операций HTTP-запроса | `True` | | `exclude` | Пропускать HTTP-запросы, когда функция, получающая ASGI scope, возвращает `True` | `None` | -| `auto_configure` | Добавлять экспортеры для эндпоинтов, заданных в переменных окружения | `True` | +| `auto_configure` | Добавлять экспортеры для эндпоинтов, заданных в переменных окружения | `True`, если `FASTAPI_OTEL_AUTO_CONFIGURE=true`, иначе `False` | Например, чтобы собирать метрики, исключая проверки работоспособности: @@ -158,4 +155,4 @@ app = FastAPI( ) ``` -Установите `auto_configure` в `False`, когда ваше приложение самостоятельно выполняет настройку провайдера, например внутри своей lifespan-функции. +Явно заданное значение `auto_configure` в словаре `telemetry` переопределяет `FASTAPI_OTEL_AUTO_CONFIGURE`. Используйте `telemetry={"auto_configure": True}`, чтобы включить автоматическую настройку в коде, или `telemetry={"auto_configure": False}`, чтобы отключить её для приложения, даже если переменная окружения её включает. diff --git a/docs/ru/docs/deployment/cloud.md b/docs/ru/docs/deployment/cloud.md index eb1b49aa56..936a1f8979 100644 --- a/docs/ru/docs/deployment/cloud.md +++ b/docs/ru/docs/deployment/cloud.md @@ -12,7 +12,7 @@ Он переносит тот же **опыт разработчика** создания приложений с FastAPI на их **развертывание** в облаке. 🎉 -FastAPI Cloud — основной спонсор и источник финансирования для open source проектов *FastAPI and friends*. ✨ +FastAPI Cloud — основной спонсор и источник финансирования для проектов с открытым исходным кодом *FastAPI and friends*. ✨ ## Облачные провайдеры — спонсоры { #cloud-providers-sponsors } @@ -20,5 +20,4 @@ FastAPI Cloud — основной спонсор и источник финан Возможно, вы захотите попробовать их сервисы и воспользоваться их руководствами: -* [Render](https://docs.render.com/deploy-fastapi?utm_source=deploydoc&utm_medium=referral&utm_campaign=fastapi) * [Railway](https://docs.railway.com/guides/fastapi?utm_medium=integration&utm_source=docs&utm_campaign=fastapi)