Spec-Zone.ru › Ansible 2.8

Плагины обратного вызова

  • Примеры плагинов обратного вызова
  • Включение плагинов обратного вызова
  • Установка плагина обратного вызова для ansible-playbook
  • Установка плагина обратного вызова для ад-хок команд
  • Список плагинов

Плагины обратного вызова позволяют добавлять новые возможности в Ansible при реагировании на события. По умолчанию плагины обратного вызова контролируют большую часть выводимой информации при выполнении командной строки, но также могут использоваться для добавления дополнительного вывода, интеграции с другими инструментами и передачи событий в хранилище.

Примеры плагинов обратного вызова

Плагин log_plays — пример записи событий playbook в файл журнала, а плагин mail отправляет электронные письма при сбоях в playbook.

Плагин say отвечает синтезированной речью компьютера в отношении событий playbook.

Включение плагинов обратного вызова

Вы можете активировать пользовательский плагин обратного вызова, поместив его в директорию callback_plugins рядом с вашей игрой, внутри роли или в одном из каталогов callback, настроенных в ansible.cfg.

Плагины загружаются в алфавитном порядке. Например, плагин, реализованный в файле с именем 1_first.py, будет выполняться перед файлом плагина с именем 2_second.py.

Большинство плагинов обратного вызова, поставляемых с Ansible, по умолчанию отключены и должны быть включены в вашем файле ansible.cfg для работы. Например:

#callback_whitelist = timer, mail, profile_roles

Установка плагина обратного вызова для ansible-playbook

Вы можете иметь только один плагин, который является основным менеджером вашего консольного вывода. Если вы хотите заменить стандартный, вы должны определить CALLBACK_TYPE = stdout в подклассе, а затем настроить плагин stdout в ansible.cfg. Например:

stdout_callback = dense

или для моего пользовательского плагина обратного вызова:

stdout_callback = mycallback

Это влияет только на ansible-playbook по умолчанию.

Установка плагина обратного вызова для ад-хок команд

Команда ansible ад-хок специально использует другой плагин обратного вызова для stdout, поэтому есть дополнительная настройка в Ansible Configuration Settings, которую нужно добавить, чтобы использовать плагин обратного вызова stdout, определенный выше:

[defaults]
bin_ansible_callbacks=True

Вы также можете установить это как переменную окружения:

export ANSIBLE_LOAD_CALLBACK_PLUGINS=1

Список плагинов

Вы можете использовать ansible-doc -t callback -l для просмотра списка доступных плагинов. Используйте ansible-doc -t callback <plugin name> для просмотра конкретных документов и примеров.

  • actionable — отображает только элементы, требующие внимания
  • aws_resource_actions — суммирует все завершенные «resource:actions»
  • cgroup_memory_recap — Профилирование максимального использования памяти задачами и полного выполнения с помощью cgroup
  • cgroup_perf_recap — Профилирование системной активности задач и полного выполнения с помощью cgroup
  • context_demo — демонстрационный плагин обратного вызова, добавляющий контекст игры/задачи
  • counter_enabled — добавляет счётчики к элементам вывода (задачи и хосты/задачи)
  • debug — отформатированный вывод stdout/stderr
  • default — стандартный вывод Ansible на экран
  • dense — минимальный вывод stdout
  • foreman — Отправляет события в Foreman
  • full_skip — подавляет задачи, если все хосты пропущены
  • grafana_annotations — отправляет события ansible как аннотации на графиках в grafana через http api
  • hipchat — публикует события задач в hipchat
  • jabber — публикует события задач на сервер Jabber
  • json — вывод Ansible на экран в формате JSON
  • junit — запись вывода playbook в файл JUnit
  • log_plays — запись вывода playbook в файл журнала
  • logdna — Отправляет журналы playbook в LogDNA
  • logentries — Отправка событий в Logentries
  • logstash — Отправка событий в Logstash
  • mail — Отправка событий об ошибках по электронной почте
  • minimal — минимальный вывод Ansible на экран
  • nrdp — публикация результата задачи на сервер nagios через nrdp
  • null — Не отображать ничего на экране
  • oneline — вывод Ansible на экран в одну строку
  • osx_say — уведомление с помощью синтезатора речи
  • profile_roles — добавление временной информации к ролям
  • profile_tasks — добавление временной информации к задачам
  • say — уведомление с помощью синтезатора речи
  • selective — вывод только определённых задач
  • skippy — вывод Ansible на экран, игнорирующий пропущенный статус
  • slack — Отправка событий игры в канал Slack
  • splunk — Отправка событий результата задачи в Splunk HTTP Event Collector
  • stderr — Разделение вывода, отправка завершённых задач в stderr
  • sumologic — Отправка событий результата задачи в Sumologic
  • syslog_json — отправка событий JSON в syslog
  • timer — Добавление времени к статистике игры
  • tree — Сохранение событий хостов в файлы
  • unixy — сжатый вывод Ansible
  • yaml — вывод Ansible на экран в формате yaml

См. также

Плагины действий
Плагины действий Ansible
Плагины кэша
Плагины кэша Ansible
Плагины подключения
Плагины подключения Ansible
Плагины инвентаризации
Плагины инвентаризации Ansible
Плагины оболочки
Плагины оболочки Ansible
Плагины стратегии
Плагины стратегии Ansible
Плагины переменных
Плагины переменных Ansible
Список рассылки пользователей
У вас есть вопрос? Обратитесь к сообществу!
webchat.freenode.net
IRC-чат-канал #ansible

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/plugins/callback.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API