...
Code Block | ||||
---|---|---|---|---|
| ||||
<apps> <app name="MyApp"> <captureMessageTypeStats>true</captureMessageTypeStats> <app> </apps <xvms> <xvm name="MyXVM"> <hearbeats enabled=true" interval="5"> <includeMessageTypeStats>true</includeMessageTypeStats> </heartbeats> </xvm> <xvms> |
Bus Connection Stats
The engine stats thread can also trace summary statistics for its message buseseach of the message bus connections managed by the engine. Each message bus connection is wrapped by a Bus Manager which handles bus connect and reconnect, and also provides transactional semantics around the bus by queuing up messages that will be sent as part of an engine transactionhandled by bus manager. The manager handles bus connection establishment, reconnect handling and message IO through the underlying connection. From the perspective on an engine bus manager, a bus connection is synonymous with an SMA bus connection. Each Bus Manager maintains statistics for across bus binding reconnects, allowing continuous stats across bus binding reconnects. The following sections break these statistics down in more detail.
...
Field | Description |
---|---|
NumMsgsRcvd | The number of message received by the bus. |
NumMsgsInBatches | The number of messages received by the bus that were part of a batch. |
NumMsgBatchesRcvd | The number of batch message received by the bus. |
NumPacketsRcvd | The number of raw packets received by the bus. |
NumMsgsEnqueued | The total number of batch messages enqueued for delivery by this bus. |
NumAcksSent | The total number of acknowledgment sent upstream for received messages by this bus. |
NumStabilityRcvd | The number of stability events (acks) received by this bus. |
NumStabilityBatchesRcvd | The number of batched stability events received by this bus. |
NumMsgsEnqueued | The total number of batch messages enqueued for delivery by this bus. |
NumMsgsSent | The total number of batch messages enqueued message that were actually sent by the bus. |
NumFlushesSync | The number of times this bus has been synchronously flushed. |
NumFlushesAsync | The number of times this bus has been asynchronously flushed. |
NumMsgsFlushedSync | The number of messages flushed by synchronous flushes. |
NumMsgsFlushedAsync | The number of messages flushed by asynchronous flushes. |
NumAsyncFlushCompletions | The number of asynchronous flushes for this that have completed. |
NumCommits | The number of transactions committed by the bus. |
NumRollbacks | The number transactions rolled back for the bus. |
Bus Disruptor Latencies
When a bus manager is configured for detached send (aka detached commit), a transaction's outbound messages are sent on the underlying SMA connection by the bus manager's I/O thread. The bus manager uses a disruptor to manage the handoff of messages to the manager's IO thread. The "Offer to Poll" latency measures the time the outbound messages are latent in the disruptor queue. High o2p latencies in a Bus Manager may indicate that messages are being released for send faster than we can actually send them through the underlying SMA connection.
Panel |
---|
Disruptor..{[<DisruptorNumUsed> of <DisruptorNumAvailable>] <DisruptorUsagePct>% (<DisruptorClaimStrategy>, <DisruptorWaitStrategy>)} |
When a Bus Manager is configured for detached send (aka detached commit), a transaction's outbound messages are dispatched on the Bus Manager's I/O thread. The "Offer to Poll" latency measures the time from when messages are released for delivery after being stabilized in the store until the detached bus manager picks them up for send. High o2p latencies in a Bus Manager may indicate that messages are being released for send faster than we can actually send them.
Bus Clients, Channels and Fails
After the disruptor statistics are counters indicating the number of connected clients, active channels and binding failures:
...