• Subject: RE: More automated backup
  • From: Bob Crothers <bcrothers@xxxxxxxxxxxxx>
  • Date: Wed, 31 Dec 1997 08:28:31 -0500

Loyd,

First, instead of setting up a list of libraries to backup, you 
would be much better off to set up a list of librarys NOT to 
backup.  Most times when a library gets created, programmers 
don't think "should this be backed up".  So these libraries will 
be saved.  Then when you go over a single tape, operations will 
say "why".  Then somebody will look and determine that library 
BOBSJUNK doesn't need backing up.

This is a much safer approach.

BUT, it still does not eliminate the need for a FULL AND 
COMPLETE backup!  At minimum a SAVLIB *NONSYS but better would 
be option 11 from the backup menu.

Another thing to consider with your backups is the KISS 
principle: Keep It Simple Stupid!  You do not want your backups 
complicated.  Mainly because you are going to find out that they 
are lacking at the worst possible moment.  Probably 4am after 
your system has been down for 12 hours from a fatal DASD 
failure.  Or a bad System Install, or something like that. 
 Bottom line being that your life is already miserable..you 
don't want to find out then that your backups are also 
miserable!

On to your questions....How do you know QINTER has ended?  There 
are several techniques that could be used such as receiving 
messages from QSYSOPR for the "subsystem QINTER ended message" 
and others.  These might be a tad better, but I prefer the 
"brute force" approach as follows:

ENDAGIN:
        ENDSBS QINTER *IMMED
        MONMSG CPFxxxx EXEC(QINTERDOWN) /* CPFxxxx is the Subsystem not 
active msg */
        DLYJOB 600      /* wait 10 minutes */
        GOTO ENDAGIN

QINTERDOWN:
        /* QINTER is down, continue with processing */

Substitute CPFxxxx with the message ID for the "Subsystem not 
active" message you get when attempting to end a subsystem that 
is not active.  I'd tell you what it is, but I am at home and do 
not have access to my /400 right now.  The easy way to find this 
message is to just create it by doing an ENDSBS XXXXX.  This 
will cause the message.  But your cursor on the message and 
press F1.  The message ID will be in the upper left (I believe) 
corner.

Re your 2nd question on MONMSG confusing you.  No offence 
intended, but if you are fairly new to CL programs as this 
question suggests, it might not be a good idea to be learning 
with something as critical to your operation as your backups. 
 Remember, Backups are your Insurance policy.  And the only time 
you will use that insurance is when LIFE SUCKS ALREADY!  That is 
not when you want to find your policy sucks also!  And if you 
spend enough time in this business, at some point you will have 
to use your backups!  It might be a DASD failure, a Run Amuck 
application, natural disaster, etc.  But you will use them.

If you still decide to proceed, do NOT use a global MONMSG 
CPF0000 (which would trap ALL errors and just continue on.  This 
is the worst possible thing.  Your job will always finish, 
system will always be available, but your backup may be no good. 
 AND YOU WONT KNOW IT!

Only monitor for things that you are prepared to handle!  Such 
as "No Tape in the tape drive" or "Media Error" or "File in 
Use".  In which case you should probably send a message to 
QSYSOPR, yourself, and anybody else in MIS you can think of...to 
make sure somebody knows something is wrong.

Remember, leave the gambling to the casino floor.  The data 
center is NOT the place for making bets!

Regards,
Bob Crothers
Cornerstone Communications


-----Original Message-----
From:   Loyd Goodbar [SMTP:loydg@vegas21.com]
Sent:   Tuesday, December 30, 1997 11:18 PM
To:     MIDRANGE-L@midrange.com
Subject:        More automated backup

Recent events have prompted me in looking beyond the AS/400's 
built-in
backup facilities.

I currently have a skeleton for my own custom backup program -
hopefully a CL-only solution. I'm reading a list of libraries to 
save
from a file, ending SBS QINTER so no one can sign on, running 
the
SAVLIB command for my libraries, and then restarting QINTER.

I do have a few questions:

1. After ENDSBS QINTER OPTION(*IMMED), I am issuing a DLYJOB 600 
to
wait for 10 minutes. How do I know if and when QINTER ends?

2. What kind of error trapping should I use? I know a bit about 
CL but
the MONMSG stuff is a little confusing at times.

Thanks for any info,
 - lg -

Loyd Goodbar
MIS manager
Las Vegas Casino
Greenville, Mississippi
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to 
"MIDRANGE-L@midrange.com".
| To unsubscribe from this list send email to 
MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: 
david@midrange.com
+---
uucp

+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to "MIDRANGE-L@midrange.com".
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---


This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2019 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available here. If you have questions about this, please contact [javascript protected email address].