Wo finde ich das neueste ansible Fehlerprotokoll?

10

Ich habe ein ansibles Skript verwendet, um eine Serverkonfiguration aufzurufen. Ich habe das Skript vom Server aus ausgeführt und alles im localhost-Inventar ausgeführt.

Jetzt wurde die SSH-Verbindung zum Server geschlossen und ich kann die Protokolldatei nicht finden. Wo ist der Standardprotokollpfad dafür? Unter / var / log befindet sich keine ansible Datei.

Ich führe das Skript erneut aus und erwarte, dass der Fehler erneut auftritt. Dies ist jedoch keine gute Lösung, da das Skript einige Stunden benötigt, um zum Fehlerpunkt zu gelangen.

Felipe
quelle

Antworten:

12

Ansible erstellt standardmäßig keine eigenen Protokolle. Sie müssen dies mithilfe einer ansible.cfgDatei anweisen. Ansible führt standardmäßig eine Protokollierung in Syslog durch:

Beachten Sie, dass ansible ohne diese Einstellung Modulargumente aufzeichnet, die im Syslog verwalteter Computer aufgerufen werden.

Dadurch werden Modulargumente im Syslog der von Ihnen verwalteten Computer protokolliert .

Um die vollständige Protokollierung zu aktivieren, können Sie auf Ihrem Steuercomputer eine ansible.cfgDatei erstellen , die folgendermaßen aussieht:

[defaults]
log_path = ./ansible.log

Dann speichern Sie es irgendwo ansible wird danach suchen. Ansible überprüft diese Speicherorte ansible.cfgin dieser Reihenfolge auf Dateien:

  • ANSIBLE_CONFIG (eine Umgebungsvariable)
  • ansible.cfg (im aktuellen Verzeichnis)
  • .ansible.cfg (im Home-Verzeichnis)
  • /etc/ansible/ansible.cfg

Eine alternative Option besteht darin, die ANSIBLE_LOG_PATHUmgebungsvariable auf den Pfad festzulegen, bei dem Sie sich anmelden möchten. Dies entspricht dem Festlegen der log_pathOption in der ansible.cfgDatei.

Weitere Informationen finden Sie hier: http://docs.ansible.com/intro_configuration.html

Duncan Lock
quelle
2
Es ist auch möglich, die Umgebungsvariable ANSIBLE_LOG_PATH festzulegen
bis zum
2

Stöbern Sie im Syslog-Speicherort Ihres Systems. Dort endet es normalerweise für mich (Ubuntu 12.04).

Andernfalls möchten Sie möglicherweise ausführen ansible-playbook -vvvv $args, um die Debug-Protokollierung zu aktivieren, und dann teein eine Datei.

Tom O'Connor
quelle