Thread Statistics Test

In the message flow execution environment, the message flow is thread-safe. You can run message flows concurrently on many operating system threads, without having to consider serialization issues.

Each input message that passes through a message flow for processing by a series of nodes executes on a single thread; it is processed only by the thread that received it. If you want to increase the throughput of a message flow, you can increase the number of threads that are assigned to that message flow. The memory requirements of an integration server are not unduly affected by running message flows on more operating system threads.

This test monitors each thread on the message flow and reports the time taken to process the incoming messages. Using this test, you can figure out how well the messages are processed and eventually identify the thread that is the slowest in processing the messages.

Target of the test : An IBM Integration Bus

Agent deploying the test : An internal/remote agent.

Outputs of the test : One set of results for each Execution Group:Message flow:Thread of the IBM Integration Bus that is to be monitored.

Configurable parameters for the test
Parameters Description

Test period

How often should the test be executed.

Host

The host for which the test is to be configured.

Port

The port on which the specified host listens.

JNDI Namespace Location

Indicate where the JNDI namespace has been created. For this, select one of the following options: File or LDAP. Select File if the JNDI namespace is created in the same location as that of the IIB server.

SSL

If you have chosen LDAP as the JNDI Namespace Location wherein the LDAP server communicating with the IIB server that is to be monitored is an SSL-enabled server, then set the SSL flag to Yes. By default, this flag is set to No.

User DN and Password

Here, provide the credentials of the Active Directory user created as explained in Creating a user in the Active Directory server, if the target IIB server is monitored in an agentless manner. If the IIB server is to be monitored in an agent based manner, specify none against these parameters.

Confirm Password

Confirm the Password by retyping it in this text box.

JNDI Provider URL

Specify the URL that was specified as the provider URL while creating the initial context. To know the Provider URL, refer to Agent based monitoring of the IIB server if you choose to monitor the target IIB server in an agent based manner and Agentless Monitoring of the IIB server if you chose to monitor the target IIB server in an agentless manner.

TopicConnectionFactory

Specify the name of the connection factory in this text box. If you have chosen to monitor the target IIB server in an agent-based manner, refer to Creating a Connection Factory and if you have chosen to monitor the target IIB server in an agentless manner, refer to Creating a Connection Factory.

JMS Resource Stats

Specify the name of the JMS destination that you have created for storing the Resource statistics. If you chose to monitor the target IIB server in an agentless manner, refer to Creating the JMS Destinations and if you choose to monitor the target IIB server in an agent based manner, refer to Agent based monitoring of the IIB server.

JMS Flow Stats

Specify the name of the JMS destination that you have created for storing the Message flow statistics. If you chose to monitor the target IIB server in an agentless manner, refer to Creating the JMS Destinations and if you choose to monitor the target IIB server in an agent based manner, refer to Agent based monitoring of the IIB server.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Average elapsed time

Indicates the average time elapsed to process input messages by this thread per second.

Messages/sec

A high value for this measure is a cause of concern as this may be due to the processing of messages that are currently in an infinite loop. Administrators may need to check for such messages so as to maintain the value of this measure within optimal limits.

Comparing the value of this measure across the threads helps you in identifying the thread that is taking too long to process the incoming messages.

Average CPU time

Indicates the average time taken by the CPU to process the input messages.

Secs

 

Input message rate

Indicates the time taken by this thread to process the input messages.

Secs

Comparing the value of this measure across the threads helps you in identifying the thread that is taking too long to process the incoming messages.

Message data rate

Indicates the rate at which bytes of the input messages are processed by this thread.

Bytes/sec

Comparing the value of this measure across the threads will help you identify the thread that is experiencing slowdowns in processing the messages.