Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

How do I see stdout for ansible-playbook commands? -v only shows ansible output, not the individual commands. It would be great if I could figure out how to do this immediately, so if something fails or hangs I can see why.

e.g.

- name: print to stdout
  action: command echo "hello"

would print

TASK: [print variable] ******************************************************** 

hello
share|improve this question
    
related: serverfault.com/questions/667252/… –  barraponto Feb 12 at 22:08

1 Answer 1

I think you can register the result to a variable, then print with debug.

- name: print to stdout
  command: echo "hello"
  register: hello

- debug: msg="{{ hello.stdout }}"

- debug: msg="{{ hello.stderr }}"
share|improve this answer
    
Thanks @bfschott, that worked. –  Sathish Dec 19 '13 at 12:38
2  
Additionally, you can debug a variable directly with - debug: var=hello. Sometimes this is more helpful for multiline output or Ansible module output (rather than command/shell output). –  geerlingguy Mar 8 '14 at 3:03
1  
I had trouble getting Java output using this. The fix is to redirect all of Java's output to stdout: shell: java -version 2>&1 –  Matthias Braun Jan 6 at 17:27
    
that's a lot better nothing, but you only get the stdout message after the command has successfully completed. I was having an issue where ansible would appear to hang. The reason was that I was using the wrong username for an rsync command, which spooled the interactive password request, which just hanged ansible. It was very difficult to debug - but if I could see stdout in realtime, I would have immediately realised what I'd done wrong. I would LOVE this functionality, if possible. –  Michael B Feb 9 at 4:31

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.