assertTrue(bean.listDistributedRegionObjectNames().length == 2); try { assertNotNull(bean .fetchDistributedRegionObjectName(PARTITIONED_REGION_PATH)); assertNotNull(bean.fetchDistributedRegionObjectName(REGION_PATH)); ObjectName actualName = bean .fetchDistributedRegionObjectName(PARTITIONED_REGION_PATH); ObjectName expectedName = MBeanJMXAdapter .getDistributedRegionMbeanName(PARTITIONED_REGION_PATH); assertEquals(expectedName, actualName); actualName = bean.fetchDistributedRegionObjectName(REGION_PATH); expectedName = MBeanJMXAdapter .getDistributedRegionMbeanName(REGION_PATH); .fetchRegionObjectNames(memberMBeanName); assertNotNull(regionMBeanNames); assertTrue(regionMBeanNames.length == 2); PARTITIONED_REGION_PATH); waitForProxy(expectedName, RegionMXBean.class); actualName = bean.fetchRegionObjectName(memberId, PARTITIONED_REGION_PATH); REGION_PATH); waitForProxy(expectedName, RegionMXBean.class); actualName = bean.fetchRegionObjectName(memberId, REGION_PATH);
writeToTableAndCsv(metricsTable, "cluster", "totalHeapSize", dsMxBean.getTotalHeapSize(), csvBuilder); writeToTableAndCsv(metricsTable, "cache", "totalRegionEntryCount", dsMxBean.getTotalRegionEntryCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalRegionCount", dsMxBean.getTotalRegionCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalMissCount", dsMxBean.getTotalMissCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalHitCount", dsMxBean.getTotalHitCount(), csvBuilder); writeToTableAndCsv(metricsTable, "diskstore", "totalDiskUsage", dsMxBean.getTotalDiskUsage(), csvBuilder); // deadcoded to workaround bug 46397 writeToTableAndCsv(metricsTable, ""/*46608*/, "diskReadsRate", dsMxBean.getDiskReadsRate(), csvBuilder); writeToTableAndCsv(metricsTable, "", "diskWritesRate", dsMxBean.getDiskWritesRate(), csvBuilder); writeToTableAndCsv(metricsTable, "", "flushTimeAvgLatency", dsMxBean.getDiskFlushAvgLatency(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalBackupInProgress", dsMxBean.getTotalBackupInProgress(), csvBuilder); writeToTableAndCsv(metricsTable, "query", "activeCQCount", dsMxBean.getActiveCQCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "queryRequestRate", dsMxBean.getQueryRequestRate(), csvBuilder);
public void run() { Cache cache = GemFireCacheImpl.getInstance(); ManagementService service = ManagementService .getManagementService(cache); DistributedSystemMXBean bean = service.getDistributedSystemMXBean(); ObjectName expectedName = service.getGatewaySenderMBeanName( senderMember, "pn"); try { ObjectName actualName = bean.fetchGatewaySenderObjectName( senderMember.getId(), "pn"); assertEquals(expectedName, actualName); } catch (Exception e) { fail("Sender Navigation Failed " + e); } assertEquals(2, bean.listGatewaySenderObjectNames().length); try { assertEquals(1, bean.listGatewaySenderObjectNames(senderMember .getId()).length); } catch (Exception e) { fail("Sender Navigation Failed " + e); } } };
public void run() { Cache cache = getCache(); GemFireCacheImpl cacheImpl = (GemFireCacheImpl) cache; ManagementService service = getManagementService(); DistributedSystemMXBean bean = service.getDistributedSystemMXBean(); PersistentMemberDetails[] missingDiskStores = bean .listMissingDiskStores(); getLogWriter().info("waiting members=" + missingDiskStores); assertNotNull(missingDiskStores); assertEquals(1, missingDiskStores.length); for (PersistentMemberDetails id : missingDiskStores) { getLogWriter().info("Missing DiskStoreID is =" + id.getDiskStoreId()); getLogWriter().info("Missing Host is =" + id.getHost()); getLogWriter().info("Missing Directory is =" + id.getDirectory()); try { bean.revokeMissingDiskStores(id.getDiskStoreId()); } catch (Exception e) { fail("revokeMissingDiskStores failed with exception " + e); } } } });
/** * Returns a Set of DistributedMember for members that have the specified <code>region</code>. * <code>returnAll</code> indicates whether to return all members or only the first member we find. * * @param region region path for which members that have this region are required * @param cache Cache instance to use to find members * @param returnAll whether to return all members or only the first member we find. Returns all when <code>true</code> * @return a Set of DistributedMember for members that have the specified <code>region</code>. */ public static Set<DistributedMember> getRegionAssociatedMembers(final String region, final Cache cache, boolean returnAll) { if (region == null || region.isEmpty()) { return null; } ManagementService managementService = ManagementService.getExistingManagementService(cache); DistributedSystemMXBean distributedSystemMXBean = managementService.getDistributedSystemMXBean(); Set<DistributedMember> matchedMembers = new HashSet<DistributedMember>(); Set<DistributedMember> allClusterMembers = new HashSet<DistributedMember>(); allClusterMembers.addAll(cache.getMembers()); allClusterMembers.add(cache.getDistributedSystem().getDistributedMember()); for (DistributedMember member : allClusterMembers) { try { if (distributedSystemMXBean.fetchRegionObjectName(CliUtil.getMemberNameOrId(member), region) != null) { matchedMembers.add(member); } } catch (Exception e) { //ignore for now } } return matchedMembers; }
public void run() { Cache cache = getCache(); ManagementService service = getManagementService(); DistributedSystemMXBean bean = service.getDistributedSystemMXBean(); PersistentMemberDetails[] missingDiskStores = bean .listMissingDiskStores(); assertNull(missingDiskStores); } });
@Override public boolean done() { final ManagementService service = getManagementService(); final DistributedSystemMXBean bean = service.getDistributedSystemMXBean(); if (bean != null) { if(bean.getActiveCQCount() > 0){ return true; } } return false; }
@Override public boolean done() { final ManagementService service = getManagementService(); final DistributedSystemMXBean bean = service .getDistributedSystemMXBean(); if (bean != null) { if (bean.getTotalHeapSize() > 0) { return true; } } return false; } @Override
@CliCommand(value = CliStrings.REVOKE_MISSING_DISK_STORE, help = CliStrings.REVOKE_MISSING_DISK_STORE__HELP) @CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DISKSTORE }) public Result revokeMissingDiskStore( @CliOption(key = CliStrings.REVOKE_MISSING_DISK_STORE__ID, mandatory = true, help = CliStrings.REVOKE_MISSING_DISK_STORE__ID__HELP) String id) { try { DistributedSystemMXBean dsMXBean = ManagementService.getManagementService(CacheFactory.getAnyInstance()) .getDistributedSystemMXBean(); if (dsMXBean.revokeMissingDiskStores(id)) { return ResultBuilder.createInfoResult("Missing disk store successfully revoked"); } return ResultBuilder.createUserErrorResult("Unable to find missing disk store to revoke"); } catch (VirtualMachineError e) { SystemFailure.initiateFailure(e); throw e; } catch (Throwable th) { SystemFailure.checkFailure(); if (th.getMessage() == null) { return ResultBuilder.createGemFireErrorResult("An error occurred while revoking missing disk stores: " + th); } return ResultBuilder.createGemFireErrorResult("An error occurred while revoking missing disk stores: " + th.getMessage()); } }
String memberNameOrId = (memberName != null && !memberName.isEmpty())? memberName : member.getId(); ObjectName gatewaySenderObjectNames[] = dsMXBean .listGatewaySenderObjectNames(memberNameOrId);
public String getAlertLevel() { String alertLevel = DEFAULT_ALERT_LEVEL; //TODO Abhishek:: read from cluster MBean too DistributedSystemMXBean distributedSystemMXBean = getDistributedSystemMXBean(); if (distributedSystemMXBean != null) { alertLevel = distributedSystemMXBean.getAlertLevel(); } return alertLevel; }
/** * Returns a Set of DistributedMember for members that have the specified <code>region</code>. * <code>returnAll</code> indicates whether to return all members or only the first member we find. * * @param region region path for which members that have this region are required * @param cache Cache instance to use to find members * @param returnAll whether to return all members or only the first member we find. Returns all when <code>true</code> * @return a Set of DistributedMember for members that have the specified <code>region</code>. */ public static Set<DistributedMember> getRegionAssociatedMembers(final String region, final Cache cache, boolean returnAll) { if (region == null || region.isEmpty()) { return null; } ManagementService managementService = ManagementService.getExistingManagementService(cache); DistributedSystemMXBean distributedSystemMXBean = managementService.getDistributedSystemMXBean(); Set<DistributedMember> matchedMembers = new HashSet<DistributedMember>(); Set<DistributedMember> allClusterMembers = new HashSet<DistributedMember>(); allClusterMembers.addAll(cache.getMembers()); allClusterMembers.add(cache.getDistributedSystem().getDistributedMember()); for (DistributedMember member : allClusterMembers) { try { if (distributedSystemMXBean.fetchRegionObjectName(CliUtil.getMemberNameOrId(member), region) != null) { matchedMembers.add(member); } } catch (Exception e) { //ignore for now } } return matchedMembers; }
PersistentMemberDetails[] allPersistentMemberDetails = dsMXBean.listMissingDiskStores(); if (allPersistentMemberDetails != null) { for (PersistentMemberDetails peristentMemberDetails : allPersistentMemberDetails) {
public static long getNumOfCQ() { final WaitCriterion waitCriteria = new WaitCriterion() { @Override public boolean done() { final ManagementService service = getManagementService(); final DistributedSystemMXBean bean = service.getDistributedSystemMXBean(); if (bean != null) { if(bean.getActiveCQCount() > 0){ return true; } } return false; } @Override public String description() { return "wait for getNumOfCQ to complete and get results"; } }; waitForCriterion(waitCriteria, 2 * 60 * 1000, 3000, true); final DistributedSystemMXBean bean = getManagementService().getDistributedSystemMXBean(); assertNotNull(bean); return bean.getActiveCQCount(); }
public static long getHeapSizeOfDS() { final WaitCriterion waitCriteria = new WaitCriterion() { @Override public boolean done() { final ManagementService service = getManagementService(); final DistributedSystemMXBean bean = service .getDistributedSystemMXBean(); if (bean != null) { if (bean.getTotalHeapSize() > 0) { return true; } } return false; } @Override public String description() { return "wait for getHeapSizeOfDS to complete and get results"; } }; waitForCriterion(waitCriteria, 2 * 60 * 1000, 3000, true); final DistributedSystemMXBean bean = getManagementService() .getDistributedSystemMXBean(); assertNotNull(bean); return bean.getTotalHeapSize() * 1000; }
@CliCommand(value = CliStrings.REVOKE_MISSING_DISK_STORE, help = CliStrings.REVOKE_MISSING_DISK_STORE__HELP) @CliMetaData(relatedTopic = { CliStrings.TOPIC_GEMFIRE_DISKSTORE }) public Result revokeMissingDiskStore( @CliOption(key = CliStrings.REVOKE_MISSING_DISK_STORE__ID, mandatory = true, help = CliStrings.REVOKE_MISSING_DISK_STORE__ID__HELP) String id) { try { DistributedSystemMXBean dsMXBean = ManagementService.getManagementService(CacheFactory.getAnyInstance()) .getDistributedSystemMXBean(); if (dsMXBean.revokeMissingDiskStores(id)) { return ResultBuilder.createInfoResult("Missing disk store successfully revoked"); } return ResultBuilder.createUserErrorResult("Unable to find missing disk store to revoke"); } catch (VirtualMachineError e) { SystemFailure.initiateFailure(e); throw e; } catch (Throwable th) { SystemFailure.checkFailure(); if (th.getMessage() == null) { return ResultBuilder.createGemFireErrorResult("An error occurred while revoking missing disk stores: " + th); } return ResultBuilder.createGemFireErrorResult("An error occurred while revoking missing disk stores: " + th.getMessage()); } }
String memberNameOrId = (memberName != null && !memberName.isEmpty())? memberName : member.getId(); ObjectName gatewaySenderObjectNames[] = dsMXBean .listGatewaySenderObjectNames(memberNameOrId);
public void sendManagerInfo(DistributedMember receiver) { String levelName = jmxAdapter.getDistributedSystemMXBean().getAlertLevel(); int alertCode = LogWriterImpl.levelNameToCode(levelName); ManagerStartupMessage msg = ManagerStartupMessage.create(alertCode); msg.setRecipient((InternalDistributedMember) receiver); sendAsync(msg); }
writeToTableAndCsv(metricsTable, "cluster", "totalHeapSize", dsMxBean.getTotalHeapSize(), csvBuilder); writeToTableAndCsv(metricsTable, "cache", "totalRegionEntryCount", dsMxBean.getTotalRegionEntryCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalRegionCount", dsMxBean.getTotalRegionCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalMissCount", dsMxBean.getTotalMissCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalHitCount", dsMxBean.getTotalHitCount(), csvBuilder); writeToTableAndCsv(metricsTable, "diskstore", "totalDiskUsage", dsMxBean.getTotalDiskUsage(), csvBuilder); // deadcoded to workaround bug 46397 writeToTableAndCsv(metricsTable, ""/*46608*/, "diskReadsRate", dsMxBean.getDiskReadsRate(), csvBuilder); writeToTableAndCsv(metricsTable, "", "diskWritesRate", dsMxBean.getDiskWritesRate(), csvBuilder); writeToTableAndCsv(metricsTable, "", "flushTimeAvgLatency", dsMxBean.getDiskFlushAvgLatency(), csvBuilder); writeToTableAndCsv(metricsTable, "", "totalBackupInProgress", dsMxBean.getTotalBackupInProgress(), csvBuilder); writeToTableAndCsv(metricsTable, "query", "activeCQCount", dsMxBean.getActiveCQCount(), csvBuilder); writeToTableAndCsv(metricsTable, "", "queryRequestRate", dsMxBean.getQueryRequestRate(), csvBuilder);
private static boolean isClusterwideSameConfig(Cache cache, String regionPath) { ManagementService managementService = ManagementService.getExistingManagementService(cache); DistributedSystemMXBean dsMXBean = managementService.getDistributedSystemMXBean(); Set<DistributedMember> allMembers = CliUtil.getAllNormalMembers(cache); RegionAttributesData regionAttributesToValidateAgainst = null; for (DistributedMember distributedMember : allMembers) { ObjectName regionObjectName; try { regionObjectName = dsMXBean.fetchRegionObjectName(CliUtil.getMemberNameOrId(distributedMember), regionPath); RegionMXBean regionMBean = managementService.getMBeanInstance(regionObjectName, RegionMXBean.class); RegionAttributesData regionAttributes = regionMBean.listRegionAttributes(); if (regionAttributesToValidateAgainst == null) { regionAttributesToValidateAgainst = regionAttributes; } else if ( !(regionAttributesToValidateAgainst.getScope().equals(regionAttributes.getScope()) || regionAttributesToValidateAgainst.getDataPolicy().equals(regionAttributes.getDataPolicy())) ) { return false; } } catch (Exception e) { //ignore } } return true; }