[ https://issues.apache.org/jira/browse/GEODE-7001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16897307#comment-16897307 ]
ASF subversion and git services commented on GEODE-7001: -------------------------------------------------------- Commit 279fa0eb007adb789e1fa1a90e310299bc19e0a7 in geode's branch refs/heads/develop from Dale Emery [ https://gitbox.apache.org/repos/asf?p=geode.git;h=279fa0e ] GEODE-7001: Add region entry count gauge (#3850) * GEODE-7001: Add region entry count gauge Add 'member.region.entries' gauge in RegionPerfStats - Add region.name and data.policy tags - Add an AtomicLong to track the entry count - Configure the member.region.entries gauge to fetch from new getLocalSize() method (see below). - Configure the 'entryCount' stat to be supplied by new getLocalSize() method. Add getLocalSize() method to InternalRegion, and implement it in LocalRegion and PartitionedRegion - In LocalRegion, the method returns the region map size minus the number of tombstones. - In PartitionedRegion, the method sums the local sizes of all local bucket regions. Also refactored the following: - Reorganize CachePerfStats/RegionPerfStats constructors - Remove CachePerfStats.getEntries() - Remove use of CachePerfStats.getEntries() from PartitionedRegionStatus. - Add @Override to ValidatingStatisticsType methods in StatisticsTypeImpl - Extracted invokeSuppliers() to new SuppliableStatistics interface and rename as updateSuppliedValues() - Move responsibility to prepend 'RegionStats-' onto region statistics textID into the classes that create RegionPerfStats and CachePerfStats. Co-authored-by: Michael Oleske <mole...@pivotal.io> Co-authored-by: Kirk Lund <kl...@apache.org> Co-Authored-By: Mark Hanson <mhan...@pivotal.io> Co-Authored-By: Aaron Lindsey <alind...@pivotal.io> * empty commit to trigger precheckin * Remove leftover atMost * Spotless found unused import > Add a gauge to track region entry count > --------------------------------------- > > Key: GEODE-7001 > URL: https://issues.apache.org/jira/browse/GEODE-7001 > Project: Geode > Issue Type: New Feature > Components: statistics > Reporter: Dale Emery > Priority: Major > Time Spent: 7h 50m > Remaining Estimate: 0h > > Add a gauge to RegionPerfStats to track the entry count. > As part of understanding system state and health, knowing what regions exist > with how much data in them is an often asked question of a data store. The > underlying metric is the CachePerfStats.entries value. This is only a piece > of the information that customers need as it does not expose the region or > region type to the users which is critical to understanding how things are > setup. > Scenario: REPLICATE region > Given a cluster with the following servers: > - server1 > - server2 > And the cluster has a "REPLICATE" region named X > And the user has put 10 entries with distinct keys into region X > Then server1's meter registry has the following meter > - meter name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = REPLICATE > - value: 10 > Then server2's meter registry has the following meter > - name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = REPLICATE > - value: 10 > Scenario: PARTITION region with no redundancy > Given a cluster with the following servers: > - server1 > - server2 > And the cluster has a "PARTITION" region named X > And the user has put 10 entries with distinct keys into region X > Then server1's meter registry has the following meter > - meter name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = PARTITION > - value: between 0 and 10 > Then server2's meter registry has the following meter > - name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = PARTITION > - value: between 0 and 10 > And the values of those meters add up to 10 > Scenario: PARTITIONED REDUNDANT > Given a cluster with the following servers: > - server1 > - server2 > - server3 > And the cluster has a "PARTITION_REDUNDANT" region named X > And the redundancy level is set to 1 copy (2 total copies of each key should > exist) > And the user has put 10 entries with distinct keys into region X > Then server1's meter registry has the following meter > - meter name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = PARTITION > - value: between 0 and 10 > Then server2's meter registry has the following meter > - name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = PARTITION > - value: between 0 and 10 > Then server3's meter registry has the following meter > - name: member.region.entries > - tag: region_name = X > - tag: <all the common tags> > - tag: data_policy = PARTITION > - value: between 0 and 10 > And the values of those meters add up to 20 -- This message was sent by Atlassian JIRA (v7.6.14#76016)