обратный вызов community.general.opentelemetry – Создание распределенных трассировок с OpenTelemetry
Примечание
Этот плагин обратного вызова входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить ее, используйте: ansible-galaxy collection install community.general. Для использования этого плагина обратного вызова могут потребоваться дополнительные зависимости; подробности см. в разделе Требования.
Чтобы использовать его в плейбуке, укажите: community.general.opentelemetry.
Добавлено в community.general 3.7.0
Плагин обратного вызова
Этот плагин является плагином обратного вызова для уведомлений. Он отправляет информацию о выполнении плейбука другим приложениям, службам или системам. Дополнительную информацию о плагинах обратного вызова см. в разделе Плагины обратного вызова.
Краткое описание
- Этот обратный вызов создает распределенные трассировки для каждой задачи Ansible с помощью OpenTelemetry.
- Экспортер и SDK OpenTelemetry можно настроить с помощью переменных среды.
- См. https://opentelemetry-python.readthedocs.io/en/latest/exporter/otlp/otlp.html.
- См. https://opentelemetry-python.readthedocs.io/en/latest/sdk/environment_variables.html#opentelemetry-sdk-environment-variables.
Требования
Следующие требования необходимы на локальном узле контроллера, который выполняет этот обратный вызов.
- opentelemetry-api (библиотека Python)
- opentelemetry-exporter-otlp (библиотека Python)
- opentelemetry-sdk (библиотека Python)
Параметры
Параметр | Комментарии |
|---|---|
disable_attributes_in_logs логический добавлено в community.general 7.1.0 | Отключить добавление атрибутов спанов в журналы. Варианты:
Конфигурация:
|
disable_logs логический добавлено в community.general 5.8.0 | Отключить отправку журналов. Варианты:
Конфигурация:
|
enable_from_environment строка добавлено в community.general 3.8.0 | Следует ли включать этот обратный вызов, только если указанная переменная среды существует и имеет значение Это удобно, если вы используете конфигурацию как код и хотите отправлять распределенные трассировки при запуске в CI, а не при локальном запуске Ansible. Для этого указанное значение Конфигурация:
|
hide_task_arguments логический | Скрыть аргументы задачи. Варианты:
Конфигурация:
|
otel_exporter_otlp_traces_protocol строка добавлено в community.general 9.0.0 |
Варианты:
Конфигурация:
|
otel_service_name строка | Атрибут ресурса, содержащий имя службы. По умолчанию: Конфигурация:
|
store_spans_in_file строка добавлено в community.general 9.0.0 | Сохраняет экспортированные спаны в указанный файл. Конфигурация:
|
traceparent строка | Заголовок traceparent контекста трассировки W3C. По умолчанию: Конфигурация:
|
Примечание
Записи конфигурации, перечисленные выше для каждого типа записи (переменная Ansible, переменная среды и т. д.), упорядочены от низкого к высокому приоритету. Например, переменная, расположенная ниже в списке, переопределяет переменную, расположенную выше. Типы записей также упорядочены по приоритету от низкого к высокому. Например, запись ansible.cfg (расположенная выше в списке) переопределяется переменной Ansible (расположенной ниже в списке).
Примеры
examples: |-
Enable the plugin in ansible.cfg:
[defaults]
callbacks_enabled = community.general.opentelemetry
[callback_opentelemetry]
enable_from_environment = ANSIBLE_OPENTELEMETRY_ENABLED
Set the environment variable:
export OTEL_EXPORTER_OTLP_ENDPOINT=<your endpoint (OTLP/HTTP)>
export OTEL_EXPORTER_OTLP_HEADERS="authorization=Bearer your_otel_token"
export OTEL_SERVICE_NAME=your_service_name
export ANSIBLE_OPENTELEMETRY_ENABLED=true
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/opentelemetry_callback.html