> For the complete documentation index, see [llms.txt](https://docs.xplatform.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xplatform.com/talon/reference/heartbeats.md).

# Heartbeats

Complete reference of all fields in an XVM heartbeat message.

For configuring heartbeat emission, see [XVM Heartbeats (Configuring)](/talon/developing-applications/configuring-the-runtime/monitoring/xvm-heartbeats.md). For understanding heartbeat output, see [XVM Heartbeats (Operating)](/talon/operating-applications/monitoring/xvm-heartbeats.md).

## Heartbeat Message (`SrvMonHeartbeatMessage`)

The top-level heartbeat message emitted by an XVM at regular intervals.

| Field                   | Type                                                                             | Description                                                                                    |
| ----------------------- | -------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| xvmHeader               | [SrvMonXvmHeader](#xvm-header-srvmonxvmheader)                                   | Header information about the source XVM.                                                       |
| collectionStartWallTime | Long                                                                             | The collection start time in milliseconds since the Epoch (e.g. `System.currentTimeMillis()`). |
| collectionStartTime     | Long                                                                             | The collection start time in nanoseconds (e.g. `System.nanoTime()`).                           |
| collectionEndTime       | Long                                                                             | The collection end time in nanoseconds (e.g. `System.nanoTime()`).                             |
| serverName              | String                                                                           | The name of the XVM.                                                                           |
| serverHostName          | String                                                                           | The XVM's hostname.                                                                            |
| serverPid               | String                                                                           | The XVM process ID.                                                                            |
| loadedTime              | Date                                                                             | The time at which the XVM loaded.                                                              |
| systemName              | String                                                                           | The name of the system to which the XVM belongs.                                               |
| systemVersion           | String                                                                           | The version of the system to which the XVM belongs.                                            |
| sysStats                | [SrvMonSysStats](#system-stats-srvmonsysstats)                                   | System-level stats such as CPU, disk, and memory usage.                                        |
| poolStats               | [SrvMonPoolStats\[\]](#pool-stats-srvmonpoolstats)                               | Process-wide object pooling stats.                                                             |
| appsInfo                | [SrvMonAppInfo\[\]](#application-info-srvmonappinfo)                             | Information about the apps configured for this XVM.                                            |
| appsStats               | [SrvMonAppStats\[\]](#application-stats-srvmonappstats)                          | Platform and user stats for loaded applications.                                               |
| adminClientStats        | [SrvMonAdminClientStats\[\]](#admin-client-stats-srvmonadminclientstats)         | Stats related to admin client connections.                                                     |
| heartbeatLoggerStats    | [SrvMonAppMessageLoggerStats](#message-logger-stats-srvmonappmessageloggerstats) | Logger stats for the XVM's binary heartbeat log (if enabled).                                  |

### XVM Header (`SrvMonXvmHeader`)

Header information supplied on monitoring events originating from an XVM.

| Field         | Type   | Description                |
| ------------- | ------ | -------------------------- |
| systemName    | String | The name of the system.    |
| systemVersion | String | The version of the system. |
| xvmName       | String | The name of the XVM.       |

### System Stats (`SrvMonSysStats`)

System-level stats related to the JVM and host on which the XVM is running.

| Field               | Type                                                       | Description                                         |
| ------------------- | ---------------------------------------------------------- | --------------------------------------------------- |
| availableProcessors | Integer                                                    | The number of processors available to the JVM.      |
| systemLoadAverage   | Double                                                     | The system load average for the last minute.        |
| processCpuLoad      | Double                                                     | Recent CPU usage by the process (0.0 to 1.0 scale). |
| systemCpuLoad       | Double                                                     | Recent CPU usage by the system (0.0 to 1.0 scale).  |
| memoryStats         | [SrvMonSysMemoryStats](#memory-stats-srvmonsysmemorystats) | Memory-related stats.                               |
| gcStats             | [SrvMonSysGCStats](#gc-stats-srvmonsysgcstats)             | GC-related stats.                                   |
| jitStats            | [SrvMonSysJITStats](#jit-stats-srvmonsysjitstats)          | JIT compiler stats.                                 |
| threadStats         | [SrvMonSysThreadStats](#thread-stats-srvmonsysthreadstats) | Thread-related stats.                               |
| diskStats           | [SrvMonSysDiskStats\[\]](#disk-stats-srvmonsysdiskstats)   | Disk-related stats.                                 |

#### Memory Stats (`SrvMonSysMemoryStats`)

Memory statistics. See [Memory Stats](/talon/operating-applications/monitoring/memory-statistics.md) for interpretation guidance.

| Field                      | Type                                                                                   | Description                                                                                                                     |
| -------------------------- | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| processRssBytes            | Long                                                                                   | The process RSS (Resident Set Size) in bytes — physical memory occupied including code, stack, heap, and memory-mapped regions. |
| committedVirtualMemorySize | Long                                                                                   | Virtual memory guaranteed to be available to the process (bytes).                                                               |
| totalPhysicalMemorySize    | Long                                                                                   | Total physical memory (bytes).                                                                                                  |
| freePhysicalMemorySize     | Long                                                                                   | Available physical memory (bytes). On Linux, reports `MemAvailable` which accounts for reclaimable cache and buffers.           |
| totalSwapSpaceSize         | Long                                                                                   | Total swap space (bytes).                                                                                                       |
| freeSwapSpaceSize          | Long                                                                                   | Free swap space (bytes).                                                                                                        |
| heapUsage                  | [SrvMonSysMemoryUsage](#memory-usage-srvmonsysmemoryusage)                             | Heap memory usage.                                                                                                              |
| nonHeapUsage               | [SrvMonSysMemoryUsage](#memory-usage-srvmonsysmemoryusage)                             | Non-heap memory usage.                                                                                                          |
| offHeapUsage               | [SrvMonSysMemoryOffHeapUsage](#off-heap-usage-srvmonsysmemoryoffheapusage)             | Off-heap memory usage.                                                                                                          |
| nativeCounters             | [SrvMonSysMemoryNativeCounters](#native-memory-counters-srvmonsysmemorynativecounters) | Native memory counters.                                                                                                         |
| iobufCounters              | [SrvMonSysMemoryIOBufCounters](#iobuffer-counters-srvmonsysmemoryiobufcounters)        | IOBuffer counters.                                                                                                              |

**Memory Usage (`SrvMonSysMemoryUsage`)**

Stats for a JVM memory region (heap or non-heap).

| Field     | Type | Description                                                      |
| --------- | ---- | ---------------------------------------------------------------- |
| init      | Long | Memory initially requested from the OS (bytes). -1 if undefined. |
| used      | Long | Amount of used memory (bytes).                                   |
| committed | Long | Memory committed for JVM use (bytes).                            |
| max       | Long | Maximum memory (bytes).                                          |

**Off-Heap Usage (`SrvMonSysMemoryOffHeapUsage`)**

Summary stats for off-heap memory managed by applications.

| Field      | Type | Description                                          |
| ---------- | ---- | ---------------------------------------------------- |
| usedTotal  | Long | Total off-heap memory in use (bytes).                |
| usedLive   | Long | Off-heap memory in live use by applications (bytes). |
| usedPooled | Long | Off-heap memory held in pools for reuse (bytes).     |

**Native Memory Counters (`SrvMonSysMemoryNativeCounters`)**

Counters for native memory operations.

| Field        | Type | Description                             |
| ------------ | ---- | --------------------------------------- |
| allocCount   | Long | Cumulative native memory allocations.   |
| allocBytes   | Long | Cumulative bytes allocated.             |
| reallocCount | Long | Cumulative native memory reallocations. |
| reallocBytes | Long | Cumulative bytes reallocated.           |
| freeCount    | Long | Cumulative native memory frees.         |
| freeBytes    | Long | Cumulative bytes freed.                 |

**IOBuffer Counters (`SrvMonSysMemoryIOBufCounters`)**

Counters for IOBuffer lifecycle management.

| Field                        | Type | Description                                                                   |
| ---------------------------- | ---- | ----------------------------------------------------------------------------- |
| directBufferAllocCount       | Long | Direct IOBuffer creations (new allocations, not from pool).                   |
| directBufferAllocBytes       | Long | Cumulative bytes from direct IOBuffer creations.                              |
| directBufferPoolAllocCount   | Long | Direct IOBuffers obtained from the pool (reused).                             |
| directBufferPoolAllocBytes   | Long | Cumulative bytes from pool allocations.                                       |
| directBufferGCDisposeCount   | Long | Direct IOBuffers disposed directly to the garbage collector.                  |
| directBufferGCDisposeBytes   | Long | Cumulative bytes disposed to the garbage collector.                           |
| directBufferPoolDisposeCount | Long | Direct IOBuffers returned to the pool for reuse.                              |
| directBufferPoolDisposeBytes | Long | Cumulative bytes returned to the pool.                                        |
| directBufferPoolLeakCount    | Long | Direct IOBuffers evicted from the pool and disposed to the garbage collector. |
| directBufferPoolLeakBytes    | Long | Cumulative bytes evicted from the pool.                                       |

#### GC Stats (`SrvMonSysGCStats`)

Garbage collection statistics.

| Field           | Type                                                                           | Description                                                                                                       |
| --------------- | ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
| collectorsStats | [SrvMonSysGCCollectorStats\[\]](#gc-collector-stats-srvmonsysgccollectorstats) | List of garbage collections. May include collections from previous intervals; use collectionCount to deduplicate. |

**GC Collector Stats (`SrvMonSysGCCollectorStats`)**

Stats for a single garbage collector.

| Field           | Type   | Description                                                                      |
| --------------- | ------ | -------------------------------------------------------------------------------- |
| collectorName   | String | The name of the collector.                                                       |
| collectionCount | Long   | Total collections that have occurred. -1 if undefined.                           |
| collectionTime  | Long   | Approximate accumulated collection elapsed time (milliseconds). -1 if undefined. |

#### JIT Stats (`SrvMonSysJITStats`)

JIT compiler statistics.

| Field                | Type   | Description                                              |
| -------------------- | ------ | -------------------------------------------------------- |
| name                 | String | The name of the JIT compiler in use.                     |
| totalCompilationTime | Long   | Cumulative time spent in JIT compilation (milliseconds). |

#### Thread Stats (`SrvMonSysThreadStats`)

Thread statistics.

| Field                 | Type                                                                                          | Description                      |
| --------------------- | --------------------------------------------------------------------------------------------- | -------------------------------- |
| threadCount           | Integer                                                                                       | Number of active threads.        |
| daemonThreadCount     | Integer                                                                                       | Number of active daemon threads. |
| peakThreadCount       | Integer                                                                                       | Peak number of threads observed. |
| individualThreadStats | [SrvMonSysIndividualThreadStats\[\]](#individual-thread-stats-srvmonsysindividualthreadstats) | Per-thread stats (if enabled).   |

**Individual Thread Stats (`SrvMonSysIndividualThreadStats`)**

Stats for an individual thread.

| Field       | Type   | Description                                                                                                                                                                                                                     |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id          | Long   | The thread's ID.                                                                                                                                                                                                                |
| name        | String | The thread's name (may be cached).                                                                                                                                                                                              |
| state       | String | The thread's state at the time of the heartbeat.                                                                                                                                                                                |
| cpuTime     | Long   | CPU time used by the thread (nanoseconds).                                                                                                                                                                                      |
| usrTime     | Long   | User time used by the thread (nanoseconds).                                                                                                                                                                                     |
| collectTime | Long   | Time just after CPU times were collected (nanoseconds). Use to calculate elapsed time between samples.                                                                                                                          |
| affinity    | String | Affinitization details (if affinitized).                                                                                                                                                                                        |
| waitTime    | Long   | Time spent waiting for events such as I/O spin loops or disruptor waits (nanoseconds). For busy-spinning threads, use to distinguish idle time from CPU time. Only reflects time upon exiting a wait — not while still waiting. |
| waitCount   | Long   | Number of times the thread entered a waiting state.                                                                                                                                                                             |

#### Disk Stats (`SrvMonSysDiskStats`)

Disk statistics.

| Field       | Type   | Description                                          |
| ----------- | ------ | ---------------------------------------------------- |
| rootPath    | String | The file system root path for the disk or partition. |
| totalSpace  | Long   | Size of the partition (bytes). 0 if not a partition. |
| usableSpace | Long   | Bytes available to the XVM.                          |
| freeSpace   | Long   | Unallocated bytes in the disk or partition.          |

### Pool Stats (`SrvMonPoolStats`)

Object pool statistics. Stats for a pool are only included in a heartbeat if there have been pool misses in the last collection interval.

| Field          | Type    | Description                                                                                                                 |
| -------------- | ------- | --------------------------------------------------------------------------------------------------------------------------- |
| key            | String  | The name of the pool.                                                                                                       |
| size           | Integer | Elements currently available in the pool. A value of 0 doesn't necessarily indicate an issue — elements may be checked out. |
| capacity       | Integer | Current number of slots to hold unused elements.                                                                            |
| preallocated   | Integer | Elements initially preallocated.                                                                                            |
| maxCapacity    | Integer | Maximum size of the pool.                                                                                                   |
| gets           | Long    | Times an element has been requested.                                                                                        |
| hits           | Long    | Times a request was satisfied without allocating.                                                                           |
| misses         | Long    | Times a request required a new allocation.                                                                                  |
| puts           | Long    | Times an element has been returned.                                                                                         |
| growths        | Long    | Times the pool capacity was increased.                                                                                      |
| evicts         | Long    | Elements evicted because the pool lacked capacity.                                                                          |
| detachedWashes | Long    | Elements initialized by the detached pool washer thread.                                                                    |

### Application Info (`SrvMonAppInfo`)

Information about an application configured in the XVM.

| Field            | Type                                                                     | Description                                                                 |
| ---------------- | ------------------------------------------------------------------------ | --------------------------------------------------------------------------- |
| name             | String                                                                   | The application's name.                                                     |
| version          | Integer                                                                  | The application version (if specified/known). Typically from `@AppVersion`. |
| jarVersionString | String                                                                   | The jar version of the application (if specified/known).                    |
| state            | [SrvMonAppState](#application-state)                                     | The application's current state.                                            |
| role             | [SrvMonAppRole](#application-ha-role)                                    | The application's current HA role.                                          |
| HAPolicy         | [SrvMonAppHAPolicy](#application-ha-policy)                              | The application's HA policy.                                                |
| loadedTime       | Date                                                                     | The time at which the application was last loaded.                          |
| clientsInfo      | SrvMonAppClientInfo\[]                                                   | Connected client info. Each entry has a name (String) field.                |
| busBindingsInfo  | [SrvMonAppBusBindingInfo\[\]](#bus-binding-info-srvmonappbusbindinginfo) | Message bus binding info.                                                   |
| flowsInfo        | SrvMonAppFlowInfo\[]                                                     | Active message flow info. Each entry has an id (Integer) field.             |

#### Bus Binding Info (`SrvMonAppBusBindingInfo`)

Information about a message bus binding.

| Field        | Type                                           | Description                                                      |
| ------------ | ---------------------------------------------- | ---------------------------------------------------------------- |
| name         | String                                         | The bus name.                                                    |
| state        | [SrvMonAppBusBindingState](#bus-binding-state) | The current bus state.                                           |
| channelsInfo | SrvMonAppBusChannelInfo\[]                     | Channel info. Each entry has name (String) and joined (Boolean). |

### Application Stats (`SrvMonAppStats`)

Groups together stats for an application.

| Field                 | Type                                                                                      | Description                                                      |
| --------------------- | ----------------------------------------------------------------------------------------- | ---------------------------------------------------------------- |
| appName               | String                                                                                    | The application name.                                            |
| engineStats           | [SrvMonAppEngineStats](#engine-stats-srvmonappenginestats)                                | The application's AEP engine stats.                              |
| eventMultiplexerStats | [SrvMonAppEventMultiplexerStats](#event-multiplexer-stats-srvmonappeventmultiplexerstats) | The application's input event multiplexer stats.                 |
| storeBindingStats     | [SrvMonAppStoreBindingStats](#store-binding-stats-srvmonappstorebindingstats)             | The application's replication and persistent disk storage stats. |
| busBindingStats       | [SrvMonAppBusBindingStats\[\]](#bus-binding-stats-srvmonappbusbindingstats)               | Messaging stats for each configured bus.                         |
| userStats             | [SrvMonUserStats](#user-stats-srvmonuserstats)                                            | The application's user-defined stats.                            |

#### Engine Stats (`SrvMonAppEngineStats`)

AEP engine statistics. See [Engine Stats](/talon/operating-applications/monitoring/engine-statistics.md) for interpretation guidance.

| Field                          | Type                                                                             | Description                                                                                                                                               |
| ------------------------------ | -------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| numFlows                       | Integer                                                                          | Number of active flows.                                                                                                                                   |
| numMsgsRcvdBestEffort          | Long                                                                             | Best-effort messages received.                                                                                                                            |
| numMsgsRcvdGuaranteed          | Long                                                                             | Guaranteed messages received.                                                                                                                             |
| numDupMsgsRcvd                 | Long                                                                             | Duplicate messages received.                                                                                                                              |
| numMsgsSentBestEffort          | Long                                                                             | Best-effort messages sent.                                                                                                                                |
| numMsgsSentGuaranteed          | Long                                                                             | Guaranteed messages sent.                                                                                                                                 |
| numMsgsResent                  | Long                                                                             | Messages retransmitted.                                                                                                                                   |
| numMsgsSourced                 | Long                                                                             | Messages sourced (replicated, recovered from log, or injected). Total messages received = numMsgsRcvdBestEffort + numMsgsRcvdGuaranteed + numMsgsSourced. |
| numMsgsFiltered                | Long                                                                             | Messages filtered.                                                                                                                                        |
| numEventsRcvd                  | Long                                                                             | Events received by the engine.                                                                                                                            |
| numEventsProcessed             | Long                                                                             | Events processed by the engine.                                                                                                                           |
| numFlowEventsRcvd              | Long                                                                             | Flow-related events processed.                                                                                                                            |
| numFlowEventsProcSuccess       | Long                                                                             | Flow events successfully processed.                                                                                                                       |
| numFlowEventsProcFail          | Long                                                                             | Flow events unsuccessfully processed.                                                                                                                     |
| numFlowEventsProcComplete      | Long                                                                             | Flow events completely processed.                                                                                                                         |
| numTransactions                | Long                                                                             | Transactions created.                                                                                                                                     |
| numCommitsStarted              | Long                                                                             | Transaction commits started.                                                                                                                              |
| numCommitsCompleted            | Long                                                                             | Transaction commits completed.                                                                                                                            |
| numSendCommitsStarted          | Long                                                                             | Send (message bus) commits started.                                                                                                                       |
| numSendCommitsCompleted        | Long                                                                             | Send commits completed.                                                                                                                                   |
| sendCommitCompletionQueueSize  | Integer                                                                          | Send commits pending completion.                                                                                                                          |
| numStoreCommitsStarted         | Long                                                                             | Store commits started.                                                                                                                                    |
| numStoreCommitsCompleted       | Long                                                                             | Store commits completed.                                                                                                                                  |
| storeCommitCompletionQueueSize | Integer                                                                          | Store commits pending completion.                                                                                                                         |
| numRollbacks                   | Long                                                                             | Transactions rolled back.                                                                                                                                 |
| numPartialRollbacks            | Long                                                                             | Partial (savepoint) transaction rollbacks.                                                                                                                |
| outboundSno                    | Long                                                                             | Current outbound sequence number for doubt resolution and duplicate detection.                                                                            |
| outboundStableSno              | Long                                                                             | Stable outbound sequence number — messages acknowledged downstream that need not be retransmitted.                                                        |
| backupOutboundQueueSize        | Long                                                                             | Messages in the backup outbound queue (not yet stabilized, pending retransmission on failover).                                                           |
| backupOutboundLogQueueSize     | Long                                                                             | Messages in the backup outbound log queue (pending write to an outbound message logger).                                                                  |
| msgPreProcLatencies            | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `mpproc` — time spent by the engine dispatching the message to an application.                                                                            |
| msgProcessingLatencies         | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `mproc` — time in the application's EventHandler.                                                                                                         |
| msgFilteringLatencies          | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `mfilt` — time in message filter processing.                                                                                                              |
| msgSendLatencies               | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `msend` — time spent in AepEngine.sendMessage().                                                                                                          |
| msgSendCoreLatencies           | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `msendc` — time spent in AepEngine.sendMessageCore().                                                                                                     |
| commitStartLatencies           | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `cstart` — time from first message receipt to transaction commit.                                                                                         |
| commitPrologueLatencies        | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `cprolo` — time from commit start to first send or store commit.                                                                                          |
| commitSendLatencies            | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `csend` — time for send commits to complete (includes ack wait).                                                                                          |
| commitStoreLatencies           | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `cstore` — time for store commit to complete.                                                                                                             |
| commitTransitionLatencies      | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `ctrans` — time from first commit completion to start of next stage.                                                                                      |
| commitEpilogueLatencies        | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `cepilo` — time from last commit completion to commit finalization.                                                                                       |
| commitFullLatencies            | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `cfull` — time from first message receipt to full commit completion.                                                                                      |
| inOutLatencies                 | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `inout` — time from message receipt to transmission of last outbound message.                                                                             |
| inAckLatencies                 | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `inack` — time from message receipt to stabilization (and upstream ack for Guaranteed).                                                                   |
| transactionLeg1ProcessingTimes | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `tleg1` — first transaction processing leg: receipt to send/store commit submission.                                                                      |
| transactionLeg2ProcessingTimes | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `tleg2` — second leg: first commit completion to second commit submission.                                                                                |
| transactionLeg3ProcessingTimes | [SrvMonIntSeries](#int-series-srvmonintseries)                                   | `tleg3` — third leg: second commit completion to transaction finalization.                                                                                |
| inboundMessageLoggerStats      | [SrvMonAppMessageLoggerStats](#message-logger-stats-srvmonappmessageloggerstats) | Inbound message logger stats (when enabled).                                                                                                              |
| outboundMessageLoggerStats     | [SrvMonAppMessageLoggerStats](#message-logger-stats-srvmonappmessageloggerstats) | Outbound message logger stats (when enabled).                                                                                                             |
| perTransactionStatsLoggerStats | [SrvMonAppMessageLoggerStats](#message-logger-stats-srvmonappmessageloggerstats) | Per-transaction stats logger stats (when enabled).                                                                                                        |
| msgTypeStats                   | [SrvMonMsgTypeStats\[\]](#message-type-stats-srvmonmsgtypestats)                 | Per-message-type stats (when enabled and included in heartbeats). Only present for message types with activity in the collection interval.                |

{% hint style="info" %}
Transaction legs represent the portions of commit processing done on the AEP engine's thread. Their sum determines the maximum transactions per second the application can sustain.
{% endhint %}

**Message Type Stats (`SrvMonMsgTypeStats`)**

Per-message-type statistics, included when `captureMessageTypeStats` and `includeMessageTypeStats` are enabled.

| Field                     | Type                                           | Description                                         |
| ------------------------- | ---------------------------------------------- | --------------------------------------------------- |
| messageTypeName           | String                                         | The fully qualified name of the message type.       |
| messageFactoryId          | Short                                          | The factory ID for the message type.                |
| messageTypeId             | Short                                          | The message type ID within its factory.             |
| numMsgsRcvdBestEffort     | Long                                           | Best-effort messages received for this type.        |
| numMsgsRcvdGuaranteed     | Long                                           | Guaranteed messages received for this type.         |
| numDupMsgsRcvd            | Long                                           | Duplicate messages received for this type.          |
| numMsgsSentBestEffort     | Long                                           | Best-effort messages sent for this type.            |
| numMsgsSentGuaranteed     | Long                                           | Guaranteed messages sent for this type.             |
| numMsgsResent             | Long                                           | Messages retransmitted for this type.               |
| numMsgsSourced            | Long                                           | Messages sourced for this type.                     |
| numMsgsFiltered           | Long                                           | Messages filtered for this type.                    |
| msgProcessingLatencies    | [SrvMonIntSeries](#int-series-srvmonintseries) | `mproc` — handler processing latencies.             |
| msgFilteringLatencies     | [SrvMonIntSeries](#int-series-srvmonintseries) | `mfilt` — filter processing latencies.              |
| msgPreProcessingLatencies | [SrvMonIntSeries](#int-series-srvmonintseries) | `mpproc` — engine pre-processing latencies.         |
| msgCreateToOfferLatencies | [SrvMonIntSeries](#int-series-srvmonintseries) | `c2o` — create-to-offer latencies.                  |
| msgOfferToPollLatencies   | [SrvMonIntSeries](#int-series-srvmonintseries) | `o2p` — offer-to-poll (input queue time) latencies. |

#### Event Multiplexer Stats (`SrvMonAppEventMultiplexerStats`)

Stats for the engine's input event multiplexer. Events pass through two levels of queue: a per-thread feeder queue and the engine's input disruptor.

| Field             | Type                                                                                                           | Description                                   |
| ----------------- | -------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| lastDecongested   | Integer                                                                                                        | The last feeder queue decongested.            |
| maxConcurrency    | Integer                                                                                                        | Maximum number of feeder queues supported.    |
| scheduleQueueSize | Integer                                                                                                        | Number of scheduled events awaiting dispatch. |
| disruptorStats    | [SrvMonDisruptorStats](#disruptor-stats-srvmondisruptorstats)                                                  | Stats for the engine's input disruptor.       |
| feederQueueStats  | [SrvMonAppEventMultiplexerFeederQueueStats\[\]](#feeder-queue-stats-srvmonappeventmultiplexerfeederqueuestats) | Per-feeder-queue stats.                       |

**Feeder Queue Stats (`SrvMonAppEventMultiplexerFeederQueueStats`)**

Stats for an input multiplexer feeder queue.

| Field                | Type                                           | Description                                                |
| -------------------- | ---------------------------------------------- | ---------------------------------------------------------- |
| owner                | String                                         | The owner thread for the feeder queue (source of events).  |
| size                 | Integer                                        | Current number of events in the queue.                     |
| decongestCount       | Integer                                        | Times the draining thread has woken up to drain the queue. |
| offerToPollLatencies | [SrvMonIntSeries](#int-series-srvmonintseries) | Time elements spend in the feeder queue.                   |

#### Store Binding Stats (`SrvMonAppStoreBindingStats`)

Replication and persistence statistics. An application's store provides HA and fault tolerance via replication and persistence.

| Field                        | Type                                                                                         | Description                                                                          |
| ---------------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| role                         | [SrvMonAppStoreBindingRole](#store-binding-role)                                             | Current HA role for the store.                                                       |
| state                        | [SrvMonAppStoreBindingState](#store-binding-state)                                           | Current state of the store.                                                          |
| ICRRole                      | [SrvMonAppStoreICRRole](#icr-role)                                                           | Inter-cluster replication role.                                                      |
| size                         | Integer                                                                                      | Number of objects in the store.                                                      |
| dataSize                     | Long                                                                                         | Total size of serialized object data held by the store.                              |
| numCommitsSent               | Long                                                                                         | Committed transactions replicated by the store.                                      |
| numCommitEntriesSent         | Long                                                                                         | Committed entries replicated by the store.                                           |
| numCommitsReceived           | Long                                                                                         | Committed transactions replicated to this store.                                     |
| numCommitEntriesReceived     | Long                                                                                         | Committed entries replicated to this store.                                          |
| numCommitCompletionsSent     | Long                                                                                         | Commit acknowledgements sent to the leader.                                          |
| numCommitCompletionsReceived | Long                                                                                         | Commit acknowledgements received from followers.                                     |
| serializeLatencies           | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `s` — time serializing transaction entries for replication/persistence.              |
| serializeToWireLatencies     | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `s2w` — time from serialization to last entry written to the wire.                   |
| serializeToPersistLatencies  | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `s2p` — time from serialization to entries passed to the persister (not yet synced). |
| wireLatencies                | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `w` — round-trip wire time (primary: to ack receipt; backup: subject to clock skew). |
| wireToDeserializeLatencies   | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `w2d` — time from commit packet receipt to deserialization start (backup).           |
| deserializeLatencies         | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `d` — time spent deserializing transaction entries (backup).                         |
| persistLatencies             | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `per` — time spent persisting transaction entries to disk.                           |
| icrSendLatencies             | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `icr` — time spent sending entries through an ICR receiver.                          |
| indexLatencies               | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `idx` — store object indexing latencies (if enabled).                                |
| commitLatencies              | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `c` — commit latency from start to stabilization.                                    |
| commitQueueSize              | [SrvMonIntSeries](#int-series-srvmonintseries)                                               | `cqs` — number of entries committed per commit.                                      |
| persisterStats               | [SrvMonAppStoreBindingPersisterStats](#persister-stats-srvmonappstorebindingpersisterstats)  | Persister stats (when configured).                                                   |
| ICRSenderStats               | [SrvMonAppStoreBindingICRSenderStats](#icr-sender-stats-srvmonappstorebindingicrSenderstats) | ICR sender stats (when configured).                                                  |

**Persister Stats (`SrvMonAppStoreBindingPersisterStats`)**

Stats for a store's persister.

| Field              | Type                                                          | Description                                                       |
| ------------------ | ------------------------------------------------------------- | ----------------------------------------------------------------- |
| detachedPersist    | Boolean                                                       | Whether the persister is operating in detached mode.              |
| numPutsRecorded    | Long                                                          | Puts recorded.                                                    |
| numUpdatesRecorded | Long                                                          | Updates recorded.                                                 |
| numRemovesRecorded | Long                                                          | Removes recorded.                                                 |
| numSendsRecorded   | Long                                                          | Sends recorded.                                                   |
| numCommits         | Long                                                          | Commits recorded.                                                 |
| numForks           | Long                                                          | Forked packets persisted.                                         |
| fileSize           | Long                                                          | Actual size of the log file on disk (may be preallocated larger). |
| fileSizeUsed       | Long                                                          | Space used in the log file.                                       |
| disruptorStats     | [SrvMonDisruptorStats](#disruptor-stats-srvmondisruptorstats) | Disruptor stats when operating in detached mode.                  |

**ICR Sender Stats (`SrvMonAppStoreBindingICRSenderStats`)**

Stats for a store's inter-cluster replication sender.

| Field              | Type                                                          | Description                                           |
| ------------------ | ------------------------------------------------------------- | ----------------------------------------------------- |
| detachedSend       | Boolean                                                       | Whether the ICR sender is operating in detached mode. |
| numPutsRecorded    | Long                                                          | Puts recorded.                                        |
| numUpdatesRecorded | Long                                                          | Updates recorded.                                     |
| numRemovesRecorded | Long                                                          | Removes recorded.                                     |
| numSendsRecorded   | Long                                                          | Sends recorded.                                       |
| numCommits         | Long                                                          | Commits recorded.                                     |
| numForks           | Long                                                          | Forked packets persisted.                             |
| disruptorStats     | [SrvMonDisruptorStats](#disruptor-stats-srvmondisruptorstats) | Disruptor stats when operating in detached mode.      |

#### Bus Binding Stats (`SrvMonAppBusBindingStats`)

Statistics for a message bus binding.

| Field                         | Type                                                          | Description                                                                                     |
| ----------------------------- | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| busBindingName                | String                                                        | The name of the bus.                                                                            |
| internal                      | Boolean                                                       | Whether this is an internal bus.                                                                |
| detachedCommit                | Boolean                                                       | Whether the bus is operating in detached mode.                                                  |
| numMsgsRcvd                   | Long                                                          | Messages received.                                                                              |
| numMsgsInBatchesRcvd          | Long                                                          | Messages received that were part of a batch.                                                    |
| numMsgBatchesRcvd             | Long                                                          | Batch messages received.                                                                        |
| numMsgsEnqueued               | Long                                                          | Messages enqueued for delivery.                                                                 |
| numMsgsSent                   | Long                                                          | Messages actually sent.                                                                         |
| numAcksSent                   | Long                                                          | Inbound messages acknowledged.                                                                  |
| numStabilityRcvd              | Long                                                          | Stability events (acks) received.                                                               |
| numStabilityInBatchesRcvd     | Long                                                          | Stability events that were part of a batch.                                                     |
| numStabilityBatchesRcvd       | Long                                                          | Batched stability events received.                                                              |
| numPacketsRcvd                | Long                                                          | Raw packets received.                                                                           |
| numFlushesSync                | Long                                                          | Synchronous flushes.                                                                            |
| numMsgsFlushedSync            | Long                                                          | Messages flushed synchronously.                                                                 |
| numFlushesAsync               | Long                                                          | Asynchronous flushes.                                                                           |
| numAsyncFlushCompletions      | Long                                                          | Asynchronous flush completions.                                                                 |
| numMsgsFlushedAsync           | Long                                                          | Messages flushed asynchronously.                                                                |
| numCommits                    | Long                                                          | Transactions committed.                                                                         |
| numRollbacks                  | Long                                                          | Transactions rolled back.                                                                       |
| numPartialRollbacks           | Long                                                          | Partial (savepoint) transaction rollbacks.                                                      |
| numClients                    | Integer                                                       | Connected clients (if applicable).                                                              |
| numChannelsUp                 | Integer                                                       | Channels brought up.                                                                            |
| numBindingFailures            | Integer                                                       | Binding failures that have occurred.                                                            |
| createToSendLatencies         | [SrvMonIntSeries](#int-series-srvmonintseries)                | `c2o` — time from message creation to when send was called.                                     |
| sendToPollLatencies           | [SrvMonIntSeries](#int-series-srvmonintseries)                | `o2p` — time from send offer to pickup for send (detached mode).                                |
| sendToSerializeLatencies      | [SrvMonIntSeries](#int-series-srvmonintseries)                | `o2s` — time from send start to serialization (excludes o2p in detached mode).                  |
| serializeLatencies            | [SrvMonIntSeries](#int-series-srvmonintseries)                | `s` — time spent serializing the MessageView to transport encoding.                             |
| serializeToWireLatencies      | [SrvMonIntSeries](#int-series-srvmonintseries)                | `s2w` — time from post-serialization to just before wire write.                                 |
| wireSendLatencies             | [SrvMonIntSeries](#int-series-srvmonintseries)                | `ws` — time spent by the provider writing the message to the wire (includes flow control time). |
| wireLatencies                 | [SrvMonIntSeries](#int-series-srvmonintseries)                | `w` — time on the wire from sender write to receiver read (subject to clock skew across hosts). |
| wireToDeserializeLatencies    | [SrvMonIntSeries](#int-series-srvmonintseries)                | `w2d` — time from wire receipt to deserialization start.                                        |
| deserializeLatencies          | [SrvMonIntSeries](#int-series-srvmonintseries)                | `d` — time spent deserializing and wrapping in a MessageView.                                   |
| deserializeToReceiveLatencies | [SrvMonIntSeries](#int-series-srvmonintseries)                | `d2i` — time from deserialization to engine receipt (includes o2p of engine disruptor).         |
| originToReceiveLatencies      | [SrvMonIntSeries](#int-series-srvmonintseries)                | `o2i` — time from message creation to binding receipt.                                          |
| wireToWireLatencies           | [SrvMonIntSeries](#int-series-srvmonintseries)                | `w2w` — time from inbound wire receipt to outbound wire write.                                  |
| disruptorStats                | [SrvMonDisruptorStats](#disruptor-stats-srvmondisruptorstats) | Disruptor stats when operating in detached mode.                                                |

#### User Stats (`SrvMonUserStats`)

Application-defined statistics. See [Exposing Application Stats](/talon/developing-applications/authoring-user-code/monitoring/exposing-application-statistics.md).

| Field    | Type                                                             | Description                |
| -------- | ---------------------------------------------------------------- | -------------------------- |
| counters | [SrvMonUserCounterStat\[\]](#counter-stat-srvmonusercounterstat) | Application counter stats. |
| series   | [SrvMonUserSeriesStat\[\]](#series-stat-srvmonuserseriesstat)    | Application series stats.  |
| gauges   | [SrvMonUserGaugeStat\[\]](#gauge-stat-srvmonusergaugestat)       | Application gauge stats.   |

**Counter Stat (`SrvMonUserCounterStat`)**

A monotonically increasing counter. Sampled periodically, it can be used to derive a rate.

| Field | Type   | Description                |
| ----- | ------ | -------------------------- |
| name  | String | The name of the statistic. |
| count | Long   | The counter value.         |

**Series Stat (`SrvMonUserSeriesStat`)**

An application-defined series collection statistic.

| Field      | Type                                              | Description                                                        |
| ---------- | ------------------------------------------------- | ------------------------------------------------------------------ |
| name       | String                                            | The name of the statistic.                                         |
| seriesType | [SrvMonSeriesType](#series-type)                  | The data type of the series.                                       |
| intSeries  | [SrvMonIntSeries](#int-series-srvmonintseries)    | The collected data for an INT series. Set when seriesType is INT.  |
| longSeries | [SrvMonLongSeries](#long-series-srvmonlongseries) | The collected data for a LONG series. Set when seriesType is LONG. |

**Gauge Stat (`SrvMonUserGaugeStat`)**

A point-in-time value sampled at each statistics collection.

| Field        | Type                           | Description                                                               |
| ------------ | ------------------------------ | ------------------------------------------------------------------------- |
| name         | String                         | The name of the gauge statistic.                                          |
| guageType    | [SrvMonGaugeType](#gauge-type) | The data type of the gauge value. Determines which typed accessor to use. |
| booleanValue | Boolean                        | The value for a BOOLEAN gauge.                                            |
| byteValue    | Byte                           | The value for a BYTE gauge.                                               |
| charValue    | Char                           | The value for a CHAR gauge.                                               |
| shortValue   | Short                          | The value for a SHORT gauge.                                              |
| intValue     | Integer                        | The value for an INT gauge.                                               |
| longValue    | Long                           | The value for a LONG gauge.                                               |
| floatValue   | Float                          | The value for a FLOAT gauge.                                              |
| doubleValue  | Double                         | The value for a DOUBLE gauge.                                             |
| stringValue  | String                         | The value for a STRING gauge.                                             |

### Admin Client Stats (`SrvMonAdminClientStats`)

Statistics for a connected admin client. The XVM prioritizes its integrity over reliable delivery to admin clients — it will drop messages to a congested client.

| Field                   | Type    | Description                                                                                                            |
| ----------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------- |
| name                    | String  | The name of the admin client.                                                                                          |
| heartbeatsSent          | Long    | Heartbeats sent to the client.                                                                                         |
| heartbeatsDropped       | Long    | Heartbeats dropped due to congestion.                                                                                  |
| lifecyclesSent          | Long    | Lifecycle events sent to the client.                                                                                   |
| tracesSent              | Long    | Trace records sent to the client.                                                                                      |
| tracesDropped           | Long    | Trace records dropped due to congestion.                                                                               |
| outboundQueueCapacity   | Integer | Capacity (bytes) of the client's outbound queue.                                                                       |
| outboundQueueSize       | Integer | Size (bytes) of the client's outbound queue. May exceed capacity when lifecycle events must be sent during congestion. |
| outboundQueueCount      | Integer | Number of elements in the outbound queue.                                                                              |
| outboundQueueFlushSize  | Long    | Bytes flushed from the outbound queue.                                                                                 |
| outboundQueueFlushCount | Long    | Elements flushed from the outbound queue.                                                                              |
| flushesScheduled        | Long    | Outbound queue flushes scheduled.                                                                                      |
| flushesExecuted         | Long    | Outbound queue flushes executed.                                                                                       |

### Message Logger Stats (`SrvMonAppMessageLoggerStats`)

Statistics for a message logger, used for heartbeat logging, inbound/outbound message logging, and per-transaction stats logging.

| Field               | Type                                                          | Description                                                       |
| ------------------- | ------------------------------------------------------------- | ----------------------------------------------------------------- |
| detachedPersist     | Boolean                                                       | Whether the logger is operating in detached mode.                 |
| numMessagesRecorded | Long                                                          | Messages persisted by the logger.                                 |
| numCommits          | Long                                                          | Commits to the logger.                                            |
| numForks            | Long                                                          | Forked message packets persisted.                                 |
| fileSize            | Long                                                          | Actual size of the log file on disk (may be preallocated larger). |
| fileSizeUsed        | Long                                                          | Space used in the log file.                                       |
| disruptorStats      | [SrvMonDisruptorStats](#disruptor-stats-srvmondisruptorstats) | Disruptor stats when operating in detached mode.                  |

### Disruptor Stats (`SrvMonDisruptorStats`)

Statistics for a disruptor.

| Field                | Type                                                      | Description                                             |
| -------------------- | --------------------------------------------------------- | ------------------------------------------------------- |
| capacity             | Integer                                                   | The size of the disruptor's ring buffer.                |
| remaining            | Integer                                                   | The number of free ring buffer slots.                   |
| claimStrategy        | [SrvMonDisruptorClaimStrategy](#disruptor-claim-strategy) | The claim strategy used by threads inputting events.    |
| waitStrategy         | [SrvMonDisruptorWaitStrategy](#disruptor-wait-strategy)   | The wait strategy used by the thread processing events. |
| offerToPollLatencies | [SrvMonIntSeries](#int-series-srvmonintseries)            | Latency of events passing through the disruptor.        |

### Int Series (`SrvMonIntSeries`)

Raw and histographical data for a series of integer data points. Frequently used for latency timings.

| Field              | Type                                                    | Description                                                                                                                         |
| ------------------ | ------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| numDataPoints      | Integer                                                 | Data points collected in this interval.                                                                                             |
| lastSequenceNumber | Long                                                    | Sequence number of the last data point (0 = none collected). Running count since last reset.                                        |
| skippedDatapoints  | Long                                                    | Running count of data points skipped due to undersampling. If growing between heartbeats, intervalStats don't reflect all activity. |
| dataPoints         | Integer\[]                                              | Raw data points (when configured to include them). Valid values count = numDataPoints.                                              |
| intervalStats      | [SrvMonIntHistogram](#int-histogram-srvmoninthistogram) | Computed stats for this heartbeat's interval.                                                                                       |
| runningStats       | [SrvMonIntHistogram](#int-histogram-srvmoninthistogram) | Computed stats over the lifetime of the metric.                                                                                     |

#### Int Histogram (`SrvMonIntHistogram`)

Computed histographical data. Fields may not be set if sample size is 0.

| Field           | Type    | Description                                                                                           |
| --------------- | ------- | ----------------------------------------------------------------------------------------------------- |
| sampleSize      | Long    | Number of data points over which results were calculated.                                             |
| minimum         | Integer | Minimum value in the sample set.                                                                      |
| maximum         | Integer | Maximum value in the sample set.                                                                      |
| mean            | Integer | Mean value.                                                                                           |
| median          | Integer | Median value.                                                                                         |
| pct75           | Integer | 75th percentile.                                                                                      |
| pct90           | Integer | 90th percentile.                                                                                      |
| pct99           | Integer | 99th percentile.                                                                                      |
| pct999          | Integer | 99.9th percentile.                                                                                    |
| pct9999         | Integer | 99.99th percentile.                                                                                   |
| samplesOverMax  | Long    | Samples exceeding the maximum recordable HDRHistogram value (downsampled, skewing percentiles lower). |
| samplesUnderMin | Long    | Samples below 0 (e.g. clock skew; upsampled to 0, skewing results).                                   |

### Long Series (`SrvMonLongSeries`)

Raw and histographical data for a series of long data points. Same structure as Int Series but with Long types.

| Field              | Type                                                       | Description                                                  |
| ------------------ | ---------------------------------------------------------- | ------------------------------------------------------------ |
| numDataPoints      | Integer                                                    | Data points collected in this interval.                      |
| lastSequenceNumber | Long                                                       | Sequence number of the last data point (0 = none collected). |
| skippedDatapoints  | Long                                                       | Running count of data points skipped due to undersampling.   |
| dataPoints         | Long\[]                                                    | Raw data points (when configured to include them).           |
| intervalStats      | [SrvMonLongHistogram](#long-histogram-srvmonlonghistogram) | Computed stats for this heartbeat's interval.                |
| runningStats       | [SrvMonLongHistogram](#long-histogram-srvmonlonghistogram) | Computed stats over the lifetime of the metric.              |

#### Long Histogram (`SrvMonLongHistogram`)

Computed histographical data for long series. Fields may not be set if sample size is 0.

| Field           | Type | Description                                               |
| --------------- | ---- | --------------------------------------------------------- |
| sampleSize      | Long | Number of data points over which results were calculated. |
| minimum         | Long | Minimum value in the sample set.                          |
| maximum         | Long | Maximum value in the sample set.                          |
| mean            | Long | Mean value.                                               |
| median          | Long | Median value.                                             |
| pct75           | Long | 75th percentile.                                          |
| pct90           | Long | 90th percentile.                                          |
| pct99           | Long | 99th percentile.                                          |
| pct999          | Long | 99.9th percentile.                                        |
| pct9999         | Long | 99.99th percentile.                                       |
| samplesOverMax  | Long | Samples exceeding the maximum recordable value.           |
| samplesUnderMin | Long | Samples below the minimum recordable value.               |

## Enumerations

### Application State

`SrvMonAppState`

| Value       | Description                                                |
| ----------- | ---------------------------------------------------------- |
| Loaded      | Application has been loaded but is not yet initialized.    |
| Initialized | Application has been initialized.                          |
| Started     | Application has been started.                              |
| Active      | Application has been started and is the primary HA member. |
| Stopped     | Application has been stopped.                              |
| Unloaded    | Application has been unloaded.                             |

### Application HA Role

`SrvMonAppRole`

| Value      | Description                                           |
| ---------- | ----------------------------------------------------- |
| Primary    | Operating in the primary role with a backup.          |
| Backup     | Operating in a backup role for a primary.             |
| Standalone | Configured as a standalone instance without a backup. |

### Application HA Policy

`SrvMonAppHAPolicy`

| Value            | Description                                             |
| ---------------- | ------------------------------------------------------- |
| EventSourcing    | Recovery by replay of inbound events.                   |
| StateReplication | Recovery by replication of state and outbound messages. |

### Bus Binding State

`SrvMonAppBusBindingState`

| Value   | Description                              |
| ------- | ---------------------------------------- |
| Created | Bus has been created but not yet opened. |
| Opening | Bus is being opened.                     |
| Opened  | Bus is opened.                           |
| Failed  | Bus has failed.                          |

### Store Binding Role

`SrvMonAppStoreBindingRole`

| Value   | Description                                                   |
| ------- | ------------------------------------------------------------- |
| Primary | Store (and application) is the current cluster leader.        |
| Backup  | Store (and application) is operating as backup to the leader. |
| Unknown | Store role is unknown or invalid.                             |

### Store Binding State

`SrvMonAppStoreBindingState`

| Value   | Description                              |
| ------- | ---------------------------------------- |
| Opening | Store is opening.                        |
| Open    | Store is open.                           |
| Failed  | Store has failed.                        |
| Closed  | Store has closed.                        |
| Unknown | Store is in an unknown or invalid state. |

### ICR Role

`SrvMonAppStoreICRRole`

| Value              | Description                                                              |
| ------------------ | ------------------------------------------------------------------------ |
| None               | Inter-cluster replication is not configured.                             |
| Sender             | Cluster members serve as inter-cluster replication senders.              |
| StandaloneReceiver | Cluster members serve as standalone inter-cluster replication receivers. |

### Disruptor Claim Strategy

`SrvMonDisruptorClaimStrategy`

| Value                        | Description                                                                      |
| ---------------------------- | -------------------------------------------------------------------------------- |
| SingleThreaded               | Optimized for a single publisher thread.                                         |
| MultiThreaded                | For multiple publisher threads, forgiving under contention or insufficient CPUs. |
| MultiThreadedSufficientCores | For multiple publisher threads with sufficient cores and low contention.         |
| Unknown                      | Claim strategy is invalid or not recognized.                                     |

### Disruptor Wait Strategy

`SrvMonDisruptorWaitStrategy`

| Value    | Description                                                                                                             |
| -------- | ----------------------------------------------------------------------------------------------------------------------- |
| Blocking | Uses a lock and condition variable. Best when CPU resources are more important than latency.                            |
| Sleeping | Spins, then yields, then sleeps for minimum OS/JVM nanos. Good compromise; latency spikes possible after quiet periods. |
| Yielding | Spins then yields. Good compromise without significant latency spikes.                                                  |
| BusySpin | Busy spin loop. Avoids syscalls and latency jitter. Best with dedicated CPU cores.                                      |
| Unknown  | Wait strategy is invalid or not recognized.                                                                             |

### Gauge Type

`SrvMonGaugeType`

| Value                                                        | Description                                               |
| ------------------------------------------------------------ | --------------------------------------------------------- |
| BOOLEAN, BYTE, CHAR, SHORT, INT, LONG, FLOAT, DOUBLE, STRING | Indicates which typed accessor to call on the gauge stat. |

### Series Type

`SrvMonSeriesType`

| Value                                 | Description                                                                    |
| ------------------------------------- | ------------------------------------------------------------------------------ |
| BYTE, SHORT, INT, LONG, FLOAT, DOUBLE | Indicates the data type. Currently only INT is supported; others are reserved. |
