UM .NET API  6.16
com.latencybusters.lbm.LBMContextStatistics Class Reference

LBM Context Statistics. More...

Inheritance diagram for com.latencybusters.lbm.LBMContextStatistics:
com.latencybusters.lbm.LBMStatistics

Public Member Functions

 LBMContextStatistics ()
 Instantiate an empty object containing no statistics.
 
 LBMContextStatistics (LBMContext lbmctx)
 Instantiate an object containing the current set of statistics for a given context. More...
 
unsafe void refresh (LBMContext lbmctx)
 Refresh the current set of statistics using the given lbm context. More...
 
long topicResolutionDatagramsSent ()
 Number of topic resolution datagrams sent from this context. More...
 
long topicResolutionBytesSent ()
 Number of topic resolution datagram bytes sent. More...
 
long topicResolutionDatagramsReceived ()
 Number of topic resolution datagrams received by this context. More...
 
long topicResolutionBytesReceived ()
 Number of topic resolution datagram bytes received. More...
 
long topicResolutionDatagramsDroppedVersion ()
 Number of topic resolution datagrams discarded due to incorrect version. More...
 
long topicResolutionDatagramsDroppedType ()
 Number of topic resolution datagrams discarded due to incorrect type. More...
 
long topicResolutionDatagramsDroppedMalformed ()
 Number of topic resolution datagrams discarded due to being malformed. More...
 
long topicResolutionDatagramsSendFailed ()
 Number of topic resolution datagram sends that failed. More...
 
long topicResolutionSourceTopics ()
 Total number of topics in the source topic resolver cache. More...
 
long topicResolutionReceiverTopics ()
 Total number of topics in the receiver topic resolver cache. More...
 
long topicResolutionUnresolvedReceiverTopics ()
 Number of unresolved topics in the receiver topic resolver cache. More...
 
long lbtrmUnknownMessagesReceived ()
 Number of LBT-RM datagrams received not belonging to any transport session. More...
 
long lbtruUnknownMessagesReceived ()
 Number of LBT-RU datagrams received not belonging to any transport session. More...
 
long sendBlocked ()
 Number of incidents where a UM send call was blocked. More...
 
long sendWouldBlock ()
 Number of incidents where a UM send call returned EWOULDBLOCK. More...
 
long responseBlocked ()
 Number of incidents where a UM send response call was blocked. More...
 
long responseWouldBlock ()
 Number of incidents where a UM send response call returned EWOULDBLOCK. More...
 
long unicastImmediateMessageDuplicatesReceived ()
 Number of duplicate unicast immediate messages (UIMs) received and dropped. More...
 
long unicastImmediateMessageNoStreamReceived ()
 Number of unicast immediate messages (UIMs) received without stream information. More...
 
long fragmentsLost ()
 Number of fragments that have possibly been lost. This stat is incremented when a gap is detected by a receiver delivery controller. A delivery controller is created for every topic that has an interested receiver. This stat is not updated for gaps detected in responses, MIM transports, or UIMs. This stat will not be updated for hot-failover receivers with arrival-order delivery (i.e. option ordered_delivery set to 0). SMX receivers are excluded from this stat. THIS FIELD IS UNSUPPORTED. More...
 
long fragmentsUnrecoverablyLost ()
 Number of fragments that have been declared as unrecoverably lost. This stat is incremented when LBM_MSG_UNRECOVERABLE_LOSS or LBM_MSG_UNRECOVERABLE_LOSS_BURST is delivered to an UM receiver callback. In the case of burst loss, the stat is incremented by the number of fragments lost in the burst event. This stat will not be updated for hot-failover receivers with arrival-order delivery (i.e. option ordered_delivery set to 0). For hot-failover receivers, this stat may be updated while no actual LBM_MSG_UNRECOVERABLE_LOSS/LOSS_BURST messages are delivered to the application. In that case, one of the receivers underlying the hot-failover receivers had experienced unrecoverable loss, but the other underlying receiver was able to compensate. SMX receivers are excluded from this stat. THIS FIELD IS UNSUPPORTED. More...
 
long receiveCallbackServiceTimeMin ()
 Minimum time (in milliseconds) spent in message delivery callbacks associated with LBM receivers, wildcard receivers, hot-failover receivers. For the Java and .NET APIs, the overhead time spent in crossing the managed/jni boundaries is included. This stat is only collected if the context option receiver_callback_service_time_enabled is set to 1. SMX receivers are excluded from these stats. THIS FIELD IS UNSUPPORTED. More...
 
long receiveCallbackServiceTimeMax ()
 Maximum time (in milliseconds) spent in message delivery callbacks associated with LBM receivers, wildcard receivers, hot-failover receivers. For the Java and .NET APIs, the overhead time spent in crossing the managed/jni boundaries is included. This stat is only collected if the context option receiver_callback_service_time_enabled is set to 1. SMX receivers are excluded from these stats. THIS FIELD IS UNSUPPORTED. More...
 
long receiveCallbackServiceTimeMean ()
 Mean time (in milliseconds) spent in message delivery callbacks associated with LBM receivers, wildcard receivers, hot-failover receivers. This is an exponentially weighted moving average (weighted to more recent). For the Java and .NET APIs, the overhead time spent in crossing the managed/jni boundaries is included. This stat is only collected if the context option receiver_callback_service_time_enabled is set to 1. SMX receivers are excluded from these stats. THIS FIELD IS UNSUPPORTED. More...
 
void Dispose ()
 Free memory associated with this set of statistics.
 
void dispose ()
 Free memory associated with this set of statistics (same as Dispose()). More...
 
string getApplicationSourceId ()
 Retrieve the application source identifier associated with this set of statistics. More...
 
IPAddress getSender ()
 Retrieve the IP sender address associated with this set of statistics. More...
 
DateTime getTimestamp ()
 Retrieve the timestamp associated with this set of statistics. More...
 
long getProcessId ()
 Retrieve the sender process ID associated with this set of statistics. More...
 
long getContextId ()
 Retrieve the sender context ID associated with this set of statistics. More...
 
long getObjectId ()
 Retrieve the sender object ID associated with this set of statistics. More...
 
long getSource ()
 Retrieve the source attribute from the statistics attribute block associated with this set of statistics. More...
 

Detailed Description

LBM Context Statistics.

This object provides user monitoring with access to statistics of an application being monitored. The user monitoring code can be part of the application being monitored (i.e. the application can be "self-monitoring"), or the monitoring code can be remote, using the lbmmon infrastructure to deliver statistics. Note that when stats are sampled, the fields in the structure are not necessarily from the same instant in time. The structure might be updated concurrently with it being sampled, and while each structure field is atomically read, the field values can be skewed slightly across time.

Constructor & Destructor Documentation

com.latencybusters.lbm.LBMContextStatistics.LBMContextStatistics ( LBMContext  lbmctx)

Instantiate an object containing the current set of statistics for a given context.

Parameters
lbmctxLBMContext object to load statistics from.

Member Function Documentation

void com.latencybusters.lbm.LBMContextStatistics.dispose ( )

Free memory associated with this set of statistics (same as Dispose()).

See also
Dispose

Referenced by com.latencybusters.lbm.LBMObjectRecycler.close().

long com.latencybusters.lbm.LBMContextStatistics.fragmentsLost ( )

Number of fragments that have possibly been lost. This stat is incremented when a gap is detected by a receiver delivery controller. A delivery controller is created for every topic that has an interested receiver. This stat is not updated for gaps detected in responses, MIM transports, or UIMs. This stat will not be updated for hot-failover receivers with arrival-order delivery (i.e. option ordered_delivery set to 0). SMX receivers are excluded from this stat. THIS FIELD IS UNSUPPORTED.

Returns
Number of fragments possibly lost. THIS FIELD IS UNSUPPORTED.
long com.latencybusters.lbm.LBMContextStatistics.fragmentsUnrecoverablyLost ( )

Number of fragments that have been declared as unrecoverably lost. This stat is incremented when LBM_MSG_UNRECOVERABLE_LOSS or LBM_MSG_UNRECOVERABLE_LOSS_BURST is delivered to an UM receiver callback. In the case of burst loss, the stat is incremented by the number of fragments lost in the burst event. This stat will not be updated for hot-failover receivers with arrival-order delivery (i.e. option ordered_delivery set to 0). For hot-failover receivers, this stat may be updated while no actual LBM_MSG_UNRECOVERABLE_LOSS/LOSS_BURST messages are delivered to the application. In that case, one of the receivers underlying the hot-failover receivers had experienced unrecoverable loss, but the other underlying receiver was able to compensate. SMX receivers are excluded from this stat. THIS FIELD IS UNSUPPORTED.

Returns
Number of fragments unrecoverably lost. THIS FIELD IS UNSUPPORTED.
string com.latencybusters.lbm.LBMStatistics.getApplicationSourceId ( )
inherited

Retrieve the application source identifier associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value.

Returns
Application source ID
long com.latencybusters.lbm.LBMStatistics.getContextId ( )
inherited

Retrieve the sender context ID associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value.

Returns
Sender context ID
long com.latencybusters.lbm.LBMStatistics.getObjectId ( )
inherited

Retrieve the sender object ID associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value.

Returns
Sender object ID
long com.latencybusters.lbm.LBMStatistics.getProcessId ( )
inherited

Retrieve the sender process ID associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value.

Returns
Sender process ID
IPAddress com.latencybusters.lbm.LBMStatistics.getSender ( )
inherited

Retrieve the IP sender address associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value.

Returns
IPAddress object corresponding to the statistics' sender IP address
long com.latencybusters.lbm.LBMStatistics.getSource ( )
inherited

Retrieve the source attribute from the statistics attribute block associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value. Compare return value to LBMMonitor.ATTR_SOURCE_NORMAL and LBMMonitor.ATTR_SOURCE_IM.

Returns
Sender source flag
DateTime com.latencybusters.lbm.LBMStatistics.getTimestamp ( )
inherited

Retrieve the timestamp associated with this set of statistics.

This attribute is only set for remote statistics returned by the lbmmon infrastructure. For locally-gathered statistics, this method returns an undefined value.

Returns
DateTime object
long com.latencybusters.lbm.LBMContextStatistics.lbtrmUnknownMessagesReceived ( )

Number of LBT-RM datagrams received not belonging to any transport session.

Returns
Number of LBT-RM datagrams received not belonging to any transport session. Such occurrences should be investigated. These datagrams can be from a source in a different topic resolution domain targeting the same group (or IP) and port as a source of interest on this receiver's topic resolution domain. Among less likely possibilities would be an attempt to spoof UM messages.
long com.latencybusters.lbm.LBMContextStatistics.lbtruUnknownMessagesReceived ( )

Number of LBT-RU datagrams received not belonging to any transport session.

Returns
Number of LBT-RU datagrams received not belonging to any transport session. Such occurrences should be investigated. These datagrams can be from a source in a different topic resolution domain targeting the same group (or IP) and port as a source of interest on this receiver's topic resolution domain. Among less likely possibilities would be an attempt to spoof UM messages.
long com.latencybusters.lbm.LBMContextStatistics.receiveCallbackServiceTimeMax ( )

Maximum time (in milliseconds) spent in message delivery callbacks associated with LBM receivers, wildcard receivers, hot-failover receivers. For the Java and .NET APIs, the overhead time spent in crossing the managed/jni boundaries is included. This stat is only collected if the context option receiver_callback_service_time_enabled is set to 1. SMX receivers are excluded from these stats. THIS FIELD IS UNSUPPORTED.

Returns
Maximum message delivery service time. THIS FIELD IS UNSUPPORTED.
long com.latencybusters.lbm.LBMContextStatistics.receiveCallbackServiceTimeMean ( )

Mean time (in milliseconds) spent in message delivery callbacks associated with LBM receivers, wildcard receivers, hot-failover receivers. This is an exponentially weighted moving average (weighted to more recent). For the Java and .NET APIs, the overhead time spent in crossing the managed/jni boundaries is included. This stat is only collected if the context option receiver_callback_service_time_enabled is set to 1. SMX receivers are excluded from these stats. THIS FIELD IS UNSUPPORTED.

Returns
Mean message delivery service time. THIS FIELD IS UNSUPPORTED.
long com.latencybusters.lbm.LBMContextStatistics.receiveCallbackServiceTimeMin ( )

Minimum time (in milliseconds) spent in message delivery callbacks associated with LBM receivers, wildcard receivers, hot-failover receivers. For the Java and .NET APIs, the overhead time spent in crossing the managed/jni boundaries is included. This stat is only collected if the context option receiver_callback_service_time_enabled is set to 1. SMX receivers are excluded from these stats. THIS FIELD IS UNSUPPORTED.

Returns
Minimum message delivery service time. THIS FIELD IS UNSUPPORTED.
unsafe void com.latencybusters.lbm.LBMContextStatistics.refresh ( LBMContext  lbmctx)

Refresh the current set of statistics using the given lbm context.

Parameters
lbmctxLBMContext object
Exceptions
com.latencybusters.lbm.LBMExceptionInvalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

Referenced by com.latencybusters.lbm.LBMContext.getStatistics().

long com.latencybusters.lbm.LBMContextStatistics.responseBlocked ( )

Number of incidents where a UM send response call was blocked.

Returns
Number of incidents where a UM send response call was blocked. Unusually high counts could indicate performance degradation or I/O problems.
long com.latencybusters.lbm.LBMContextStatistics.responseWouldBlock ( )

Number of incidents where a UM send response call returned EWOULDBLOCK.

Returns
Number of incidents where a UM send response call returned EWOULDBLOCK. This is when a send response call set to be nonblocking encounters an error condition where it would otherwise be blocked. Under normal operating conditions, this count should be at or near 0.
long com.latencybusters.lbm.LBMContextStatistics.sendBlocked ( )

Number of incidents where a UM send call was blocked.

Returns
Number of incidents where a UM send call was blocked. Unusually high counts could indicate performance degradation or I/O problems.
long com.latencybusters.lbm.LBMContextStatistics.sendWouldBlock ( )

Number of incidents where a UM send call returned EWOULDBLOCK.

Returns
Number of incidents where a UM send call returned EWOULDBLOCK. This is when a send call set to be nonblocking encounters an error condition where it would otherwise be blocked. Under normal operating conditions, this count should be at or near 0.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionBytesReceived ( )

Number of topic resolution datagram bytes received.

Returns
Number of topic resolution datagram bytes received. This count is triggered under the same circumstances as datagrams received (above), but measures the total number of bytes for all datagrams received, including their headers.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionBytesSent ( )

Number of topic resolution datagram bytes sent.

Returns
Number of topic resolution datagram bytes sent. This count is triggered under the same circumstances as datagrams sent (above), but measures the total number of bytes for all datagrams sent, including their headers.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionDatagramsDroppedMalformed ( )

Number of topic resolution datagrams discarded due to being malformed.

Returns
Number of topic resolution datagrams discarded due to being malformed or corrupted.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionDatagramsDroppedType ( )

Number of topic resolution datagrams discarded due to incorrect type.

Returns
Number of topic resolution datagrams discarded due to incorrect type. The datagram's type field must match the expectations of the receiving context.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionDatagramsDroppedVersion ( )

Number of topic resolution datagrams discarded due to incorrect version.

Returns
Number of topic resolution datagrams discarded due to incorrect version. The datagram's version field must match the expectations of the receiving context.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionDatagramsReceived ( )

Number of topic resolution datagrams received by this context.

Returns
Number of topic resolution datagrams received by this context. Each datagram can contain one or more advertisements, queries, query responses, etc. from source or receiver objects. A faster accumulation of counts typically indicates more source, receiver, and/or context objects are being created.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionDatagramsSendFailed ( )

Number of topic resolution datagram sends that failed.

Returns
Number of topic resolution datagram sends that failed. This count should be at or at least near 0.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionDatagramsSent ( )

Number of topic resolution datagrams sent from this context.

Returns
Number of topic resolution datagrams sent from this context. Each datagram can contain one or more advertisements, queries, query responses, etc. from source or receiver objects. A faster accumulation of counts typically indicates more source, receiver, and/or context objects are being created.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionReceiverTopics ( )

Total number of topics in the receiver topic resolver cache.

Returns
Total number of topics in the receiver topic resolver cache (also referred to as the topic map). Inordinately large or growing values here may impact performance.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionSourceTopics ( )

Total number of topics in the source topic resolver cache.

Returns
Number of topics in the source topic resolver cache (also known as the topic map). Inordinately large or growing values here may impact performance.
long com.latencybusters.lbm.LBMContextStatistics.topicResolutionUnresolvedReceiverTopics ( )

Number of unresolved topics in the receiver topic resolver cache.

Returns
Number of unresolved topics in the receiver topic resolver cache (aka topic map). Inordinately large or growing values here may impact performance, though this count can be close to the total number of topics in the resolver cache under normal conditions.
long com.latencybusters.lbm.LBMContextStatistics.unicastImmediateMessageDuplicatesReceived ( )

Number of duplicate unicast immediate messages (UIMs) received and dropped.

Returns
Number of duplicate unicast immediate messages (UIMs) received and dropped.
long com.latencybusters.lbm.LBMContextStatistics.unicastImmediateMessageNoStreamReceived ( )

Number of unicast immediate messages (UIMs) received without stream information.

Returns
Number of unicast immediate messages (UIMs) received without stream information.

The documentation for this class was generated from the following file: