private static long calcNumericId(StatisticsManager system, long userValue) { if (userValue != 0) { return userValue; } else { long result = OSProcess.getId(); // fix for bug 30239 if (result == 0) { if (system != null) { result = system.getId(); } } return result; } }
private static String calcTextId(StatisticsManager system, String userValue) { if (userValue != null && !userValue.equals("")) { return userValue; } else { if (system != null) { return system.getName(); } else { return ""; } } }
/** * Returns the time this sampler's system was started. */ @Override public final long getSystemStartTime() { return getStatisticsManager().getStartTime(); }
public SimpleStatSampler(CancelCriterion stopper, StatisticsManager sm) { super(stopper, sm.getLogWriterI18n(), new StatSamplerStats(sm, sm.getId())); this.sm = sm; sm.getLogWriterI18n().config(LocalizedStrings.SimpleStatSampler_STATSSAMPLERATE_0, getSampleRate()); }
final StatisticsManager mockStatisticsManager = this.mockContext.mock(StatisticsManager.class, "testAddRemoveListener$StatisticsManager"); this.mockContext.checking(new Expectations() {{ allowing(mockStatisticsManager).getName(); will(returnValue("mockStatisticsManager")); allowing(mockStatisticsManager).getId(); will(returnValue(1)); allowing(mockStatisticsManager).getStartTime(); will(returnValue(startTime)); allowing(mockStatisticsManager).getLogWriterI18n(); will(returnValue(log)); allowing(mockStatisticsManager).getStatListModCount(); will(returnValue(0)); allowing(mockStatisticsManager).getStatsList(); will(returnValue(statsList)); }});
assertTrue(getStatisticsManager().getStatListModCount() > 0); List<Statistics> statistics = getStatisticsManager().getStatsList(); assertNotNull(statistics); assertTrue(statistics.size() > 0); StatisticsType statSamplerType = getStatisticsManager().findType("StatSampler"); Statistics[] statsArray = getStatisticsManager().findStatisticsByType(statSamplerType); assertEquals(1, statsArray.length);
@Override protected final void initProcessStats(long id) { if (PureJavaMode.osStatsAreAvailable()) { if (osStatsDisabled()) { logger.info(LogMarker.STATISTICS, LocalizedMessage.create(LocalizedStrings.GemFireStatSampler_OS_STATISTIC_COLLECTION_DISABLED_BY_OSSTATSDISABLED_SYSTEM_PROPERTY)); } else { int retVal = HostStatHelper.initOSStats(); if ( retVal != 0 ) { logger.error(LogMarker.STATISTICS, LocalizedMessage.create(LocalizedStrings.GemFireStatSampler_OS_STATISTICS_FAILED_TO_INITIALIZE_PROPERLY_SOME_STATS_MAY_BE_MISSING_SEE_BUGNOTE_37160)); } HostStatHelper.newSystem(getOsStatisticsFactory()); String statName = getStatisticsManager().getName(); if (statName == null || statName.length() == 0) { statName = "javaApp" + getStatisticsManager().getId(); } Statistics stats = HostStatHelper.newProcess(getOsStatisticsFactory(), id, statName + "-proc"); this.processStats = HostStatHelper.newProcessStats(stats); } } }
assertEquals(true, statSampler.isSamplingEnabled()); int statsCount = statSampler.getStatisticsManager().getStatisticsCount(); assertEquals(statsCount, statSampler.getStatisticsManager().getStatisticsCount()); assertEquals(statsCount, statSampler.getStatistics().length); assertEquals(getStatisticsManager().getId(), statSampler.getSystemId()); assertTrue(statSampler.getSystemStartTime() < System.currentTimeMillis()); assertEquals(SocketCreator.getHostName(SocketCreator.getLocalHost()),
@Override public Statistics[] getStatistics() { @SuppressWarnings("unchecked") List<Statistics> statsList = (List<Statistics>)this.manager.getStatsList(); synchronized (statsList) { return (Statistics[])statsList.toArray(new Statistics[statsList.size()]); } }
@Override public int getStatisticsModCount() { return this.manager.getStatListModCount(); }
/** * Called when this sampler has spent some time working and wants * it to be accounted for. */ private void accountForTimeSpentWorking(long nanosSpentWorking, long nanosSpentSleeping) { this.samplerStats.tookSample( nanosSpentWorking, getStatisticsManager().getStatisticsCount(), nanosSpentSleeping); }
@Override public void close() { super.close(); if (this.dSystem != null) { dSystem.destroyStatistics(this); } }
/** * Returns an array of all the current statistic resource instances. */ @Override public final Statistics[] getStatistics() { return getStatisticsManager().getStatistics(); }
static RemoteStatListenerImpl create(int listenerId, InternalDistributedMember recipient, long resourceId, String statName, HostStatSampler sampler) { RemoteStatListenerImpl result = null; Statistics stats = sampler.getStatisticsManager().findStatistics(resourceId); StatisticDescriptorImpl stat = (StatisticDescriptorImpl)stats.nameToDescriptor(statName); switch (stat.getTypeCode()) { case StatisticDescriptorImpl.BYTE: case StatisticDescriptorImpl.SHORT: case StatisticDescriptorImpl.INT: case StatisticDescriptorImpl.LONG: result = new LongStatListenerImpl(); break; case StatisticDescriptorImpl.FLOAT: result = new FloatStatListenerImpl(); break; case StatisticDescriptorImpl.DOUBLE: result = new DoubleStatListenerImpl(); break; default: throw new RuntimeException(LocalizedStrings.GemFireStatSampler_ILLEGAL_FIELD_TYPE_0_FOR_STATISTIC.toLocalizedString(stats.getType())); } result.stats = stats; result.stat = stat; result.listenerId = listenerId; result.recipient = recipient; return result; }
@Override public LogWriterI18n getLogger() { return this.manager.getLogWriterI18n(); }
/** * Tests the statistics sample rate within an acceptable margin of error. */ public void testSampleRate() throws Exception { connect(createGemFireProperties()); GemFireStatSampler statSampler = getGemFireStatSampler(); assertTrue(statSampler.waitForInitialization(5000)); assertEquals(STAT_SAMPLE_RATE, statSampler.getSampleRate()); assertTrue(getStatisticsManager().getStatListModCount() > 0); @SuppressWarnings("unchecked") List<Statistics> statistics = getStatisticsManager().getStatsList(); assertNotNull(statistics); assertTrue(statistics.size() > 0); StatisticsType statSamplerType = getStatisticsManager().findType("StatSampler"); Statistics[] statsArray = getStatisticsManager().findStatisticsByType(statSamplerType); assertEquals(1, statsArray.length); final Statistics statSamplerStats = statsArray[0]; final int initialSampleCount = statSamplerStats.getInt("sampleCount"); final int expectedSampleCount = initialSampleCount + 2; WaitCriterion wc = new WaitCriterion() { public boolean done() { return statSamplerStats.getInt("sampleCount") >= expectedSampleCount; } public String description() { return "Waiting for sampleCount >= " + expectedSampleCount; } }; DistributedTestBase.waitForCriterion(wc, 5000, 10, true); }
@Override protected final void initProcessStats(long id) { if (PureJavaMode.osStatsAreAvailable()) { if (osStatsDisabled()) { getLogger().info(LocalizedStrings.GemFireStatSampler_OS_STATISTIC_COLLECTION_DISABLED_BY_OSSTATSDISABLED_SYSTEM_PROPERTY); } else { int retVal = HostStatHelper.initOSStats(); if ( retVal != 0 ) { getLogger().error(LocalizedStrings.GemFireStatSampler_OS_STATISTICS_FAILED_TO_INITIALIZE_PROPERLY_SOME_STATS_MAY_BE_MISSING_SEE_BUGNOTE_37160); } HostStatHelper.newSystem(getOsStatisticsFactory()); String statName = getStatisticsManager().getName(); if (statName == null || statName.length() == 0) { statName = "javaApp" + getStatisticsManager().getId(); } Statistics stats = HostStatHelper.newProcess(getOsStatisticsFactory(), id, statName + "-proc"); this.processStats = HostStatHelper.newProcessStats(stats); } } }
assertEquals(true, statSampler.isSamplingEnabled()); int statsCount = statSampler.getStatisticsManager().getStatisticsCount(); assertEquals(statsCount, statSampler.getStatisticsManager().getStatisticsCount()); assertEquals(statsCount, statSampler.getStatistics().length); assertEquals(getStatisticsManager().getId(), statSampler.getSystemId()); assertTrue(statSampler.getSystemStartTime() < System.currentTimeMillis()); assertEquals(SocketCreator.getHostName(SocketCreator.getLocalHost()),
protected List<Statistics> getStatsList() { return getStatisticsManager().getStatsList(); }
/** * Returns the number of times a statistics resource has been add or deleted. */ @Override public final int getStatisticsModCount() { return getStatisticsManager().getStatListModCount(); }