On Wednesday 05 May 2010, Ryan Joseph wrote:> Hello again,
Moin,
I'm writing a compley backup application with rsync in shell.
What I do to report errors: analyze the return code an internal table with
error specifications and reporting these in clear text. The code:
# a list with all rsync return codes
RSYNC_RCs="
0 Success
1 Syntax or usage error
2 Protocol incompatibility
3 Errors selecting input/output files, dirs
4 Requested action not supported: an attempt was made to manipulate 64-bit
files on a platform that cannot support them; or an option was specified that
is supported by the client and not by the server.
5 Error starting client-server protocol
6 Daemon unable to append to log-file
10 Error in socket I/O
11 Error in file I/O
12 Error in rsync protocol data stream
13 Errors with program diagnostics
14 Error in IPC code
20 Received SIGUSR1 or SIGINT
21 Some error returned by waitpid()
22 Error allocating core memory buffers
23 Partial transfer due to error
24 Partial transfer due to vanished source files
25 The --max-delete limit stopped deletions
30 Timeout in data send/receive
35 Timeout waiting for daemon connection
130 unexplained
"
rsync ..........
RC_sub=$?
RC_MEAN=`echo $RSYNC_RCs | grep -w $RC_sub`
logger "# rsync return code: $RC_sub ($RC_MEAN)"
CU> Is there a reliable way I can parse the errors or get a direct list that
> rsync produces while transferring? I'm writing a GUI and the only way
to
> get errors has been using regular expressions (all lines starting with
> "rsync:" for one) but it's not always reliable because I
don't know the
> format of all errors. Also some errors appear to not be fatal but I'm
not
> sure which these are and have to report back to the user all errors even if
> they are erroneous or harmless. Any ideas?
>
> Also along these lines is there a guide to the errors and what they mean
> exactly? I have users report errors like the one below but these make
> little sense to people (including me) unless they are familiar with the
> internal workings of rsync. It seems like there should be a more user
> friendly error reporting that real users can understand instead of
> programmers lingo like "rsync: recv_generator: failed to stat".
Is there an
> index of error ID's I could follow and a reliable format to parse? Like
the
> error below is 34 the error ID?
>
> rsync: recv_generator: failed to stat
> "/Volumes/Sicherung/!Datensicherung/Dateien/Texte und
> Worddateien/Schriftverkehr privat/EinladungEssen.DOC": Result too
large
> (34)
>
> Thanks for your ideas.
>
> Regards,
> Josef
--
|Michael Renner E-mail: michael.renner at gmx.de |
|D-81541 Munich Germany ICQ: #112280325 |
|Germany Don't drink as root! ESC:wq