我想将详细(详细)ansible日志保存到文件(ANSIBLE_LOG_PATH),但同时保持控制台输出简洁。
我怎样才能做到这一点?到目前为止,我能够使用这种方法将日志保存到新文件,但似乎它们与控制台具有相同级别的详细程度,但这并没有太多帮助。
#!/bin/bash
SOURCE="${BASH_SOURCE[0]}"
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
SOURCE="$(readlink "$SOURCE")"
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
done
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
export ANSIBLE_LOG_PATH="$DIR/ansible-$(date +%Y%m%d%H%M%S).log"
ansible -m ping localhost
答案 0 :(得分:5)
开箱即用Ansible只是将您的控制台输出镜像到ANSIBLE_LOG_PATH
请参阅display
方法here。
似乎实现你想要的唯一方法是制作你自己的回调插件,将条目写入文件中,并且最大限度。
例如,您可以克隆default.py将所有self._display.display
替换为file.write
并忽略所有self._display.verbosity
项检查,这样您的插件就会忽略-v
cli切换。