On 2/7/07, LORAND Benoît <[EMAIL PROTECTED]> wrote:
Hello,

    I have written a little script that's would email me all errors.
          rsync -vah --delete --stats <sources> <destination> >
/var/log/sauvegarde/listoffile.log 2> /var/log/sauvegarde/errors.log

    My problem is i want to have the stats in my mail. Is it possible to
redirect --stats to STDERR.

    I have tryed to do this :

                    /--- rsync-2.6.9/main.c  2006-10-14
                    01:46:32.000000000 +0200/
                    /+++ rsync-2.6.9.new/main.c      2007-02-06
                    19:28:08.000000000 +0100/
                    /@@ -227,39 +227,39 @@/
                    / {/
                    /        if (do_stats) {/
                    /                rprintf(FCLIENT, "\n");/
                    /-               rprintf(FINFO,"Number of files:
                    %d\n", stats.num_files);/
                    /-               rprintf(FINFO,"Number of files
                    transferred: %d\n",/
                    /+               rprintf(FERROR,"Number of files:
                    %d\n", stats.num_files);/
                    /+               rprintf(FERROR,"Number of files
                    transferred: %d\n",/
                    /                        stats.num_transferred_files);/
                    /-               rprintf(FINFO,"Total file size: %s
                    bytes\n",/
                    /+               rprintf(FERROR,"Total file size: %s
                    bytes\n",/
                    /                        human_num(stats.total_size));/
                    /-               rprintf(FINFO,"Total transferred
                    file size: %s bytes\n",/
                    /+               rprintf(FERROR,"Total transferred
                    file size: %s bytes\n",/
                    /
                    human_num(stats.total_transferred_size));/
                    /-               rprintf(FINFO,"Literal data: %s
                    bytes\n",/
                    /+               rprintf(FERROR,"Literal data: %s
                    bytes\n",/
                    /
                    human_num(stats.literal_data));/
                    /-               rprintf(FINFO,"Matched data: %s
                    bytes\n",/
                    /+               rprintf(FERROR,"Matched data: %s
                    bytes\n",/
                    /
                    human_num(stats.matched_data));/
                    /-               rprintf(FINFO,"File list size:
                    %d\n", stats.flist_size);/
                    /+               rprintf(FERROR,"File list size:
                    %d\n", stats.flist_size);/
                    /                if (stats.flist_buildtime) {/
                    /-                       rprintf(FINFO,/
                    /+                       rprintf(FERROR,/
                    /                                "File list
                    generation time: %.3f seconds\n",/
                    /
                    (double)stats.flist_buildtime / 1000);/
                    /-                       rprintf(FINFO,/
                    /+                       rprintf(FERROR,/
                    /                                "File list transfer
                    time: %.3f seconds\n",/
                    /
                    (double)stats.flist_xfertime / 1000);/
                    /                }/
                    /-               rprintf(FINFO,"Total bytes sent:
                    %s\n",/
                    /+               rprintf(FERROR,"Total bytes sent:
                    %s\n",/
                    /                        human_num(total_written));/
                    /-               rprintf(FINFO,"Total bytes
                    received: %s\n",/
                    /+               rprintf(FERROR,"Total bytes
                    received: %s\n",/
                    /                        human_num(total_read));/
                    /        }/

                    /        if (verbose || do_stats) {/
                    /                rprintf(FCLIENT, "\n");/
                    /-               rprintf(FINFO,/
                    /+               rprintf(FERROR,/
                    /                        "sent %s bytes  received %s
                    bytes  %s bytes/sec\n",/
                    /                        human_num(total_written),
                    human_num(total_read),/
                    /                        human_dnum((total_written +
                    total_read)/(0.5 + (endtime - starttime)), 2));/
                    /-               rprintf(FINFO, "total size is %s
                    speedup is %.2f\n",/
                    /+               rprintf(FERROR, "total size is %s
                    speedup is %.2f\n",/
                    /                        human_num(stats.total_size),/
                    /                        (double)stats.total_size /
                    (total_written+total_read));/
                    /        }/


But the problem is i have an error 23 when i use rsync.

You could just pipe STDOUT and STDERR to the same file and email that
to yourself.  To prevent getting the list of files transfered, you
could make rsync be quiet by removing -v and adding -q.

rsync > out.log  2>&1

--
Aaron W Morris (decep)
-- 
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

Reply via email to