Глобальні властивості конфігурації OBI

Налаштуйте глобальні властивості конфігурації, які застосовуються до ядра OBI.

OBI можна налаштувати через змінні середовища або через файл конфігурації YAML, переданий або з аргументом командного рядка -config, або через змінну середовища OTEL_EBPF_CONFIG_PATH. Змінні середовища мають пріоритет над властивостями у файлі конфігурації. Наприклад, у наступному рядку команди опція OTEL_EBPF_LOG_LEVEL перевизначає будь-які налаштування log_level всередині config.yaml:

Аргумент конфігурації:

OTEL_EBPF_LOG_LEVEL=debug obi -config /path/to/config.yaml

Змінна середовища конфігурації:

OTEL_EBPF_LOG_LEVEL=debug OTEL_EBPF_CONFIG_PATH=/path/to/config.yaml obi

Для шаблону конфігураційного файлу зверніться до прикладу конфігураційного файлу YAML.

OBI складається з конвеєра компонентів, які генерують, перетворюють і експортують трейс з HTTP і gRPC застосунків. У YAML конфігурації кожен компонент має свій власний розділ першого рівня.

Додатково, OBI також надає метрики на рівні мережі, зверніться до документації з мережевих метрик для отримання додаткової інформації.

Наступні розділи пояснюють глобальні властивості конфігурації, які застосовуються до всієї конфігурації OBI.

Наприклад:

trace_printer: json
shutdown_timeout: 30s
channel_buffer_len: 33
YAML
змінна середовища
ОписТипСтандартно
(No YAML)
OTEL_EBPF_AUTO_TARGET_EXE
Вибирає процес для інструментування за допомогою Glob відповідно до повного шляху до виконуваного файлу.stringunset
open_port
OTEL_EBPF_OPEN_PORT
Вибирає процес для інструментування за відкритими портами. Приймає списки портів, розділені комами, і діапазони портів.stringunset
shutdown_timeout
OTEL_EBPF_SHUTDOWN_TIMEOUT
Встановлює тайм-аут для коректного завершення роботиstring“10s”
log_level
OTEL_EBPF_LOG_LEVEL
Встановлює рівень деталізації журналювання процесу. Дійсні значення: DEBUG, INFO, WARN, ERROR.stringINFO
trace_printer
OTEL_EBPF_TRACE_PRINTER
Виводить інструментовані трейс у стандартний вивід у вказаному форматі, див. форматів виводу трейсів.stringdisabled
enforce_sys_caps
OTEL_EBPF_ENFORCE_SYS_CAPS
Керує тим, як OBI обробляє відсутні системні можливості під час запуску.booleanfalse

Збіг імені виконуваного файлу

Ця властивість приймає glob відповідно до повного командного рядка виконуваного файлу, включаючи теку, де виконуваний файл знаходиться в файловій системі. OBI вибирає один процес або кілька процесів з схожими характеристиками. Для отримання додаткової інформації про вибір процесів і групування зверніться до документації з виявлення сервісів.

Коли ви інструментуєте за іменем виконуваного файлу, вибирайте однозначну назву, яка відповідає одному виконуваному файлу на цільовій системі. Наприклад, якщо ви встановите OTEL_EBPF_AUTO_TARGET_EXE=*/server і маєте два процеси, які відповідають Glob, OBI вибирає обидва. Натомість використовуйте повний шлях до застосунку для точного збігу, наприклад OTEL_EBPF_AUTO_TARGET_EXE=/opt/app/server або OTEL_EBPF_AUTO_TARGET_EXE=/server.

Якщо ви встановите як OTEL_EBPF_AUTO_TARGET_EXE, так і OTEL_EBPF_OPEN_PORT властивості, OBI вибирає лише виконувані файли, які відповідають обом критеріям вибору.

Зіставлення відкритих портів

Ця властивість приймає списки портів, розділені комами, або діапазони портів. Якщо виконуваний файл відповідає будь-якому з портів, OBI вибирає його. Наприклад:

OTEL_EBPF_OPEN_PORT=80,443,8000-8999

В цьому прикладі OBI вибирає будь-який виконуваний файл, який відкриває порт 80, 443 або будь-який порт між 8000 і 8999. Він може вибрати один процес або кілька процесів з подібними характеристиками. Для отримання додаткової інформації про вибір процесів і групування зверніться до документації з виявлення сервісів.

Якщо виконуваний файл відкриває кілька портів, вказівка одного з цих портів є достатньою для OBI, щоб інструментувати всі HTTP/S і gRPC запити на всіх портах застосунку. Наразі немає способу обмежити інструментування запитів на конкретному порту.

Якщо вказаний діапазон портів є широким, наприклад 1-65535, OBI намагається виконати всі процеси, які володіють одним з портів у цьому діапазоні.

Якщо ви встановите як OTEL_EBPF_AUTO_TARGET_EXE, так і OTEL_EBPF_OPEN_PORT властивості, OBI вибирає лише виконувані файли, які відповідають обом критеріям вибору.

Формати виводу трейсів

Ця опція виводить будь-який інструментований трейс на стандартний вивід, використовуючи один з наступних форматів:

  • disabled: Вимикає принтер
  • text: Виводить стиснутий рядок тексту
  • json: Виводить компактний обʼєкт JSON
  • json_indent: Виводить відформатований обʼєкт JSON

Системні можливості

Якщо ви встановите enforce_sys_caps в true і необхідні системні можливості відсутні, OBI припиняє запуск і веде журнал відсутніх можливостей. Якщо ви встановите цю опцію в false, OBI лише веде журнал відсутніх можливостей.


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