如何查看Ansible命令的stdout,stderr以使其易于阅读?

问题描述 投票:0回答:1

我已经创建了一个Ansible任务,用于在远程Ubuntu计算机上部署apache。该任务运行正常。但是,我要确保ansible在远程主机上运行的命令的stdout / err被捕获并打印在运行ansible脚本时的标准输出。我已经尝试过类似的事情

 - name: a2dissite 000-default
   command: a2dissite 000-default
   register: out
 - debug: var=out.stdout_lines
 - debug: var=out.stderr_lines

下面给出的是我运行Ansible剧本后得到的内容

TASK [apache : a2dissite 000-default] ************************************************************************************************
changed: [ec2-host]

TASK [apache : debug] ****************************************************************************************************************
ok: [ec2-host] => {
    "out.stdout_lines": [
        "Site 000-default already disabled"
    ]
}

TASK [apache : debug] ****************************************************************************************************************
ok: [ec2-host] => {
    "out.stderr_lines": []
}

我可以看到我的命令的stdout和stderr,但是看起来很奇怪,有没有办法得到stdout并按原样打印它?

ansible stdout
1个回答
0
投票
[如果您想给人类带来真实的体验,您应该将IMO的重点放在错误报告和幂等性上,这是ansible的核心原则:有效更改某些内容时,报告“已更改”;未进行任何更改时,请报告“确定”,并提供有意义的发生错误。
© www.soinside.com 2019 - 2024. All rights reserved.