[ https://issues.apache.org/jira/browse/IGNITE-12183?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Maxim Muzafarov updated IGNITE-12183: ------------------------------------- Summary: Rebalancing process metrics for cache groups (was: Move rebalanceKeysReceived metric to the cache group level) > Rebalancing process metrics for cache groups > -------------------------------------------- > > Key: IGNITE-12183 > URL: https://issues.apache.org/jira/browse/IGNITE-12183 > Project: Ignite > Issue Type: Improvement > Reporter: Aleksandr Brazhnikov > Assignee: Surkov Aleksandr > Priority: Major > Labels: IEP-35 > > h3. Intro > Currently, some of the Apache Ignite rebalance process metrics are not > working well enough. For instance, `EstimatedRebalancingKeys` keys time to > time returns `-1` value due to a bug, or `rebalanceKeysReceived` metric > treated as CacheMetric in fact calculated for the whole cache group (e.g. > historical rebalance, see IGNITE-11330 and code block comment below). > All the rebalance process metrics must be re-worked. > {code:java} > /** > * Update rebalancing metrics. > */ > private void updateGroupMetrics() { > // TODO: IGNITE-11330: Update metrics for touched cache only. > // Due to historical rebalancing "EstimatedRebalancingKeys" metric is > currently calculated for the whole cache > // group (by partition counters), so "RebalancedKeys" and > "RebalancingKeysRate" is calculated in the same way. > for (GridCacheContext cctx0 : grp.caches()) { > if (cctx0.statisticsEnabled()) > cctx0.cache().metrics0().onRebalanceKeyReceived(); > } > } > {code} > h3. What we have > _CacheMetrics_ - statistics must be enabled to see these metrics. > * getRebalancedKeys > * getKeysToRebalanceLeft > * getEstimatedRebalancingKeys > * getEstimatedRebalancingFinishTime > * getRebalancingStartTime > * getRebalanceClearingPartitionsLeft > * getRebalancingKeysRate > * getRebalancingBytesRate > h3. What to do > All such metrics (or their analogue) must be available for the > _CacheGroupMetrics_. I'd suggest to do the following: > # Phase-1 > #* rebalancingPartitionsLeft long metric > #* rebalancingReceivedKeys long metric > #* rebalancingReceivedBytes long metric > #* rebalancingStartTime long metric > #* rebalancingFinishTime > # Phase-2 > #* rebalancingExpectedKeys long metric > #* rebalancingExpectedBytes long metric > #* rebalancingEvictedPartitionsLeft long metric > # Phase-3 (statistics must be enabled) > #* rebalancingKeysRate HitRate metric > #* rebalancingBytesRate HitRate metric > # Phase-4 > #* Mark rebalancing _CacheMetrics_ deprecated and remove from metrics > framework IGNITE-11961. -- This message was sent by Atlassian Jira (v8.3.4#803005)