Перейти к основному содержимому

Сбор и сохранение диагностических данных сервиса бизнес-логики

Для сбора и сохранения диагностических данных, таких как журналы событий и трассировок, а также метрики, сервисы бизнес-логики Платформы используют OpenTelemetry.

Класс PlatformService подключает и настраивает компоненты OpenTelemetry. OpenTelemetryCollector в составе Платформы по умолчанию собирает диагностические данные в сервисах Платформы. Для удобства локальной отладки журналы событий и трассировок также направляются в консоль сервиса.

Следующий блок кода демонстрирует настройку параметров OpenTelemetryCollector через конфигурацию сервиса:

{
OTEL_EXPORTER_OTLP_LOGS_ENDPOINT: "http://url:port",
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: "http://url:port",
OTEL_SERVICE_NAME: "mysuperservice",
}

Для ведения журнала трассировок подключаются библиотеки автоматического инструментирования входящих и исходящих HTTP-запросов.

Уровень ведения журнала событий можно настраивать через параметры конфигурации сервиса:

{
"LogLevel": "Information",
}

Кроме того, уровнем ведения журнала событий в библиотеках .NET Core, используемых в составе разрабатываемого сервиса, можно управлять через параметры, которые демонстрирует следующий блок кода. Более подробная информация о параметрах содержится в документации библиотек .NET Core.

{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
...
}
}
}