Skip to content

ОтелПростойПроцессорЛогов ​

Простой процессор записей логов (SimpleLogRecordProcessor) по спецификации OpenTelemetry.

Описание ​

Синхронно передаёт каждую запись лога экспортеру в момент вызова ПриПоявлении(). Аналог ОтелПростойПроцессорСпанов для подсистемы логирования. Потокобезопасен — доступ к экспортеру защищён блокировкой.

Реализует ИнтерфейсПроцессорЛогов.

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

ПараметрТипПо умолчаниюОписание
ЭкспортерОтелЭкспортерЛогов—Экспортер записей логов

Методы ​

ПриПоявлении ​

Обрабатывает запись лога — синхронно передаёт экспортеру. После Закрыть() записи игнорируются. Ошибки экспортера логируются и не пробрасываются наверх.

ПараметрТипПо умолчаниюОписание
ЗаписьЛогаОтелЗаписьЛога—Запись лога
КонтекстСоответствие, НеопределеноНеопределеноРазрешённый контекст

Включен ​

Проверяет, будет ли процессор обрабатывать запись. Реализация не мутирует переданные объекты. Всегда возвращает Истина (процессор без фильтрации).

ПараметрТипПо умолчаниюОписание
КонтекстСоответствие, НеопределеноНеопределеноЯвный контекст
ОбластьИнструментированияОтелОбластьИнструментированияНеопределеноScope логгера
СтепеньСерьезностиЧисло0Номер серьезности
ИмяСобытияСтрока""Имя события

Возвращает: Булево


СброситьБуфер ​

Принудительно отправляет накопленные данные. Своего буфера у простого процессора нет: в пределах таймаута он дожидается экспорта, начатого в другом потоке, затем сбрасывает буфер экспортера.

ПараметрТипПо умолчаниюОписание
ТаймаутМсЧисло0Таймаут в миллисекундах (0 — без ограничения)

Возвращает: ОтелРезультатЭкспорта — результат сброса буфера экспортера; таймаут, если экспорт в другом потоке не завершился за срок


Закрыть ​

Завершает работу процессора: дожидается текущего экспорта, сбрасывает буфер экспортера (СброситьБуфер) и закрывает экспортер — в пределах общего срока. Экспортер закрывается и после сбоя сброса буфера. После вызова ПриПоявлении игнорирует новые записи. Идемпотентен: повторный вызов возвращает успех.

ПараметрТипПо умолчаниюОписание
ТаймаутМсЧисло30000Таймаут в миллисекундах (0 — без ограничения)

Возвращает: ОтелРезультатЗакрытия — ошибка сброса буфера или закрытия экспортера; иначе таймаут, если истёк срок; иначе успех


ПринудительноВыгрузитьСРезультатом ​

Принудительно выгружает накопленные данные и возвращает результат.

ПараметрТипПо умолчаниюОписание
ТаймаутМсЧисло30000Таймаут в миллисекундах

Возвращает: ОтелРезультатЗакрытия

Пример ​

bsl
Процессор = Новый ОтелПростойПроцессорЛогов(МойОтлпЭкспортер);

Провайдер = Новый ОтелПостроительПровайдераЛогирования()
    .УстановитьРесурс(Ресурс)
    .ДобавитьПроцессор(Процессор)
    .Построить();