Come aggiungere il timestamp e l'elenco dei file al registro rsync?


10

Voglio aggiungere sia il timestamp che l'elenco dei file al registro. Attualmente, posso ottenerne solo uno. Il seguente comando consente di tenere traccia dell'elenco dei file aggiornato ma non aggiunge il timestamp.

rsync -avz --progress --delete / web / path / public_html / $ newhost: / web / path / public_html >> /var/log/rsync.log

sent 2345743 bytes  received 43205 bytes  530877.33 bytes/sec
total size is 14828110173  speedup is 6206.96
sending incremental file list
error_log  5740980 100%   36.98MB/s    0:00:00 (xfer#1, to-check=1405/1524)

sent 2344322 bytes  received 51694 bytes  684576.00 bytes/sec
total size is 14828115593  speedup is 6188.65

Il comando seguente può aggiungere il timestamp al registro, ma non indica quali file sono stati aggiornati.

rsync -avz --progress --delete / web / path / public_html / $ newhost: / web / path / public_html --log-file = / var / log / rsync1.log --log-file-format = "% t \ n"

2012/01/03 17:30:05 [10505] Total transferred file size: 6170062 bytes
2012/01/03 17:30:05 [10505] Literal data: 5470 bytes
2012/01/03 17:30:05 [10505] Matched data: 6164592 bytes
2012/01/03 17:30:05 [10505] File list size: 2333282
2012/01/03 17:30:05 [10505] File list generation time: 0.002 seconds
2012/01/03 17:30:05 [10505] File list transfer time: 0.000 seconds
2012/01/03 17:30:05 [10505] Total bytes sent: 2345435
2012/01/03 17:30:05 [10505] Total bytes received: 28628
2012/01/03 17:30:05 [10505] sent 2345435 bytes  received 28628 bytes  527569.56 bytes/sec
2012/01/03 17:30:05 [10505] total size is 14828121798  speedup is 6245.88

Risposte:


8

Da rsyncd.conf (5):
"Il formato di registro predefinito è"% o% h [% a]% m (% u)% f% l "e un"% t [% p] "ha sempre il prefisso quando si utilizza il parametro "file di registro". "

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


Credo che sia questo ciò che vuoi? Prova il tuo comando senza l'opzione --log-format, e leggi la pagina di manuale per rsyncd.conf e cerca il "formato di registro" per vedere quali opzioni hai per personalizzare il file di registro.

Un'altra opzione che uso spesso nei miei script rsync è quella di aggiungere la data prima / dopo il rsync, come:

date >> /var/log/rsync.log
rsync -avz --progress --delete /src /dst >> /var/log/rsync.log
date >> /var/log/rsync.log

E una terza e ultima opzione sarebbe quella di mettere il tuo comando rsync in un ciclo bash per anteporre ogni riga con la data.


10

Se vuoi vedere l'ora per ogni file sul client rsync, devi usare --out-format:

 rsync -avz --out-format="%t %f %b" remotehost:tmp . 

l'output è simile al seguente:

2013/01/11 10:57:41 tmp/foo.txt 210

Stringa formato registro:

%t: time
%f: file
%b: transfered bytes

0

Sostituisci >> /var/log/rsync.log replacecon--log-file=/var/log/rsync.log -q

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.