use of com.navercorp.pinpoint.common.server.bo.stat.CpuLoadBo in project pinpoint by naver.
the class CpuLoadCodecV1 method encodeValues.
@Override
public void encodeValues(Buffer valueBuffer, List<CpuLoadBo> cpuLoadBos) {
if (CollectionUtils.isEmpty(cpuLoadBos)) {
throw new IllegalArgumentException("cpuLoadBos must not be empty");
}
final int numValues = cpuLoadBos.size();
valueBuffer.putVInt(numValues);
List<Long> timestamps = new ArrayList<Long>(numValues);
UnsignedLongEncodingStrategy.Analyzer.Builder jvmCpuLoadAnalyzerBuilder = new UnsignedLongEncodingStrategy.Analyzer.Builder();
UnsignedLongEncodingStrategy.Analyzer.Builder systemCpuLoadAnalyzerBuilder = new UnsignedLongEncodingStrategy.Analyzer.Builder();
for (CpuLoadBo cpuLoadBo : cpuLoadBos) {
timestamps.add(cpuLoadBo.getTimestamp());
jvmCpuLoadAnalyzerBuilder.addValue(AgentStatUtils.convertDoubleToLong(cpuLoadBo.getJvmCpuLoad()));
systemCpuLoadAnalyzerBuilder.addValue(AgentStatUtils.convertDoubleToLong(cpuLoadBo.getSystemCpuLoad()));
}
this.codec.encodeTimestamps(valueBuffer, timestamps);
this.encodeDataPoints(valueBuffer, jvmCpuLoadAnalyzerBuilder.build(), systemCpuLoadAnalyzerBuilder.build());
}
use of com.navercorp.pinpoint.common.server.bo.stat.CpuLoadBo in project pinpoint by naver.
the class TestAgentStatFactory method createCpuLoadBos.
public static List<CpuLoadBo> createCpuLoadBos(String agentId, long startTimestamp, long initialTimestamp, int numValues) {
List<CpuLoadBo> cpuLoadBos = new ArrayList<CpuLoadBo>(numValues);
List<Long> startTimestamps = createStartTimestamps(startTimestamp, numValues);
List<Long> timestamps = createTimestamps(initialTimestamp, numValues);
List<Double> jvmCpuLoads = createRandomPercentageValues(numValues);
List<Double> systemCpuLoads = createRandomPercentageValues(numValues);
for (int i = 0; i < numValues; ++i) {
CpuLoadBo cpuLoadBo = new CpuLoadBo();
cpuLoadBo.setStartTimestamp(startTimestamps.get(i));
cpuLoadBo.setAgentId(agentId);
cpuLoadBo.setTimestamp(timestamps.get(i));
cpuLoadBo.setJvmCpuLoad(jvmCpuLoads.get(i));
cpuLoadBo.setSystemCpuLoad(systemCpuLoads.get(i));
cpuLoadBos.add(cpuLoadBo);
}
return cpuLoadBos;
}
use of com.navercorp.pinpoint.common.server.bo.stat.CpuLoadBo in project pinpoint by naver.
the class HbaseSampledCpuLoadDaoV2 method getSampledAgentStatList.
@Override
public List<SampledCpuLoad> getSampledAgentStatList(String agentId, TimeWindow timeWindow) {
long scanFrom = timeWindow.getWindowRange().getFrom();
long scanTo = timeWindow.getWindowRange().getTo() + timeWindow.getWindowSlotSize();
Range range = new Range(scanFrom, scanTo);
AgentStatMapperV2<CpuLoadBo> mapper = operations.createRowMapper(cpuLoadDecoder, range);
SampledAgentStatResultExtractor<CpuLoadBo, SampledCpuLoad> resultExtractor = new SampledAgentStatResultExtractor<>(timeWindow, mapper, cpuLoadSampler);
return operations.getSampledAgentStatList(AgentStatType.CPU_LOAD, resultExtractor, agentId, range);
}
use of com.navercorp.pinpoint.common.server.bo.stat.CpuLoadBo in project pinpoint by naver.
the class CpuLoadSampler method sampleDataPoints.
@Override
public SampledCpuLoad sampleDataPoints(int timeWindowIndex, long timestamp, List<CpuLoadBo> dataPoints, CpuLoadBo previousDataPoint) {
List<Double> jvmCpuLoads = new ArrayList<>(dataPoints.size());
List<Double> systemCpuLoads = new ArrayList<>(dataPoints.size());
for (CpuLoadBo cpuLoadBo : dataPoints) {
if (cpuLoadBo.getJvmCpuLoad() != CpuLoadBo.UNCOLLECTED_VALUE) {
jvmCpuLoads.add(cpuLoadBo.getJvmCpuLoad() * 100);
}
if (cpuLoadBo.getSystemCpuLoad() != CpuLoadBo.UNCOLLECTED_VALUE) {
systemCpuLoads.add(cpuLoadBo.getSystemCpuLoad() * 100);
}
}
SampledCpuLoad sampledCpuLoad = new SampledCpuLoad();
sampledCpuLoad.setJvmCpuLoad(createPoint(timestamp, jvmCpuLoads));
sampledCpuLoad.setSystemCpuLoad(createPoint(timestamp, systemCpuLoads));
return sampledCpuLoad;
}
use of com.navercorp.pinpoint.common.server.bo.stat.CpuLoadBo in project pinpoint by naver.
the class HbaseSampledCpuLoadDao method getSampledAgentStatList.
@Override
public List<SampledCpuLoad> getSampledAgentStatList(String agentId, TimeWindow timeWindow) {
long scanFrom = timeWindow.getWindowRange().getFrom();
long scanTo = timeWindow.getWindowRange().getTo() + timeWindow.getWindowSlotSize();
Range range = new Range(scanFrom, scanTo);
SampledAgentStatResultExtractor<CpuLoadBo, SampledCpuLoad> resultExtractor = new SampledAgentStatResultExtractor<>(timeWindow, mapper, cpuLoadSampler);
return operations.getSampledAgentStatList(resultExtractor, agentId, range);
}
Aggregations