|
What we do is, in our VARYON program that we run after an IPL, submit a
job for each message queue to be monitored. Basically it does a
LOOP:
/* +
| Receive the first new message that comes into message queue +
| Wait as long as necessary to receive the message. +
*/
RCVMSG MSGQ(&MSGQLIB/&MSGQNAME) WAIT(*MAX) RMV(*NO) +
KEYVAR(&MSGKEY) MSG(&MSGTXT) +
MSGID(&MSGID) SEV(&MSGSEV)
MONMSG MSGID(CPF0000) EXEC(DO)
CHGVAR VAR(&MSGTXT) VALUE('Unable to monitor' *BCAT +
&MSGQLIB *TCAT '/' *TCAT &MSGQNAME *BCAT +
'on' *BCAT &SYSTEM)
/* your logic here ... */
GOTO CMDLBL(END)
ENDDO
/* +
| Ignore the message if it has a severity level less than +
| what the user requested. +
*/
IF ( &MSGSEV < &SEV ) GOTO LOOP
/* +
| Check to see if the message is in the table file MSGEXC. If it +
| is then we will ignore this message. +
*/
CALL PGM(MSGEXCLUDE) PARM(&MSGID &IGNORE)
IF (&IGNORE = 'Y') GOTO LOOP
/* +
| Now you can use SNDEMAIL, or whatever, to send the message on. +
*/
Having shown all this, if you already have a package on your system, like
ROBOT, LXIPAG, Byteware, etc, then these can do all of this for you.
Rob Berendt
This mailing list archive is Copyright 1997-2026 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 on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.