1) Verify that the following files are present in Install Enterprise Manager:
- <EM_Home>/product/enterprisemanager/plugins:
- – com.wily.powerpack.wmq.ddtv.typeview.jar
- – com.wily.powerpack.wmq.em.extension.jar
- <EM_Home>/config/modules:
- – WebSphereMQ_Client_And_Server.jar
- – WebsphereMQ_CPT_Health_And_Availability.jar
- – WMBManagementModule.jar
- In <EM_Home>/scripts:
- Broker-Agent-MQConnectionStatus.js
- Cluster-Agent-MQConnectionStatus.js
- Clusters-ChannelInstanceCounts.js
- Clusters-Channels.js
- Clusters-QueueManager.js
- Clusters-Queues.js
- Clusters-SingleClusterAggregation.js
- Clusters-TopLevelAggregation.js
- MBMQ-ChannelIndoubtAggregation.js
- MBMQ-ChannelInstanceCountsAggregation.js
- MBMQ-PagesetStatusAggregation.js
- MBMQ-QueueManagerAggregation.js
- MBMQ-QueuesAggregation.js
- MQ-ChannelIndoubtAggregation.js
- MQ-ChannelInstancesCountsAggregation.js
- MQ-ConnectionStatusAggregation.js
- MQ-HostNameAggregation.js
- MQ-PagesetStatusAggregation.js
- MQ-QueueManagerAggregation.js
- MQ-QueuesAggregation.js
- MQ-TopLevelAggregation.js
2) Verify that the following files are present in the Agent side:
- In <AppServer_Home>/wily/common:
- MQAgent.properties
- MQAppSupport.jar
- In <AppServer_Home>/wily/core/config:
- webspheremq.pbl
- webspheremq.pbd
- webspheremq_errors.pbd
- webspheremq_instancecounts.pbd
- webspheremq-extra.pbd
- In <AppServer_Home>/wily/core/ext/:
3) Locate the MQMonitor.properties file in the /MQMonitor/properties directory and configure the properties to meet your requirements.
- List all the queue managers you want to monitor.
- mq.monitor.list=<QM1@hostname>,<QM2@hostname>,<QM3@hostname>
- Provide the following information for all the queue managers listed:
- <QM1@host>.host
- <QM1@port>.port
- MQMonitor.properties file has been configured.
4) Configure the MQMonitor to monitor WebSphere Message Brokers.
- Go to the /MQMonitor/properties directory and open the MBMonitor.properties file with a text editor.
- configuration.manager.host
- Specifies the Configuration Manager Proxy (CMP) machine name or IP address.
- Example: configuration.manager.host=localhost
- configuration.manager.queue.manager
- Specifies the CMP Queue Manager name.
- Example: configuration.manager.queue.manager=WBRK6_DEFAULT_QUEUE_MANAGER
- configuration.manager.port
- Specifies the CMP Queue Manager port.
- Example: configuration.manager.port=2414
https://techdocs.broadcom.com/us/en/ca-enterprise-software/it-operations-management/application-performance-management/10-7/implementing-agents/java-agent/java-agent-extensions/ibm-websphere-mq/configure-mq-agent.htmlhttps://docops.ca.com/ca-apm/10-7/en/implementing-agents/ibm-websphere-mq/configure-mq-agent
5) Make sure that JMS queue is created properly:
https://techdocs.broadcom.com/us/en/ca-enterprise-software/it-operations-management/application-performance-management/10-7/implementing-agents/java-agent/java-agent-extensions/ibm-websphere-mq/configure-mq-agent.html#concept.dita_9ccb847adc8b0c958da769a5f9cbcc2914e34d1a_ConfiguretheMQMonitortomonitorWebSphereMessageBrokers
6) Make sure you set security requirements to monitor MQ object by following the respective release:
https://techdocs.broadcom.com/us/en/ca-enterprise-software/it-operations-management/application-performance-management/10-7/implementing-agents/java-agent/java-agent-extensions/ibm-websphere-mq/configure-mq-agent.html#concept.dita_9ccb847adc8b0c958da769a5f9cbcc2914e34d1a_SetSecurityRequirementstoMonitoranMQobject
Notes to pay attention:
a) Apply allmqi permission on Queue Manager using the command:
setmqaut -m <JMSQMName> -t qmgr -p <userName@DomainName> +allmqi
b) Apply allmqi permission on all JMS queues (all JMS queue names beginning with SYSTEM.JMS.*) using the command:
setmqaut -m <JMSQMName> -n <NameOfJMSQueue> -t queue -p <userName@DomainName> +allmqi
c) If the MQMonitor user is not the domain user, you must create the same user on the MQ server and give privileges to this user. In this case, give only the name of user without specifying the domain name. For example:
setmqaut -m <JMSQMName> -t qmgr -p <userName> +allmqi
d) After changing privileges on the Queue Manager, refresh the security or restart the Queue Manager and restart the MQMonitor.
Examples of configuration:
Create a new Queue Manager and one queue to receive messages of handshake:
- Host: ServerMQ
- Queue Manager: QMHandshake
- Port: 1414
- Queue: CA_WILY_HANDSHAKE
Configuring in MQ Java Connector Agent the MQAgent.properties file in all App Server that you communicate with the Queue Managers that you monitor:
- mq.crossprocesstracing.enabled = true
- mqmonitor.mqagent.id.list = 2
- handshake.mqagent.id = 1
- handshake.qm.host = ServerMQ (Your MQ server)
- handshake.qm.port = 1414
- handshake.queue= CA_WILY_HANDSHAKE
Configuring in MQ Monitor the MQMonitor.properties file for send messages of handshake.
- handshake.mqagent.id = 2 (modify the number for each MQ Monitor that you have)
- handshake.qm.host = ServerMQ (Your MQ server)
- handshake.qm.port = 1414
- handshake.queue= CA_WILY_HANDSHAKE
In Summary, here are the steps you must configure to have proper monitoring:
1 - MQ Monitor installed and monitoring the Queue Managers.
2 - Configure all the Queue Managers monitored with the permissions.
3 - Plugin MQ Java Connector Agent, installed in all App Server that you communicate with the Queue Managers that you monitor.
4 - Create a new Queue Manager and one queue to receive messages of handshake.
5 - Configuring in MQ Java Connector Agent the MQAgent.properties file in all App Server that you communicate with the Queue Managers that you monitor.
6 - Configuring in MQ Monitor the MQMonitor.properties file for send messages of handshake.
7 - Configure WebSphere MQ to Publish Events.