Skip to content

ОтелПостроительТрассировщика ​

Построитель трассировщика (TracerBuilder): задаёт параметры области инструментирования и получает трассировщик.

Описание ​

Создаётся через ПостроительТрассировщика(ИмяБиблиотеки) провайдера трассировки или ОтелSdk (SDK передаёт вызов своему провайдеру трассировки). Имя инструментирующей библиотеки задаётся при создании построителя, версия, адрес схемы и атрибуты области — методами построителя. Аналог Java SDK: TracerProvider.tracerBuilder("name").

Построить() получает трассировщик так же, как ПолучитьТрассировщик(ИмяБиблиотеки, ВерсияБиблиотеки, АтрибутыОбласти, АдресСхемы) провайдера: трассировщик с той же областью — именем, версией, адресом схемы и атрибутами — возвращается из кэша провайдера. Пустое имя библиотеки (или Неопределено) допускается: провайдер пишет предупреждение в лог и использует пустое имя.

Незаданные параметры берутся по умолчанию: версия и адрес схемы — пустая строка, атрибутов области нет.

Методы ​

УстановитьВерсию ​

Задаёт версию инструментирующей библиотеки.

ПараметрТипПо умолчаниюОписание
ЗначениеСтрока—Версия библиотеки

Возвращает: ОтелПостроительТрассировщика — ЭтотОбъект для fluent API


УстановитьАдресСхемы ​

Задаёт адрес схемы телеметрии (schema URL) области.

ПараметрТипПо умолчаниюОписание
ЗначениеСтрока—Адрес схемы, например "https://opentelemetry.io/schemas/1.29.0"

Возвращает: ОтелПостроительТрассировщика — ЭтотОбъект для fluent API


УстановитьАтрибутыОбласти ​

Задаёт атрибуты области инструментирования (InstrumentationScope). Атрибуты входят в идентичность области: трассировщики одной библиотеки с разными атрибутами — разные трассировщики.

ПараметрТипПо умолчаниюОписание
ЗначениеОтелАтрибуты—Атрибуты области

Возвращает: ОтелПостроительТрассировщика — ЭтотОбъект для fluent API


Построить ​

Возвращает трассировщик с заданными параметрами: из кэша провайдера, если трассировщик с такой областью уже создан, иначе новый. Область хранит копию атрибутов: изменение объекта атрибутов после Построить() трассировщик не меняет.

После закрытия провайдера возвращает отключённый трассировщик: его Включен() возвращает Ложь, а спаны он создаёт незаписывающие.

Возвращает: ОтелТрассировщик

Пример ​

bsl
АтрибутыОбласти = Новый ОтелАтрибуты();
АтрибутыОбласти.Установить("component", "http-client");

Трассировщик = Провайдер.ПостроительТрассировщика("my-library")
    .УстановитьВерсию("1.2.0")
    .УстановитьАдресСхемы("https://opentelemetry.io/schemas/1.29.0")
    .УстановитьАтрибутыОбласти(АтрибутыОбласти)
    .Построить();

Спан = Трассировщик.НачатьСпан("запрос");
Спан.Завершить();

См. также ​