ShardingInstruments

kamon.instrumentation.pekko.PekkoClusterShardingMetrics.ShardingInstruments
See theShardingInstruments companion class

Attributes

Companion
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

case class ShardTelemetry(entitiesPerShard: TrieMap[String, AtomicLong], messagesPerShard: TrieMap[String, AtomicLong], schedule: Registration)

Assist with tracking the number of entities hosted by a Shard and the number of messages processed by each Shard. Note that there is a difference in the hosted entities and processed messages at the Region level versus at the Shard Level: there is only one Region per type per node, so the number of processed messages is a clear indication of how many messages were processed and how many entities are hosted in the region; there can (and will be) many Shards on the same node which could generate cardinality issues if we were tracking metrics for each individual Shard so, instead, we track the distribution of entities and processed messages across all Shards. This behavior can help uncover cases in which Shards are not evenly distributed (both in the messages volume and hosted entities aspects) but cannot point out which of the Shards deviates from the common case.

Assist with tracking the number of entities hosted by a Shard and the number of messages processed by each Shard. Note that there is a difference in the hosted entities and processed messages at the Region level versus at the Shard Level: there is only one Region per type per node, so the number of processed messages is a clear indication of how many messages were processed and how many entities are hosted in the region; there can (and will be) many Shards on the same node which could generate cardinality issues if we were tracking metrics for each individual Shard so, instead, we track the distribution of entities and processed messages across all Shards. This behavior can help uncover cases in which Shards are not evenly distributed (both in the messages volume and hosted entities aspects) but cannot point out which of the Shards deviates from the common case.

The totals per Shard are tracked locally and sampled in a fixed interval.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all