How to add timestamp and file list to rsync log?
Solution 1:
If you want to see the time for every file on the rsync client, you need to use --out-format:
rsync -avz --out-format="%t %f %b" remotehost:tmp .
the output looks like this:
2013/01/11 10:57:41 tmp/foo.txt 210
Log Format String:
%t: time
%f: file
%b: transfered bytes
Solution 2:
From rsyncd.conf(5):
"The default log format is "%o %h [%a] %m (%u) %f %l", and a "%t [%p] " is always prefixed when using the "log file" parameter."
2012/01/04 03:19:12 [1461] building file list
2012/01/04 03:19:12 [1461] .d..t...... ./
2012/01/04 03:19:14 [1461] >f+++++++++ file1.pdf
2012/01/04 03:19:14 [1461] >f+++++++++ file2.pdf
2012/01/04 03:19:14 [1461] >f+++++++++ file3.pdf
2012/01/04 03:19:14 [1461] sent 40892313 bytes received 72 bytes 16356954.00 bytes/sec
2012/01/04 03:19:14 [1461] total size is 81997177 speedup is 2.01
I believe this is what you want? Try your command without the --log-format option, and read the manual page for rsyncd.conf and search for "log format" to see what options you have to customize the logfile.
Another option I often use in my rsync scripts is to add date before/after the rsync, like:
date >> /var/log/rsync.log
rsync -avz --progress --delete /src /dst >> /var/log/rsync.log
date >> /var/log/rsync.log
And a third and final option would be to put your rsync command within a bash loop to prefix each line with the date.