edoates
06-10-2006, 05:09 PM
I have the following lines in a SuperDuper backup scripts, but when I got an I/O error (a legitimate one, unfortunately), the "onError" condition was not activated. I use the script to automate nightly backups, and create a text file with either a "succeeded" or "failed" line, and use that to alert me to look at the log file. Since the "onError" was not activated, I didn't discover the error for a new days.
The script appears to "quit" normally.
Are all errors supposed to be caught by the "onError" condition? I'm runnint the latest version (2.1.1 V78).
The script segment:
tell application "SuperDuper!"
try
--Wait until SuperDuper! is idle before loading and running the desired session
repeat while status is not idle
--Sleep # seconds is the best way to "wait" without using the CPU
tell application "System Events" to do shell script "sleep 5"
end repeat
if status is idle then
--Specify the saved settings as either an absolute path or just the name
run using settings "Backup Eds Office" without user interaction
end if
--Wait until the session is done
repeat while status is running
--Sleep # seconds is the best way to "wait" without using the CPU
tell application "System Events" to do shell script "sleep 5"
end repeat
on error errMsg
display dialog errMsg & " See section 12 of the User's Guide for help with this script."
set message_text to "echo " & (return) & (current date) & ¬
": Backup Eds Office ERROR." & (return) & " See SUPERDUPER LOG." & (return) & (return) & ¬
" >>/users/edoates/desktop/backup_log.txt"
end try
--Once done, tell SuperDuper! to eject Eds Office Backup and quit
quit
Ed Oates
The script appears to "quit" normally.
Are all errors supposed to be caught by the "onError" condition? I'm runnint the latest version (2.1.1 V78).
The script segment:
tell application "SuperDuper!"
try
--Wait until SuperDuper! is idle before loading and running the desired session
repeat while status is not idle
--Sleep # seconds is the best way to "wait" without using the CPU
tell application "System Events" to do shell script "sleep 5"
end repeat
if status is idle then
--Specify the saved settings as either an absolute path or just the name
run using settings "Backup Eds Office" without user interaction
end if
--Wait until the session is done
repeat while status is running
--Sleep # seconds is the best way to "wait" without using the CPU
tell application "System Events" to do shell script "sleep 5"
end repeat
on error errMsg
display dialog errMsg & " See section 12 of the User's Guide for help with this script."
set message_text to "echo " & (return) & (current date) & ¬
": Backup Eds Office ERROR." & (return) & " See SUPERDUPER LOG." & (return) & (return) & ¬
" >>/users/edoates/desktop/backup_log.txt"
end try
--Once done, tell SuperDuper! to eject Eds Office Backup and quit
quit
Ed Oates