Skip to content

ОтелПостроительСпана ​

Построитель спана (SpanBuilder).

Описание ​

Создаётся через Трассировщик.ПостроительСпана(ИмяСпана). Позволяет настроить спан до его начала. По умолчанию устанавливает родителем текущий спан контекста.

Аналог Java SDK: SpanBuilder.

Конструктор ​

ПараметрТипПо умолчаниюОписание
ТрассировщикОтелТрассировщик—Трассировщик
ИмяСпанаСтрока—Имя спана

Методы ​

УстановитьРодителя ​

Устанавливает родительский контекст (Context). Принимает только полный контекст, не спан и не контекст спана: спан оборачивается в контекст через ОтелКонтекст.КонтекстСоСпаном().

Родитель определяется по контексту: спан из контекста становится родителем, контекст без спана даёт корневой спан (неявный текущий контекст не используется; без SDK — пустой незаписывающий спан). Заданный контекст передаётся процессорам в ПриНачале.

ПараметрТипПо умолчаниюОписание
ЗначениеСоответствие, ФиксированноеСоответствие—Родительский контекст (Context)

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


БезРодителя ​

Явно указывает, что спан должен быть корневым (без родителя). Отменяет УстановитьРодителя.

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


УстановитьВидСпана ​

Устанавливает вид спана.

ПараметрТипПо умолчаниюОписание
ЗначениеЧисло—Вид из ОтелВидСпана

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


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

Добавляет начальный атрибут. Атрибуты, добавленные до НачатьСпан(), передаются сэмплеру.

ПараметрТипПо умолчаниюОписание
КлючСтрока—Имя атрибута
ЗначениеСтрока, Число, Булево, Массив—Значение атрибута

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


ДобавитьЛинк ​

Добавляет линк к другому спану. Линк к контексту, известному при создании спана, лучше задавать здесь, а не через ОтелСпан.ДобавитьЛинк после создания: решение сэмплера (head sampling) учитывает только данные, известные при создании спана.

ПараметрТипПо умолчаниюОписание
КонтекстСпанаОтелКонтекстСпана—Контекст спана
НовыеАтрибутыСоответствиеНеопределеноАтрибуты линка

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


УстановитьВремяНачала ​

Устанавливает время начала спана. Время передаётся при создании спана: процессоры видят его уже в ПриНачале.

ПараметрТипПо умолчаниюОписание
ЗначениеСтрока—Время начала в наносекундах (Unix epoch)

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


НачатьСпан ​

Создаёт и возвращает настроенный спан. Если семплер решил отбросить спан — возвращает незаписывающий спан (ОтелНезаписывающийСпан — служебный класс, напрямую не создаётся).

Возвращает: ОтелСпан, ОтелНезаписывающийСпан

Пример ​

bsl
Спан = Трассировщик.ПостроительСпана("обработка")
    .УстановитьВидСпана(ОтелВидСпана.Сервер())
    .УстановитьАтрибут("http.method", "POST")
    .УстановитьАтрибут("http.url", АдресЗапроса)
    .НачатьСпан();

См. также ​