Message Image  

App Connect

How to setup Record & Replay for multiple integration nodes in a WMQ cluster 

Tue July 14, 2020 09:34 AM

In IBM Integration Bus v9 and later versions, you can monitor events that are published by message flows. These events are recorded in a database. You can view and replay these events in the WebUI. This article explains how to setup Record & Replay for multiple integration nodes in a WMQ cluster.

To record events that are published by a message flow, the integration node where the message flow is running needs to be configured with the following configurable services:
1. One DataCaptureSource: this configurable service is used to define what needs to be recorded.
2. One DataCaptureStore: this configurable service is used to define where the recorded data is stored.

To configure IBM Integration Bus to record data, complete the steps detailed at http://www-01.ibm.com/support/knowledgecenter/SSMKHH_9.0.0/com.ibm.etools.mft.doc/bj23560_.htm The sequence of these steps is important. If they are not completed exactly as shown, then BIP Message BIP21943 is generated on startup.

However if your requirement is such that you need to monitor events from multiple integration nodes in a WMQ cluster, then you must set up a WQM cluster with a publish/subscribe topology. This topology offers the following advantages:
1. A new integration node that needs to be monitored can be added to the topology easily.
2. This topology overcomes the parent-child relationship in hierarchy topology when we have multiple brokers to be monitored against a single recording broker.

The setup for record/replay events from multiple integration nodes in a WQM cluster where there is only one integration node recording events for the cluster requires:
1. A single DataCaptureStore: : this configurable service is used to define what needs to be recorded
2. Multiple DataCaptureSource: One DataCaptureSource for each integration node that needs to be monitored.

This article gives detailed setup for enabling record and replay across multiple integration nodes using a cluster publish/subscribe relationship between the queue managers hosting the brokers.

Let’s say the monitoring events on integration node “MONBKR” on “MONQM” queue manager with execution group “moneg” are to be recorded and replayed using the integration node “RECBKR” on “RECQM” queue manager with execution group “receg”.
The monitoring events on MONBKR are published to root topic – $SYS/Broker/MONBKR/Monitoring/moneg. In order to record these events, this topic needs to be clustered.

1.Cluster setup on MONQM queue manager.
runmqsc MONQM
ALTER QMGR REPOS(RAR)
DEFINE CHANNEL(TO.MONQM) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CONNAME(‘localhost(9988)’) CLUSTER(RAR) DESCR(‘TCP Cluster-receiver channel for queue manager MONQM’)
Define and start listener on port 9988
DEFINE CHANNEL(TO.RECQM) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME(‘localhost(9987)’) CLUSTER(RAR) DESCR(‘TCP Cluster-sender channel from MONQM to repository at RECQM’)
DEFINE TOPIC(MONTOPIC) TOPICSTR($SYS/Broker/MONBKR/Monitoring/moneg) cluster(RAR)

2.Cluster setup on RECQM queue manager.
runmqsc RECQM
ALTER QMGR REPOS(RAR)
DEFINE CHANNEL(TO.RECQM) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CONNAME(‘localhost(9987)’) CLUSTER(RAR) DESCR(‘TCP Cluster-receiver channel for queue manager RECQM’)
start listener 9987
DEFINE CHANNEL(TO.MONQM) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME(‘localhost(9988)’) CLUSTER(RAR) DESCR(‘TCP Cluster-sender channel from RECQM to repository at MOMQM’)

Note I have defined both the queue managers as full repositories.

3.DataCaptureStore and DataCaptureSource setup on recording broker – RECBKR

mqsicreateconfigurableservice RECBKR -c DataCaptureStore -o RECDCS -n backoutQueue,commitCount,commitIntervalSecs,dataSourceName,egForRecord,egForView,queueName,schema,threadPoolSize,useCoordinatedTransaction -v “SYSTEM.BROKER.DC.BACKOUT”,”10″,”5″,”MBRECORD”,”receg”,”receg”,”SYSTEM.BROKER.DC.RECORD”,””,”10″,”false”

mqsicreateconfigurableservice RECBKR -c DataCaptureSource -o RECDCSource -n dataCaptureStore,topic -v “RECDCS”,”$SYS/Broker/MONBKR/Monitoring/moneg/#”

mqsisetdbparms RECBKR -n MBRECORD -u username -p password.

Now, the events from MONBKR can be viewed on WebUI of RECBKR.

Let’s add another broker “MONBKR2” with “moneg2” execution group on “MONQM2” queue manager to the cluster. The root topic that needs to be clustered here – $SYS/Broker/MONBKR2/Monitoring/moneg2.

4.Cluster setup on MONQM2 queue manager
DEFINE CHANNEL(TO.MONQM2) CHLTYPE(CLUSRCVR) TRPTYPE(TCP) CONNAME(‘localhost(9986)’) CLUSTER(RAR) DESCR(‘TCP Cluster-receiver channel for queue manager MONQM2’)
Define and start listener on port 9986
DEFINE CHANNEL(TO.RECQM) CHLTYPE(CLUSSDR) TRPTYPE(TCP) CONNAME(‘localhost(9987)’) CLUSTER(RAR) DESCR(‘TCP Cluster-sender channel from MONQM2 to repository at RECQM’)
DEFINE TOPIC (MONTOPIC2) TOPICSTR($SYS/Broker/MONBKR2/Monitoring/moneg2) CLUSTER(RAR)

5.DataCaptureSource setup on recording broker – RECBKR
mqsicreateconfigurableservice RECBKR -c DataCaptureSource -o RECDCSource2 -n dataCaptureStore,topic -v “RECDCS”,”$SYS/Broker/MONBKR2/Monitoring/moneg2/#”
The RECBKR can now record and replay events from MONBKR2.

Broker deployment

Cluster setup

A screen grab from WebUI with the above configuration

The commands and setup applies to IBM Integration Bus v9 and WMQ verison 7.5.

4 comments on"How to setup Record & Replay for multiple integration nodes in a WMQ cluster"

  1. soaApiDevArch June 05, 2017

    This is working in v9. But not in v10.
    In v9 we can have the IN in MQ expolorer where as in v10 it is not the case. Both are totally independent.

    https://www.ibm.com/support/knowledgecenter/SSMKHH_9.0.0/com.ibm.etools.mft.doc/bj23560_.htm

    What are the additional steps required to be performed ?.

    I see that subscription is not getting created in MQ explorer, when I setup through command lines in v10/

    Reply (Edit)
    • BenThompsonIBM June 07, 2017

      Hi soaApiDevArch, I’m not quite sure what you mean by “In v9 we can have the IN in MQ expolorer where as in v10 it is ont the case”. Do you mean that IIBv10 does not include the Integration Bus Explorer component (plugins to view IIB nodes in the MQ explorer) ? It is correct that in IIBv10 the administrative interface of choice is the IIB web UI. That shouldn’t influence getting Record & Replay to work with multiple IIB nodes based on a WMQ cluster. The MQ commands to setup clustering for the topics should be the same as described in the article. Has the cluster been created successfully?

      Reply (Edit)
      • soaApiDevArch June 19, 2017

        Sorry for the confusion caused.
        I mean I’ve ran the commands that were specified in:
        https://www.ibm.com/support/knowledgecenter/SSMKHH_10.0.0/com.ibm.etools.mft.doc/bj23560_.htm

        The subscription is never getting created and I cannot view the message in Data Capture store.

        I havent gone to i.e. extend this to WMQ clusters.

        Regards,
        Salla

        Reply (Edit)
        • soaApiDevArch June 19, 2017

          “The subscription is never getting created” –>In MQ explorer I can see that subscription is empty.

          Reply (Edit)

#IntegrationBus(IIB)
#RecordandReplay
#Integration
#multiple-integratopn-nodes
#multiple-integration-nodes
#WMQ-cluster