Where do I find the latest ansible error log

Solution 1:

Ansible doesn't create it's own logs by default - you have to tell it to do so, using an ansible.cfg file. Ansible does do some logging to syslog by default:

Note that ansible will, without this setting, record module arguments called to the syslog of managed machines.

So, that'll log module args to the syslog of the machines you're managing.

To switch on full logging, on your control machine, you can create an ansible.cfg file that looks like this:

[defaults]
log_path = ./ansible.log

Then save it somewhere ansible will look for it. Ansible checks these locations for ansible.cfg files, in this order:

  • ANSIBLE_CONFIG (an environment variable)
  • ansible.cfg (in the current directory)
  • .ansible.cfg (in the home directory)
  • /etc/ansible/ansible.cfg

An alternative option is to set the ANSIBLE_LOG_PATH environment variable, to the path you want to log to - it's equivalent to setting the log_path option in the ansible.cfg file.

See here for more information: http://docs.ansible.com/intro_configuration.html

Solution 2:

Have a rummage around in your system's syslog file location. That's where it usually ends up for me (Ubuntu 12.04).

Failing that, you might want to run ansible-playbook -vvvv $args to turn on some debug logging, then tee it to a file.

Tags:

Ansible