Go compile-time інструментування

Інструментуйте Go застосунки під час збірки, без змін коду.

Compile-time інструментування для Go автоматично інструментує ваш застосунок під час збірки, збираючи телеметрію з багатьох популярних бібліотек та фреймворків без будь-яких змін у вашому вихідному коді. Воно працює шляхом вбудовування в процес збірки Go та впровадження інструментування під час компіляції вашого застосунку, тому отриманий бінарний файл містить код інструментування без необхідності використання агента під час виконання.

Як це працює

Інструмент otelc обгортає звичайний виклик go build. Під час збірки він:

  1. Перехоплює компіляцію кожного пакета, використовуючи механізм -toolexec інструментарію Go.
  2. Зіставляє пакети та функції з набором правил інструментування, які описують, де мають бути гачки телеметрії.
  3. Впроваджує легкі точки вбудовування у зіставлені функції та повʼязує їх з кодом інструментування OpenTelemetry.

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

Коли використовувати

Compile-time інструментування є одним із кількох zero-code варіантів для Go: воно доповнює Auto SDK, тоді як eBPF-базоване інструментування доступне через OBI. Compile-time інструментування добре підходить, коли ви можете змінити конвеєр збірки, але не вихідний код, коли ви хочете інструментувати сторонні бібліотеки або коли ви не можете запускати привілейований агент поряд із вашим застосунком.


Початок роботи

Отримуйте телеметрію з Go застосунку без написання коду інструментування.

Підтримувані бібліотеки

Бібліотеки та фреймворки, що інструментуються з коробки.

Конфігурація

Налаштування інструменту otelc та телеметрії, що продукується інструментованими застосунками.

Усунення несправностей

Діагностика проблем із Go compile-time інструментуванням.


Востаннє змінено July 12, 2026: [uk] Ukrainian documentation for OpenTelemetry (f46a7552)