Ресурси
Вступ
Ресурс представляє сутність, що продукує телеметрію, у вигляді атрибутів ресурсу. Наприклад, процес, що створює телеметрію у контейнері в Kubernetes, має імʼя процесу, імʼя пода, простір імен і, можливо, імʼя розгортання. Всі ці чотири атрибути можуть бути включені до ресурсу.
У вашому бекенді спостережуваності ви можете використовувати інформацію про ресурс, щоб краще дослідити поведінку, яка вас цікавить. Наприклад, якщо дані трасування або метрики вказують на затримку у вашій системі, ви можете звузити її до певного контейнера, подів або розгортання Kubernetes.
Якщо ви використовуєте Jaeger як вашу систему спостереження, атрибути ресурсів групуються у вкладці Process:

Ресурс додається до TraceProvider або MetricProvider, коли вони створюються під час ініціалізації. Цю асоціацію не можна змінити пізніше. Після додавання ресурсу всі відрізки та метрики, створені з Tracer або Meter від провайдера, будуть мати асоційований з ними ресурс.
Семантичні атрибути зі стандартними значенням, наданим SDK
Існують атрибути, надані OpenTelemetry SDK. Один з них — це service.name, який представляє логічну назву сервісу.Стандартно, SDK призначить значення unknown_service для цього атрибуту, тому рекомендується встановити його явно, або в коді, або через встановлення змінної середовища OTEL_SERVICE_NAME.
Крім того, SDK також надає наступні атрибути ресурсів для самоідентифікації: telemetry.sdk.name, telemetry.sdk.language та telemetry.sdk.version.
Детектори ресурсів
Більшість SDK, специфічних для певних мов, надають набір детекторів ресурсів, які можна використовувати для автоматичного виявлення інформації про ресурси з середовища. Загальні детектори ресурсів включають:
- Операційна система
- Хост
- Процес та середовище виконання процесу
- Контейнер
- Kubernetes
- Атрибути, специфічні для хмарних провайдерів
- та інші
Власні ресурси
Ви також можете надати власні атрибути ресурсів. Ви можете надати їх або в коді, або через заповнення змінної середовища OTEL_RESOURCE_ATTRIBUTES. Якщо це можливо, використовуйте семантичні домовленості для ваших атрибутів ресурсів. Наприклад, ви можете надати назву вашого середовища розгортання використовуючи deployment.environment.name:
env OTEL_RESOURCE_ATTRIBUTES=deployment.environment.name=production yourApp
Відгук
Чи це було корисним?
Дякуємо. Ми цінуємо ваші відгуки!
Будь ласка, дайте нам знати як ми можемо покращити цю сторінку. Ми цінуємо ваші відгуки!