Конфігурація інструментування

Ця сторінка описує загальні налаштування, які застосовуються до кількох інструментів одночасно.

Імʼя сервісу-партнера

Імʼя сервісу-партнера це імʼя віддаленого сервісу, до якого здійснюється підключення. Воно відповідає service.name у ресурсі для локального сервісу.

System property: otel.instrumentation.common.peer-service-mappingEnvironment variable: OTEL_INSTRUMENTATION_COMMON_PEER_SERVICE_MAPPING

Description: Використовується для вказівки відповідності між іменами хостів або IP-адресами та сервісами-партнерами у вигляді списку пар <host_or_ip>=<user_assigned_name>, розділених комами. Сервіс-партнер додається як атрибут до відрізка, хост або IP-адреса якого є відповідним.

Наприклад, якщо встановлено наступне:

1.2.3.4=cats-service,dogs-abcdef123.serverlessapis.com=dogs-api

Тоді запити до 1.2.3.4 матимуть атрибут peer.service зі значенням cats-service, а запити до dogs-abcdef123.serverlessapis.com матимуть атрибут dogs-api.

З версії Java агента 1.31.0 можна вказати порт і шлях для визначення peer.service.

Наприклад, якщо встановлено наступне:

1.2.3.4:443=cats-service,dogs-abcdef123.serverlessapis.com:80/api=dogs-api

Тоді запити до 1.2.3.4 не матимуть перевизначення для атрибуту peer.service, тоді як 1.2.3.4:443 матиме peer.service зі значенням cats-service, а запити до dogs-abcdef123.serverlessapis.com:80/api/v1 матимуть атрибут dogs-api.

Очищення операторів БД

Агент очищує всі запити/заяви до бази даних перед встановленням семантичного атрибута db.statement. Усі значення (рядки, числа) у рядку запиту замінюються знаком питання (?).

Примітка: Параметри привʼязки JDBC не захоплюються у db.statement. Дивіться відповідне питання якщо ви хочете захопити параметри привʼязки.

Приклади:

  • SQL запит SELECT a from b where password="secret" буде виглядати як SELECT a from b where password=? в експортованому відрізку;
  • Команда Redis HSET map password "secret" буде виглядати як HSET map password ? у експортованому відрізку.

Ця поведінка стандартно увімкнена для всіх інструментів бази даних. Використовуйте наступну властивість, щоб вимкнути її:

System property: otel.instrumentation.common.db-statement-sanitizer.enabledEnvironment variable: OTEL_INSTRUMENTATION_COMMON_DB_STATEMENT_SANITIZER_ENABLED

Default: true
Description: Увімкнення очищення запитів до бази даних.

Захоплення телеметрії отримання повідомлень споживачем в інструментах обміну повідомленнями

Ви можете налаштувати агент для захоплення телеметрії отримання повідомлень споживачем в інструментах обміну повідомленнями. Використовуйте наступну властивість, щоб увімкнути її:

System property: otel.instrumentation.messaging.experimental.receive-telemetry.enabledEnvironment variable: OTEL_INSTRUMENTATION_MESSAGING_EXPERIMENTAL_RECEIVE_TELEMETRY_ENABLED

Default: false
Description: Увімкнення телеметрії отримання повідомлень споживачем.

Зверніть увагу, що це призведе до того, що на стороні споживача розпочнеться новий трейс, з лише посиланням на відрізок, що зʼєднує його з трейсом продюсера.

Примітка: Імена властивостей/змінних середовища, зазначені в таблиці, все ще є експериментальними, і тому можуть змінюватися.

Захоплення атрибутів кінцевого користувача

Ви можете налаштувати агент для захоплення загальних атрибутів ідентифікації (enduser.id, enduser.role, enduser.scope) з бібліотек інструментування таких як JavaEE/JakartaEE Servlet та Spring Security.

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

System property: otel.instrumentation.common.enduser.id.enabledEnvironment variable: OTEL_INSTRUMENTATION_COMMON_ENDUSER_ID_ENABLED

Default: false
Description: Визначає, чи захоплювати семантичний атрибут enduser.id.

System property: otel.instrumentation.common.enduser.role.enabledEnvironment variable: OTEL_INSTRUMENTATION_COMMON_ENDUSER_ROLE_ENABLED

Default: false
Description: Визначає, чи захоплювати семантичний атрибут enduser.role.

System property: otel.instrumentation.common.enduser.scope.enabledEnvironment variable: OTEL_INSTRUMENTATION_COMMON_ENDUSER_SCOPE_ENABLED

Default: false
Description: Визначає, чи захоплювати семантичний атрибут enduser.scope.

Spring Security

Для користувачів Spring Security, які використовують користувацькі префікси наданих повноважень, ви можете використовувати наступні властивості, щоб видалити ці префікси з значень атрибутів enduser.*, щоб краще представляти фактичні імена ролей та обсягів:

System property: otel.instrumentation.spring-security.enduser.role.granted-authority-prefixEnvironment variable: OTEL_INSTRUMENTATION_SPRING_SECURITY_ENDUSER_ROLE_GRANTED_AUTHORITY_PREFIX

Default: ROLE_
Description: Префікс наданих повноважень, що ідентифікують ролі для захоплення у семантичному атрибуті enduser.role.

System property: otel.instrumentation.spring-security.enduser.scope.granted-authority-prefixEnvironment variable: OTEL_INSTRUMENTATION_SPRING_SECURITY_ENDUSER_SCOPE_GRANTED_AUTHORITY_PREFIX

Default: SCOPE_
Description: Префікс наданих повноважень, що ідентифікують обсяги для захоплення у семантичному атрибуті enduser.scopes.


Востаннє змінено December 26, 2024: [uk] Ukrainian documentation for OpenTelemetry (2a3c5648)