App Connect

App Connect

Join this online user group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only

Business Monitoring Events in App Connect Enterprise

By P VENKATA SUBBA REDDY posted Thu March 27, 2025 06:59 AM

  

Co-author : Deepa S

1. Created an integration node "btmds" and 2 integration servers - "server1" for deploying the applications and "server_for_recording" for recording the events.

2. Created a simple flow containing an HTTPInput => Compute => HTTPReply nodes and configured the monitoring events in the HTTPInput node along with assigning the correlation values as shown below:

3. Created a message model which contains an XML schema for the application. Monitoring events can be formatted in XML or JSON format. By default, event XML in IBM App Connect Enterprise conforms to the monitoring event schema MonitoringEventV2.xsd. Alternatively, you can configure monitoring events to be formatted in JSON format, as defined by the MonitoringEventV1.json schema.

More information regrading this can be found here

In our case we are using the eventFormat as MonitoringEventV2 so we followed the below steps to create the MonitoringEventV2.xsd schema which describes the structure of the events to be recorded.

To access the schema from the IBM App Connect Enterprise Toolkit, Right click on the application > New > Message Model. Select IBM supplied . Click Next, then select Create an XML file by importing an IBM supplied definition . Click Next, and then select IBM App Connect Enterprise Monitoring Event and click finish.

4.Updated the node.conf.yaml file in the overrides directory with the below configurations:

---
brokerDefaultCCSID: '5348'
brokerUUID: 'b58a6338-3e03-4d5c-a88b-9e6422683dc1'
defaultQueueManager: 'ACEQM'
MQTTServer: 
 port: 11908
NodeHttpListener: 
 startListener: false
 HTTPConnector: 
  ListenerPort: 7080
RestAdminListener: 
 port: 4439

Monitoring:
 MessageFlow:
  publicationOn: 'active'      # choose 1 of : active|inactive, default is inactive
                   # Ensure Events.BusinessEvents.MQ|MQTT is set
  eventFormat: 'MonitoringEventV2' # choose 1 of : MonitoringEventV2|WMB

Events:
 BusinessEvents: # Business monitoring events
  MQ:
   #policy: ''        # Specify a policy in the form {policy project}:policy if not using 'defaultQueueManager'
   enabled: true       # Set true or false, default is false
   format: ''        # Set string or none
   outputFormat: 'xml'    # Set to xml or json, default is xml    
   publishRetryInterval: 0  # Set the retry interval (in milliseconds), to pause all publications and retry when publication failures are causing serious delay to the transaction.

5.Updated the server.conf.yaml file for the server_for_recording integration server in the overrides folder with the below configurations:

RecordReplay: 
 recordReplayEnabled: 'true'
 Stores: 
  BTMDataStore: 
   backoutQueue: 'SYSTEM.BROKER.DC.BACKOUT'
   commitCount: 10
   commitIntervalSecs: 5
   dataSource: 'RECORD'
   queue: 'SYSTEM.BROKER.DC.RECORD'
   schema: 'ADMINISTRATOR'
   storeMode: 'all'
   threadPoolSize: 10
   useCoordinatedTransaction: false

6.Created the database and tables by running the following sql files

db2 -tvf DataCaptureSchema_V2.sql
db2 -tvf BusinessCaptureSchema_V2.sql
  • Locate the script for your operating system:
    • Windows: install_dir\server\ddl\oracle\DataCaptureSchema_V2.sql
    • Linux® or UNIX: install_dir/server/ddl/oracle/DataCaptureSchema_V2.sql
    install_dir is the location of your IBM App Connect Enterprise installation.

7. Created the necessary system queues

8. Created the Business Transaction definition by selecting the server_for_recoding integration server in the WEB UI and also created the corresponding events inside the definition by selecting the integration server server1 for which we have configured the monitoring events in the message flow.

9. Click on start monitoring after creating the Business Transaction Definition and events.

10. After completing the above steps the server.conf.yaml file for the integration server server_for_recording will look like below:

BusinessTransactionDefinitions: 
 Order_Item: 
  enabled: true
  policy: '{Order_Item_Policy_Project}:Order_Item_Policy'
  store: 'BTMDataStore'
RecordReplay: 
 recordReplayEnabled: 'true'
 Stores: 
  BTMDataStore: 
   backoutQueue: 'SYSTEM.BROKER.DC.BACKOUT'
   commitCount: 10
   commitIntervalSecs: 5
   dataSource: 'RECORD'
   queue: 'SYSTEM.BROKER.DC.RECORD'
   schema: 'ADMINISTRATOR'
   storeMode: 'all'
   threadPoolSize: 10
   useCoordinatedTransaction: false

11.Now deploy the message flow to integration server server1 and send the messages

12.Open the WEBUI and you will be able to see the events as shown below under the monitor tab:

0 comments
16 views

Permalink