НапильникОтелХранилищеСущностей
Напильник слоя хранилищ сущностей: находит в контейнере хранилища и отдает их инструментированию из opentelemetry-instrumentation-entity, которое замеряет вызовы методов гистограммой.
Описание
Применяется к желудям с прозвищем ХранилищеСущностей. Такое прозвище получают и хранилища, которые autumn-data регистрирует для каждой сущности, и пользовательские хранилища с аннотацией &ХранилищеСущностей.
Обертку строит ОтелИнструментированиеХранилищаСущностей — там же описано, какие методы оборачиваются и какие сигналы пишутся. Если оборачивать нечего, желудь остается нетронутым.
Спанов напильник не создает: вызов метода хранилища виден в метрике, а трейс строят операции entity и запросы к СУБД, которые метод выполнил. Спан на самом методе хранилища вешается аннотацией &Наблюдаемый — на конструкторе желудя или на отдельном методе.
Порядок: &Порядок(503) - после напильников аннотаций.
Конструктор
&Напильник
&Порядок(503)
Процедура ПриСозданииОбъекта(&Табакерка &Пластилин("ОтелМетр") ОтелМетр,
&Деталька(Значение = "otel.enabled", ЗначениеПоУмолчанию = Ложь) ОтелВключен,
&Деталька(Значение = "otel.entity.repository.enabled", ЗначениеПоУмолчанию = "") СлойВключен)Напильник включен, когда включен otel.enabled и не выключен otel.entity.repository.enabled. Метр достается из табакерки при первом обернутом желуде, поэтому SDK не поднимается, если хранилищ в приложении нет.
Конфигурация
Подробнее - в разделе Инструментирование entity.
