Solace Clients Test
A Message VPN is a managed object on a PubSub+ event broker that allows for the segregation of topic space and clients. Message VPNs also group clients connecting to a network of event brokers, such that messages published within a particular group are only visible to that group's clients. Message VPNs can define which clients can receive messages from which publishers. Clients in different Message VPNs can subscribe to identical topics, and clients in different Message VPNs can publish messages to topics that match those client subscriptions. However, based on Message VPN membership, only clients connected to the same Message VPN as a particular publisher receive messages from that publisher. When a client sends its initial login connection request to an event broker, the client typically includes a Message VPN name parameter. The event broker then verifies that for the specified Message VPN the client username has been configured and is authorized to connect.
If the connection to a client is not established or if the clients are overloaded with message traffic or if the client encounters multiple errors while accessing the Message VPN of the target Solace PubSub+ Event Broker, then, the clients may encounter significant time delays. To avoid such time delays and to ensure that the clients process the messages at a faster pace, it is essential to keep track on the clients connecting to the Message VPNs of the target Solace PubSub+ Event Broker. The Solace Clients test helps administrators in this regard!
This test auto-discovers the clients connecting to the Message VPN of the target Solace Pub+ Event Broker and for each client, this test reports the connection state, count of subscriptions and the uptime. Using this test, administrators can determine the clients that sent maximum number of incoming/outgoing messages, the clients that sent/received maximum data messages and control messages, etc. This test also helps administrators in analyzing the message processing ability of the clients. This way, the test provides near-accurate indicators of the client connection load on the Message VPNs.
Target of the test : A Solace PubSub+ Event Broker
Agent deploying the test : A remote agent
Outputs of the test : One set of results for each Virtual Router:Message VPN:client configured on the target Solace PubSub+ Event Broker being monitored
Parameter | Description |
---|---|
Test Period |
How often should the test be executed. |
Host |
The IP address of the target host for which this test is to be configured. |
Port |
Refers to the port at which the Solace PubSub+ Event Broker listens to. |
UserName and Password |
By default, the eG agent executes SEMP ( Solace Element Management Protocol) APIs on the target broker to collect the required metrics. For the eG agent to execute the SEMP APIs, a special user with read only privilege is required. Specify the credentials of such a user in the UserName and Password text boxes. To know how to create such a user, refer to Creating a New User for Monitoring Solace PubSub+ Event Broker. |
Confirm Password |
Confirm the Password by retyping it in the Confirm Password text box. |
SSL |
By default, this flag is set to No indicating that the Solace PubSub+ Event Broker is not SSL-enabled by default. Set this flag to Yes if the Solace PubSub+ Event Broker is SSL-enabled. |
Detailed Diagnosis |
To make diagnosis more efficient and accurate, the eG Enterprise embeds an optional detailed diagnostic capability. With this capability, the eG agents can be configured to run detailed, more elaborate tests as and when specific problems are detected. To enable the detailed diagnosis capability of this test for a particular server, choose the On option. To disable the capability, click on the Off option. The option to selectively enable/disable the detailed diagnosis capability will be available only if the following conditions are fulfilled:
|
Measurement | Description | Measurement Unit | Interpretation | ||||||
---|---|---|---|---|---|---|---|---|---|
Subscriptions |
Indicates the number of subscriptions to this client. |
Number |
|
||||||
Slow subscriber? |
Indicates whether/not this client is a slow subscriber. |
|
The values reported by this measure and its numeric equivalents are mentioned in the table below:
Note: By default, this measure reports the Measure Values listed in the table above to indicate whether/not the client is a slow subscriber. The graph of this measure however, is represented using the numeric equivalents only i.e., 0 or 1. The detailed diagnosis of this measure lists the IP address of the client and the uptime of the client. |
||||||
Client ID |
Indicates the ID of this client. |
Number |
|
||||||
Total client messages traffic received |
Indicates the amount of data received by this client as messages during the last measurement period. |
MB |
Compare the value of these measures across clients to identify the client that received/sent maximum amount of data. |
||||||
Total client messages traffic sent |
Indicates the amount of data sent through this client as messages during the last measurement period. |
MB |
|||||||
Total client messages received |
Indicates the total number of messages received by this client during the last measurement period. |
Number |
Compare the value of these measures across clients to identify the client that received/sent maximum number of messages. |
||||||
Total client messages sent |
Indicates the total number of messages sent through this client during the last measurement period. |
Number |
|||||||
Current incoming rate |
Indicates the rate at which data (in terms of incoming messages) is currently received by this client. |
Mbps |
Compare the value of this measure across clients to identify the client that received maximum data in terms of incoming messages. |
||||||
Current incoming messages rate |
Indicates the rate at which incoming messages are currently received by this client. |
Messages/sec |
Compare the value of this measure across clients to identify the client that received maximum number of incoming messages per second. |
||||||
Current outgoing rate |
Indicates the rate at which data (in terms of outgoing messages) are currently sent through this client. |
Mbps |
Compare the value of this measure across clients to identify the client that sent maximum data in terms of outgoing messages. |
||||||
Current outgoing messages rate |
Indicates the rate at which outgoing messages are currently sent through this client. |
Messages/sec |
Compare the value of this measure across clients to identify the client that sent maximum number of outgoing messages per second. |
||||||
Incoming message discards |
Indicates the number of incoming messages that were discarded by this client during the last measurement period. |
Number |
Ideally, the value of this measure should be zero. Compare the value of this measure across clients to identify the client that discarded the maximum number of incoming messages. |
||||||
Outgoing message discards |
Indicates the number of outgoing messages that were discarded by this client during the last measurement period. |
Number |
Ideally, the value of this measure should be zero. Compare the value of this measure across clients to identify the client that discarded the maximum number of outgoing messages. |
||||||
State |
Indicates the current connection state of this client. |
|
The values reported by this measure and its numeric equivalents are mentioned in the table below:
Note: By default, this measure reports the Measure Values listed in the table above to indicate the current connection state of each client. The graph of this measure however, is represented using the numeric equivalents only i.e., 0 or 1. |
||||||
Uptime |
Indicates the uptime of this client since the last restart. |
|
Compare the value of this measure across clients to identify the client that is experiencing frequent shutdowns. |
||||||
Compressed |
Indicates whether/not this client is enabled with compression. |
|
The values reported by this measure and its numeric equivalents are mentioned in the table below:
Note: By default, this measure reports the Measure Values listed in the table above to indicate whether/not each client is enabled with compression. The graph of this measure however, is represented using the numeric equivalents only i.e., 0 or 1. |
||||||
TLS |
Indicates whether/not the connection of this client is through TLS protocol. |
|
The values reported by this measure and its numeric equivalents are mentioned in the table below:
Note: By default, this measure reports the Measure Values listed in the table above to indicate whether/not the connection of each client is through TLS protocol. The graph of this measure however, is represented using the numeric equivalents only i.e., 0 or 1. |
||||||
Send queue |
Indicates the number of bytes currently queued for this client in both the client’s egress queue and the TCP send queue. |
MB |
|
||||||
Receive queue |
Indicates the number of bytes that are currently in the receive queue of this client for the TCP connection. |
MB |
|
||||||
Smoothed round trip time |
Indicates the smoothed round trip time for the TCP connection of this client. |
Seconds |
A sudden/gradual increase in the value of this measure is an indication of network connectivity issues. This may be due to sudden network dip or the client reaching a sudden WiFi dead zone. |
||||||
Timed retransmits |
Indicates the number of TCP segments re-transmitted by this client due to timeout while awaiting an acknowledgment. |
Number |
|
||||||
Fast retransmits |
Indicates the number of TCP segments retransmitted by this client due to the receipt of duplicate acknowledgments. |
Number |
|
||||||
Received out of order |
Indicates the number of TCP segments received out of order by this client. |
Number |
|
||||||
Client control messages traffic received |
Indicates the number of bytes of client control messages that were received by this client during the last measurement period. |
MB |
Compare the value of this measure across clients to identify the client that sent/received maximum amount of bytes of client control messages.
|
||||||
Client control messages traffic sent |
Indicates the number of bytes of client control messages that were sent through this client during the last measurement period. |
MB |
|||||||
Client data messages traffic received |
Indicates the number of bytes of data messages that were received by this client during the last measurement period. |
MB |
Compare the value of this measure across clients to identify the client that sent/received maximum amount of bytes of data messages.
|
||||||
Client data messages traffic sent |
Indicates the number of bytes of data messages that were sent through this client during the last measurement period. |
MB |
|||||||
Client control messages received |
Indicates the number of client control messages that were received by this client during the last measurement period. |
Messages |
Compare the value of this measure across clients to identify the client that sent/received maximum number of client control messages.
|
||||||
Client control messages sent |
Indicates the number of client control messages that were sent through this client during the last measurement period. |
Messages |
|||||||
Client data messages received |
Indicates the number of data messages that were received by this client during the last measurement period. |
Messages |
Compare the value of this measure across clients to identify the client that sent/received maximum number of data messages.
|
||||||
Client data messages sent |
Indicates the number of data messages that were sent through this client during the last measurement period. |
Messages |
|||||||
Login messages received |
Indicates the total number of messages that were received from this client login during the last measurement period. |
Number |
|
||||||
Login messages sent |
Indicates the total number of messages that were sent from this client login during the last measurement period. |
Number |
|
||||||
Add subscription messages received |
Indicates the number of add subscription messages received by this client during the last measurement period. |
Number |
|
||||||
Add subscription messages sent |
Indicates the number of add subscription messages sent by this client during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client that sent the maximum number of add subscription messages. |
||||||
Remove subscription messages received |
Indicates the number of remove subscription messages received by this client during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client that received the maximum number of remove subscription messages. |
||||||
Remove subscription messages sent |
Indicates the number of remove subscription messages sent by this client during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client that sent the maximum number of remove subscription messages. |
||||||
Already exists messages sent |
Indicates the number of messages that were sent by this client for already existing subscriptions during the last measurement period. |
Number |
|
||||||
Not enough space messages sent |
Indicates the total number of occurrences noticed on this client where added subscriptions reached the not-enough-space threshold during the last measurement period. |
Number |
|
||||||
Max exceeded messages sent |
Indicates the total number of occurrences where added subscriptions exceeded the maximum threshold on this client during the last measurement period. |
Number |
|
||||||
Not found messages sent |
Indicates the total number of subscriptions that were not found in this client during the last measurement period. |
Number |
|
||||||
Parse error on add messages sent |
Indicates the total number of errors that occurred while parsing added subscriptions on this client during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client that encountered the maximum number of errors while parsing added subscriptions. |
||||||
Parse error on remove messages sent |
Indicates the total number of errors that occurred while parsing removed subscriptions from this client during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client that encountered the maximum number of errors while parsing removed subscriptions. |
||||||
Denied unsubscribe permissions |
Indicates the total number of topics that this client was not allowed to unsubscribe to by the Subscriber ACLs during the last measurement period. |
Number |
|
||||||
Unsubscribe clients not found |
Indicates the total number of occurrences where this client name was not found by the subscription manager during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client that could not be found by the subscription manager for the maximum number of times. |
||||||
Incoming compressed data |
Indicates the rate at which incoming data is compressed by this client during the last measurement period. |
Mbps |
When it comes to the Solace Message VPN client, the compression of incoming data depends on the specific configuration and settings in place. The Solace Message VPN supports various compression techniques to optimize data transfer and reduce bandwidth consumption. Solace provides built-in support for compression using the Zlib compression algorithm. By enabling compression on the VPN client, you can reduce the size of data being transmitted over the network, leading to potential performance improvements and bandwidth savings. It's important to note that enabling compression may incur additional processing overhead on the client side to compress and decompress the data. Therefore, it's advisable to perform proper testing and analysis to determine the impact of compression on your specific use case before enabling it in a production environment. |
||||||
Incoming discards due to message-spool congestion |
Indicates the number of guaranteed incoming messages that were discarded because of low-priority discard rules during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded due to low priority discard rules. |
||||||
Incoming discards due to message-promotion-congestion |
Indicates the number of incoming messages from this client that were discarded due to congestion from persisting DIRECT messages during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded due to congestion from persisting DIRECT messages. |
||||||
Incoming discards due to message-spool discards |
Indicates the number of incoming messages from this client that were discarded because of a message spool limit during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded as it crossed the message spool limit. |
||||||
Incoming discards due to too big messages |
Indicates the number of incoming messages from this client that were discarded the message was larger than allowed size during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded since message was larger than allowed size. |
||||||
Incoming discards due to no subscriptions match |
Indicates the number of incoming messages from this client that were discarded because the messages did not match any subscription during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded since the messages did not match any subscription. |
||||||
Incoming discards due to parse error |
Indicates the number of incoming messages from this client that were discarded because the messages could not be parsed during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded since the messages could not be parsed. |
||||||
Incoming discards due to publish topic ACL |
Indicates the number of incoming messages that were discarded because the publisher was restricted by an ACL rule during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded since publisher was restricted by an ACL rule. |
||||||
Incoming discards due to topic parse error |
Indicates the number of incoming messages from this client that were discarded because the topic of the messages could not be parsed during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded since topic of the messages could not be parsed. |
||||||
Incoming discards due to ttl exceeded |
Indicates the number of incoming messages from this client that were discarded because the Time-to-Live window for the messages expired during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of incoming messages were discarded since the Time-to-Live window for the messages expired. |
||||||
Outgoing compressed data |
Indicates the rate at which outgoing data from this client was compressed during the last measurement period. |
Mbps |
Compare the value of this measure across clients to identify the client that compressed the maximum amount of data per second. |
||||||
Outgoing discards due to client not connected |
Indicates the number of outgoing messages that were discarded due to this client not being connected during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded due to the client not being connected. |
||||||
Outgoing discards due to compression congestion |
Indicates the number of outgoing messages from this client that were discarded due to overflow of the compression buffer during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded due to overflow of the compression buffer. |
||||||
Outgoing discards due to message elided |
Indicates the number of outgoing messages from this client that were discarded due to client eliding rules during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded due to client eliding rules. |
||||||
Outgoing discards due to message promotion congestion |
Indicates the number of outgoing messages from this client that were discarded due to inability to promote the message to persistent during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded due to inability to promote the message to persistent. |
||||||
Outgoing discards due to message spool congestion |
Indicates the number of guaranteed outgoing messages from this client that were rejected to sender due to msg-spool issue on a queue with Reject-Msg-to-Sender-on-Discard set during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded due to msg-spool issue on a queue with Reject-Msg-to-Sender-on-Discard set. |
||||||
Outgoing discards due to transmit congestion |
Indicates the number of outgoing messages from this client that were discarded due to overflow of the outbound message buffer during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded due to overflow of the outbound message buffer. |
||||||
Outgoing discards due to ttl exceeded |
Indicates the number of outgoing messages to this client that were discarded because the Time-to-Live window for the messages expired during the last measurement period. |
Number |
Compare the value of this measure across clients to identify the client from which maximum number of outgoing messages were discarded since the Time-to-Live window for the messages expired. |