これを解決しようとしていますが、うまくいかないようです。$HOSTNAME-timestamp のようなログ ファイルを作成したいと考えています。たとえば、私はこれを持っています:
def test_servers():
env.user = getpass.getuser()
env.hosts = ['servernumber1', 'servernumber2']
def logname():
timestamp = time.strftime("%b_%d_%Y_%H:%M:%S")
'env.hosts' + timestamp
def audit():
name = logname()
sys.stdout = open('/home/path/to/audit/directory/%s' % name, 'w')
run('hostname -i')
print 'Checking the uptime of: ', env.host
if run('uptime') < '0':
print(red("it worked for less"))
elif run('uptime') > '0':
print(green("it worked for greater"))
else:
print "WTF?!"
fabfile.py で fabric を実行して「監査」を実行すると、問題なく動作しますが、ファイルの先頭にホスト名が追加されたログ ファイルが作成されません。ただし、test_servers で定義されたホストごとにタイムスタンプ付きのログ ファイルが作成されます。どんな助けでも大歓迎です。