Infinispan Cache Metrics

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

Internal

Overview

Each Infinispan individual cache exposes a number of performance metrics, and the cache container managing those caches aggregate some of those metrics at container level. These metrics are described below.

Enabling Statistics

Enabling Cache Statistics

Resetting Statistics

it is possible to reset statistics for an individual cache using the :reset-statistics CLI operation, applied to the management model node corresponding to that cache.

Cache Status

An individual cache instance exposes its status as a String (example: "RUNNING"), over JMX ("cacheStatus") and CLI ("cache-status").

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Time Statistics

The cache statistics mechanism maintains both the amount of seconds since the cache was started (elapsed time) and the amount of seconds since the cache statistics were reset (time since reset).

Read, Write and Remove Count

These statistics are maintained at individual cache level, as well as container.

The number of reads can be calculated by adding the number of hits and misses.

The number of writes is maintained individually as stores.

The number of deletions from the cache can be calculated by adding removeHits and removeMisses

It is preferable to expose these metrics as a rate per second. Some monitoring solutions allow the rate to be calculated automatically (see Data Dog counters).

The container also maintains derivative values, such as readWriteRatio Update with Formula and hitRatio Update with Formula.

Individual Cache

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Cache Container

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Average Read, Write and Remove Time

These metrics represent an individual cache read/write/remove operation average time response time, in milliseconds. For reads, the value includes hits and misses. May return null if the cache is not started. Maintained as a long. The metric always maintains the last value, even after the cache become idle. In order to reset it, you must reset underlying caches statistics, individually, with :reset-statistics.

The values for these metrics are aggregated at container level, for all caches managed by this container. They are calculated by averaging values for of the corresponding values for individual cache managed by this container.

Individual Cache

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Cache Container

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Number of Entries

Cache Number of Entries

Evictions

The number of evictions is reported both at individual cache level and at container level. It is a long representing the number of cache eviction operations for this specific node. May return null if the cache is not started.

For more details about cache eviction see Infinispan Eviction.

Individual Cache

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Cache Container

JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI

Invalidations

Passivations and Activations

Clustering Performance Statistics

TODO

average-replication-time, replication-count, replication-failures, success-ratio, success-ratio-floating-point

According to the documentation: The average time spent in the transport layer, in milliseconds.

average-replication-time: A long representing the average time spent in the transport layer to duplicate data around the cluster, in milliseconds. Maintained by the RpcManager. Applies to both replicated and distributed caches.

replication-failures:A long representing the number of data duplication failures. May return null if the cache is not started. Maintained by the RpcManager. Applies to both replicated and distributed caches.


success-ratio: A percentage (double) representing successful duplications as a ratio of total duplications (successes/successes+failures). Maintained by the RpcManager. Applies to both replicated and distributed caches.


JDG 6 JMX JDG 6 CLI
JDG 7 JMX JDG 7 CLI