This feature allows the user to identify which messages to be sent to a specific message queue when BRMS adds the message to the BRMS log (DSPLOGBRM).
To view the current settings:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*DISPLAY')
To set the message queue:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*MSGQ' 'libname' 'objname')
for example:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*MSGQ' 'QSYS' 'QSYSOPR')
To insert a rule:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' 'xxx' 'yyyy' 'zzzzzzz')
where:
xxx - position (1, 2, 35, etc) to insert the rule
yyyy - *INC include the message, *EXC exclude the message
zzzzzzz - message ID, generic message ID or *ALL to be included or excluded
To replace a rule:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*REPLACE' 'xxx' 'yyyy' 'zzzzzzz')
where:
xxx - position (1, 2, 35, etc) to insert the rule
yyyy - *INC include the message, *EXC exclude the message
zzzzzzz - message ID, generic message ID or *ALL to be included or excluded
To remove a rule:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*REMOVE' 'xxx')
where:
xxx - position (1, 2, 35, etc) to insert the rule
To clear all rules:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*CLEAR')
Rules are processed in order. Messages being sent to the BRMS log are compared against each rule, and a determination is made whether to send the message to the external message queue.
For example:
...
Examples
Example 1 - Send all BRM messages except BRM1097,and all CPI messages except CPI0307
...
to message queue QSYS/QSYSOPR
Use the following set of commands:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*MSGQ' 'QSYS' 'QSYSOPR')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '1' 'INC' 'BRM')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '2' '*EXC' 'BRM1097')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '3' 'INC' 'CPI')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '4' '*EXC' 'CPI0307')
Use the view command to verify the setup:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*DISPLAY')
Example 1 Output:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*DISPLAY')
MESSAGE QUEUE: QSYS/QSYSOPR.
1 *INC BRM*.
2 *EXC BRM1097.
3 *INC CPI*.
4 *EXC CPI0307.
...
Example 2 - Send all BRM messages except BRM1097, all CPI messages except CPI0307 and all other messages
...
to message queue QSYS/QSYSOPR
Use the following set of commands:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*MSGQ' 'QSYS' 'QSYSOPR')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '1' 'INC' 'BRM')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '2' '*EXC' 'BRM1097')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '3' 'INC' 'CPI')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '4' '*EXC' 'CPI0307')
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*INSERT' '5' '*INC' '*ALL')
Use the view command to verify the setup:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*DISPLAY')
Example 2 Output:
CALL QBRM/Q1AOLD PARM('LOGMSGEXT ' '*DISPLAY')
MESSAGE QUEUE: QSYS/QSYSOPR.
1 *INC BRM*.
2 *EXC BRM1097.
3 *INC CPI*.
4 *EXC CPI0307.
5 *INC *ALL
NotesNOTES:
In releases IBM i 6.1 and earlier, the following PTFs or their superseding PTFs are required:
...
-6.1 SI33975
...
-v5r4m0 SI33974
Generic rules can be created. For example, BRM*, *ALL, CPF9* etc are all valid generic rules.
Anything after the '*' is ignored, i.e. CP*1000 is the same as CP*
All messages sent to the specified message queue will be sent as *INFO messages.
If the specified message queue is being saved while BRMS is attempting to send a message to it, the backup may fail.
User profile QBRMS must have authority to send messages to the specified message queue
Messages logged in the additional message queue will be sent from program Q1ARALG when using this method.
WRKPCYBRM *SYS Option 6, to change notification controls, can also be used to send DSPLOGBRM messages of or exceeding the specific message severity to a specific message queue. If this message queue is the same as the additional message queue, duplicate messages may appear in the message queue. Messages logged in the message queue for meeting the notification message severity are sent from program Q1ACALG.