运行攻略后访问可能的攻略结果
问题描述
我使用ansible-pull
在我看不到的远程计算机(客户端)上运行Ansible脚本。
我想确保:
- 可修改的剧本执行成功,则应发送摘要
- 可分析的行动手册如果执行不成功,应发送失败内容的摘要
PLAY [localhost] **************************************************************
GATHERING FACTS ***************************************************************
ok: [localhost]
TASK: [Install the hello package] *********************************************
ok: [localhost] => {"changed": false}
TASK: [Install the cmatrix package] *******************************************
ok: [localhost] => {"changed": false}
PLAY RECAP ********************************************************************
localhost : ok=3 changed=0 unreachable=0 failed=0
如果没有,那么我将不得不编写自定义脚本来解析日志,将信息保存在机器上的某个数据库中,然后将其发送回我们的服务器。
解决方案
AFAIK没有可以从中获取此数据的变量。
但这需要callback plugin。请看一下插件log_plays。它会写入自己的日志文件。您可以截取所有消息,收集它们,最后(在插件中定义一个方法def playbook_on_stats(self, stats):
)随心所欲地处理它。还有mail plugin,它将发送有关失败任务的电子邮件。
相关文章