Подсчитываемый
Аннотация для автоматического подсчёта вызовов методов (аналог @Counted из Spring Boot).
Синтаксис
bsl
&Подсчитываемый[(Значение)]
Функция ИмяМетода(...) Экспорт
...
КонецФункцииПараметры
Значение
Тип: Строка (опционально)
Имя метрики. Должно соответствовать формату OTel (ASCII, точки как разделители). Если не указано, используется "ИмяБина.ИмяМетода.counted" с автоматической транслитерацией кириллицы.
Описание
Аннотация &Подсчитываемый оборачивает метод в декоратор, который:
- Инкрементирует счётчик OTel при каждом вызове метода
- Устанавливает атрибут
result = "success"при успешном выполнении - При исключении устанавливает
result = "failure"и записываетexception
Атрибуты счётчика: code.function.name, code.namespace, result, exception (при ошибке).
При размещении на конструкторе (вместе с &Желудь) инструментируются все экспортные методы класса.
Примеры
Инструментация одного метода
bsl
&Подсчитываемый("api.requests")
Функция ОбработатьЗапрос(Запрос) Экспорт
Возврат СформироватьОтвет(Запрос);
КонецФункцииИнструментация всех методов класса
bsl
&Желудь
&Подсчитываемый
Процедура ПриСозданииОбъекта()
КонецПроцедурыКомбинирование с другими аннотациями
bsl
&Наблюдаемый("orders.process")
&Подсчитываемый("orders.count")
&Замеряемый("orders.duration")
Функция ОбработатьЗаказ(ИдЗаказа) Экспорт
Возврат СформироватьОтвет(ИдЗаказа);
КонецФункцииСм. также
- Наблюдаемый — создание span'ов вокруг методов
- Замеряемый — замер длительности методов
