Rsync लॉग में टाइमस्टैम्प और फ़ाइल सूची कैसे जोड़ें?


10

मैं लॉग में टाइमस्टैम्प और फ़ाइल सूची दोनों को जोड़ना चाहता हूं। वर्तमान में, मैं केवल एक ही प्राप्त कर सकता हूं। निम्न कमांड अद्यतन की गई फ़ाइल सूची को ट्रैक कर सकती है लेकिन यह टाइमस्टैम्प को नहीं जोड़ती है।

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

निम्न आदेश लॉग में टाइमस्टैम्प जोड़ सकते हैं, लेकिन यह नहीं बताता है कि कौन सी फाइलें अपडेट की गई थीं।

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

जवाबों:


8

Rsyncd.conf (5) से:
"डिफ़ॉल्ट लॉग प्रारूप"% o% h [% a]% m (% u)% f% l "है, और"% t [% p] "का उपयोग करते समय हमेशा उपसर्ग किया जाता है "लॉग फ़ाइल" पैरामीटर। "

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


मेरा मानना ​​है कि यह वही है जो आप चाहते हैं? --Log- प्रारूप विकल्प के बिना अपनी कमांड का प्रयास करें, और rsyncd.conf के लिए मैनुअल पेज पढ़ें और "लॉग प्रारूप" के लिए खोजें कि आपको लॉगफ़ाइल को अनुकूलित करने के लिए क्या विकल्प हैं।

एक अन्य विकल्प जो मैं अक्सर अपनी rsync स्क्रिप्ट में उपयोग करता हूं, वह है कि rsync से पहले / बाद की तारीख को जोड़ना, जैसे:

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

और तीसरा और अंतिम विकल्प यह होगा कि आप अपने rsync कमांड को bash लूप के भीतर डेट के साथ प्रत्येक लाइन को प्रीफ़िक्स करें।


10

यदि आप rsync क्लाइंट पर हर फ़ाइल के लिए समय देखना चाहते हैं, तो आपको उपयोग करने की आवश्यकता है:

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

आउटपुट इस तरह दिखता है:

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

लॉग प्रारूप स्ट्रिंग:

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.