`with_items`输出太冗长

时间:2017-03-16 11:15:37

标签: debugging logging ansible

我写了一个ansible任务,使用with_items迭代设置列表。现在我运行ansible时会记录所有设置。它非常冗长,很难看出发生了什么。但是,如果我使用no_log禁用所有输出,我将无法在失败时识别特定项目。

如何改进输出 - 仅显示每个项目的标识符?

示例任务:

- authorized_key:
    user: "{{ item.user }}"
    key: "{{ item.key }}"
  with_items: "{{ ssh_keys }}"

示例输出:

  

任务[sshkey-alan-sysop:ssh授权密钥] *********************************

     

ok:[brick] => (item = {u' user&#39 ;: u' alan-sysop',u' key':u' ssh-rsa   AAAAB3NzaC1yc2EAAAADAQABAAABAQDAgRe16yLZa8vbzsrxUpT5MdHoEYYd / awAnEWML4g + YoUvLDKr + zwmu78ze / E1NSipoZejXpggUYRVhh8MOiCX6qpUguBDWZFlvSCE / 7uXWWg7Oht0f1kDS2xU7YiycPIzMN1dmUEFY9AixnN936Dq6nOtEzgBwjo66I1YC / 5jrsQEqF19shx43A4DTFlPUz / PnsqHl2ESrkIk3e8zyidaPN2pRbA5iKzdvPW4E2W2tKw9ll40vqRXzaWIF7v293Ostwi1IPi2erlC777DhjZUhZ1VGXIR7FDAfANzalrMe6c / ZysiXewiUYgMw0I8Dh1LK3QMj9Kuo35S5E0Xj3TB   阿兰-系统操作员@阿兰膝上型'})

2 个答案:

答案 0 :(得分:5)

对此有loop_control

- authorized_key:
    user: "{{ item.user }}"
    key: "{{ item.key }}"
  with_items: "{{ ssh_keys }}"
  loop_control:
    label: "{{ item.user }}"

答案 1 :(得分:0)

标识符可以用作字典的键。

- authorized_key:
    user: "{{ item }}"
    key: "{{ ssh_keys[item] }}"
  with_items: "{{ ssh_keys.keys() }}"

示例输出:

TASK [sshkey-alan-sysop : ssh authorized keys] *********************************
ok: [brick] => (item=alan-sysop)