我只想从下面的调试输出日志访问 stdout_lines 或 stdout 输出部分(即在线),但我得到了整个日志。
我刚才在这里提到了相关代码:
代码:
- debug: msg=" {{ item.stdout_lines }} "
with_items: " {{ result.results }} "
输出:
ok: [192.168.0.1] => (item={'changed': True, '_ansible_no_log': False, 'stdout': u'[online]\r\n', '_ansible_item_result': True, 'item': u'process1', 'stderr': u'Shared connection to 192.168.154.241 closed.\r\n', 'rc': 0, 'stdout_lines': [u'[online]'], '_ansible_ignore_errors': None, 'failed': False}) => {
"changed": false,
"item": {
"changed": true,
"failed": false,
"item": "process1",
"rc": 0,
"stderr": "Shared connection to 192.168.0.1 closed.\r\n",
"stdout": "[online]\r\n",
"stdout_lines": [
"[online]"
]
},
"msg": " [u'[online]'] "
答案1
嗯,看起来您正在使用-v
选项运行 ansible-playbook。因此,由于您处于详细模式,因此您会看到更多信息。
此外,由于您在调试任务中使用,with_items
因此您将看到在处理当前项目时显示该项目的内容。您可以使用循环控制
- debug: msg=" {{ item.stdout_lines }} "
with_items: " {{ result.results }} "
loop_control:
label: '...'