Google cloud storage 如何使用gsutil rsync执行日志记录

Google cloud storage 如何使用gsutil rsync执行日志记录,google-cloud-storage,gsutil,Google Cloud Storage,Gsutil,在执行静默rsync时,记录任何错误或警告的正确方法是什么 这是我当前从crontab运行的内容: gsutil -m -q rsync -r -C /mount1/share/folder gs://my-bucket-1/folder/ > /mount2/share/folder/gsutil.log 由于日志文件总是完全空的,并且我正在上载TB的数据,我开始认为甚至错误和警告也可能被禁止。在意识到这与通常如何将stdout和/或stderr管道传输到文件有关后,答案实际上就在这个

在执行静默rsync时,记录任何错误或警告的正确方法是什么

这是我当前从crontab运行的内容:

gsutil -m -q rsync -r -C /mount1/share/folder gs://my-bucket-1/folder/ > /mount2/share/folder/gsutil.log

由于日志文件总是完全空的,并且我正在上载TB的数据,我开始认为甚至错误和警告也可能被禁止。

在意识到这与通常如何将stdout和/或stderr管道传输到文件有关后,答案实际上就在这个现有线程中:

因此,将尽可能多的日志记录到一个日志文件中的简单解决方案可能是:

gsutil -d rsync [src] [dst] &> [logfile]

…其中
-d
启用调试输出。我发现这是显示受错误影响的文件的唯一方法,例如
CommandException:3个文件/对象无法复制
。请注意,
-d
会公开身份验证凭据。

错误仍然会随
-q
一起报告,但它们应该被发送到stderr而不是stdout。你也能重定向stderr吗?不过,一般来说,如果有错误,你不应该收到太多的错误。如果没有错误,这不是太好了吗?;)gsutil.log命令2>&1>>怎么样。这就是你的意思吗?很难知道它是否真的工作,因为绝对没有任何东西被记录到文件中。如果你想要进度信息,为什么不删除-q?如果可能,我只希望记录错误和警告,因为我正在传输大量文件。如果所有内容(信息级别)都被记录下来,那么日志将变得非常庞大。啊,是的–关于
command>>gsutil.log 2>&1
,您是对的。非常感谢。使用-q时仍然没有在日志中获取任何内容。。。但我想这是件好事!:)此命令是否允许在SSH连接中断时执行该命令?例如:gsutil-m rsync-r/mnt/disks/stutzen.co/gs://stutzen.me/sbkp/vm10-vm/&>/tmp/ry1.txt&-d用于删除在src_url下找不到的dst_url下的额外文件,请改用-d。