Ansible Debug

2024 年 8 月 29 日 | 阅读 2 分钟

Ansible 提供了一个 debug 模块选项,使任务更易于管理。它是一个方便的工具来找出任何问题区域。

Ansible 2.1 版本扩展了 debug 模块,增加了一个 verbosity 参数,将其从 print line 转换为更强大的调试工具。

例如: 让我们创建 playbook 1_debug_example.yml,如下所示:

在 Ansible playbook 调试期间,了解如何显示已注册的变量或主机事实非常有用。

要从 Ansible playbook 打印消息以及变量的值,我们可以使用 Ansible debug 模块。 Ansible debug 模块易于使用。

例如: 让我们执行一个简单的 hello world playbook 2_debug_example.yml,如下所示:

Ansible 包括一个调试器作为策略插件的一部分。此调试器使您可以将调试作为一项任务。您可以在任务的上下文中访问调试器的所有功能。您可以检查或设置变量的值,更新模块参数,并使用新变量和参数重新运行任务,以解决失败的原因。

有很多方法可以调用调试器,例如

使用 debugger 关键字

debugger 关键字可以在任何提供 name 属性的块上使用,例如角色、块、任务或 play。

debugger 关键字接受多个值,例如

Always: 始终调用调试器,无论结果如何。

Never: 从不调用调试器,无论结果如何。

On_failed: 仅当任务失败时才调用调试器。

On_unreachable: 仅当主机无法访问时才调用调试器。

On_skipped: 仅当任务被跳过时才调用调试器。

注意: 这些选项会覆盖任何全局配置以启用或禁用调试器。

在任务上

在一个 play 上

如果在一般级别和更具体的级别提供,则更具体的级别获胜


下一个主题Ansible Apt