ОтелПостроительЛоггера
Построитель логгера (LoggerBuilder) — получение логгера с версией, адресом схемы и атрибутами области.
Описание
Задаёт, кроме имени инструментирующей библиотеки, её версию, адрес схемы телеметрии (schema URL) и атрибуты области инструментирования (InstrumentationScope) цепочкой вызовов. Аналог Java SDK: LoggerProvider.loggerBuilder("name").
Построитель возвращает метод ПостроительЛоггера(ИмяБиблиотеки) провайдера логирования (ОтелПровайдерЛогирования) или SDK (ОтелSdk — построитель его провайдера логирования). Имя библиотеки задаётся при создании построителя, остальные параметры необязательны: по умолчанию версия и адрес схемы — пустые строки, атрибутов области нет.
Построить получает логгер у провайдера (ПолучитьЛоггер) с заданными параметрами, поэтому действует кэш провайдера: для той же области инструментирования — имени, версии, адреса схемы и атрибутов — возвращается тот же логгер. После закрытия провайдера Построить возвращает логгер, который отбрасывает записи.
Методы
УстановитьВерсию
Устанавливает версию инструментирующей библиотеки.
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
Значение | Строка | — | Версия библиотеки, например "1.0.0" |
Возвращает: ОтелПостроительЛоггера — ЭтотОбъект для цепочки вызовов
УстановитьАдресСхемы
Устанавливает адрес схемы телеметрии (schema URL) области инструментирования.
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
Значение | Строка | — | URL схемы |
Возвращает: ОтелПостроительЛоггера — ЭтотОбъект для цепочки вызовов
УстановитьАтрибутыОбласти
Устанавливает атрибуты области инструментирования. Атрибуты входят в идентичность области: логгеры одной библиотеки с разными атрибутами — разные логгеры. Область копирует атрибуты при создании логгера, поэтому изменение объекта атрибутов после Построить логгер не меняет.
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
Значение | ОтелАтрибуты | — | Атрибуты области инструментирования |
Возвращает: ОтелПостроительЛоггера — ЭтотОбъект для цепочки вызовов
Построить
Создаёт логгер с заданными параметрами или возвращает уже созданный логгер той же области инструментирования. Пустое имя библиотеки или Неопределено допускается: провайдер пишет предупреждение в лог и создаёт логгер с этим именем.
Возвращает: ОтелЛоггер
Пример
// Провайдер - ОтелПровайдерЛогирования
АтрибутыОбласти = Новый ОтелАтрибуты();
АтрибутыОбласти.Установить("module", "orders");
Логгер = Провайдер.ПостроительЛоггера("my-library")
.УстановитьВерсию("1.0.0")
.УстановитьАдресСхемы("https://opentelemetry.io/schemas/1.26.0")
.УстановитьАтрибутыОбласти(АтрибутыОбласти)
.Построить();
// Тот же логгер: область инструментирования совпадает
ТотЖеЛоггер = Провайдер.ПостроительЛоггера("my-library")
.УстановитьВерсию("1.0.0")
.УстановитьАдресСхемы("https://opentelemetry.io/schemas/1.26.0")
.УстановитьАтрибутыОбласти(АтрибутыОбласти)
.Построить();
// Через SDK (Сдк - ОтелSdk)
Логгер = Сдк.ПостроительЛоггера("my-library")
.УстановитьВерсию("1.0.0")
.Построить();