autumn-opentelemetry
autumn-opentelemetry — интеграция OpenTelemetry SDK с Autumn Framework.
Библиотека предоставляет аннотации для автоматической инструментации методов трассировкой, метриками и счётчиками, а также мост между логгером logos и OTel Logs API.
Установка
sh
opm install autumn-opentelemetryСовместимость
- OneScript 2.0.0+
- opentelemetry >= 1.0.0
- autumn >= 4.3.12
Быстрый старт
1. Подключение к приложению
autumn-opentelemetry подключается к приложению Autumn автоматически — достаточно добавить #Использовать autumn-opentelemetry:
bsl
#Использовать autumn
#Использовать autumn-opentelemetry
Поделка = Новый Поделка();
Поделка.ЗапуститьПриложение();2. Минимальная конфигурация
otel.enabled и otel.service.name — обязательные параметры:
json
{
"otel": {
"enabled": true,
"service": {
"name": "my-service"
}
}
}3. Инструментация методов
bsl
&Желудь
&Наблюдаемый
Процедура ПриСозданииОбъекта()
КонецПроцедуры
&Подсчитываемый("orders.processed")
&Замеряемый("orders.duration")
Функция ОбработатьЗаказ(&АтрибутСпана("order.id") ИдЗаказа) Экспорт
// span с атрибутом order.id = ИдЗаказа
// длительность в гистограмме orders.duration
// счётчик orders.processed инкрементируется
Возврат СформироватьОтвет(ИдЗаказа);
КонецФункцииОсновные возможности
ОтелДуб автоматически:
- Инициализирует OpenTelemetry SDK через параметры приложения
- Регистрирует бины
ОтелSdk,ОтелТрассировщик,ОтелМетр - Создаёт и регистрирует аппендер
ОтелАппендерLogosдля экспорта логов
Аннотации доступны для любого &Желудь:
| Аннотация | Описание |
|---|---|
&Наблюдаемый | Создаёт span OpenTelemetry вокруг метода |
&Замеряемый | Записывает длительность вызова в гистограмму |
&Подсчитываемый | Инкрементирует счётчик при каждом вызове |
&АтрибутСпана | Добавляет параметр метода как атрибут span'а |
Дальнейшее изучение
Руководство пользователя
- Конфигурация — параметры OpenTelemetry и логирования
- Аннотации — подробное описание аннотаций с примерами
