use of org.apache.skywalking.apm.network.language.agent.v3.MeterSingleValue in project skywalking-java by apache.
the class GaugeTest method validateMeterData.
/**
* Check the single value message
*/
private void validateMeterData(String name, List<Label> labels, double value, MeterData.Builder validate) {
Assert.assertNotNull(validate);
Assert.assertEquals(validate.getMetricCase().getNumber(), MeterData.SINGLEVALUE_FIELD_NUMBER);
MeterSingleValue singleValue = validate.getSingleValue();
Assert.assertNotNull(singleValue);
Assert.assertEquals(singleValue.getValue(), value, 0.0);
Assert.assertEquals(singleValue.getName(), name);
Assert.assertEquals(singleValue.getLabelsList(), labels);
}
use of org.apache.skywalking.apm.network.language.agent.v3.MeterSingleValue in project skywalking-java by apache.
the class MeterServiceTest method isSameWithCounter.
/**
* Check counter message
*/
private void isSameWithCounter(MeterData meterData, boolean firstData, MeterId meterId, long count) {
Assert.assertNotNull(meterData);
if (firstData) {
Assert.assertEquals(meterData.getService(), "testService");
Assert.assertEquals(meterData.getServiceInstance(), "testServiceInstance");
Assert.assertTrue(meterData.getTimestamp() > 0);
} else {
Assert.assertEquals(meterData.getService(), "");
Assert.assertEquals(meterData.getServiceInstance(), "");
Assert.assertTrue(meterData.getTimestamp() == 0L);
}
Assert.assertEquals(meterData.getMetricCase(), MeterData.MetricCase.SINGLEVALUE);
Assert.assertNotNull(meterData.getSingleValue());
final MeterSingleValue singleValue = meterData.getSingleValue();
Assert.assertEquals(singleValue.getName(), meterId.getName());
Assert.assertEquals(singleValue.getLabelsList(), meterId.transformTags());
Assert.assertEquals(singleValue.getValue(), count, 0.0);
}
use of org.apache.skywalking.apm.network.language.agent.v3.MeterSingleValue in project skywalking by apache.
the class MeterProcessor method read.
public void read(MeterData data) {
// Parse and save meter
switch(data.getMetricCase()) {
case SINGLEVALUE:
MeterSingleValue single = data.getSingleValue();
meters.computeIfAbsent(single.getName(), k -> new ArrayList<>()).add(SampleBuilder.builder().name(single.getName()).labels(single.getLabelsList().stream().collect(toImmutableMap(Label::getName, Label::getValue))).value(single.getValue()).build());
break;
case HISTOGRAM:
MeterHistogram histogram = data.getHistogram();
Map<String, String> baseLabel = histogram.getLabelsList().stream().collect(Collectors.toMap(Label::getName, Label::getValue));
meters.computeIfAbsent(histogram.getName(), k -> new ArrayList<>()).addAll(histogram.getValuesList().stream().map(v -> SampleBuilder.builder().name(histogram.getName()).labels(ImmutableMap.<String, String>builder().putAll(baseLabel).put("le", parseHistogramBucket(v)).build()).value(v.getCount()).build()).collect(Collectors.toList()));
break;
default:
return;
}
// Agent info
if (StringUtil.isNotEmpty(data.getService())) {
service = data.getService();
}
if (StringUtil.isNotEmpty(data.getServiceInstance())) {
serviceInstance = data.getServiceInstance();
}
if (data.getTimestamp() > 0) {
timestamp = data.getTimestamp();
}
}
use of org.apache.skywalking.apm.network.language.agent.v3.MeterSingleValue in project incubator-skywalking by apache.
the class MeterProcessor method read.
public void read(MeterData data) {
// Parse and save meter
switch(data.getMetricCase()) {
case SINGLEVALUE:
MeterSingleValue single = data.getSingleValue();
meters.computeIfAbsent(single.getName(), k -> new ArrayList<>()).add(SampleBuilder.builder().name(single.getName()).labels(single.getLabelsList().stream().collect(toImmutableMap(Label::getName, Label::getValue))).value(single.getValue()).build());
break;
case HISTOGRAM:
MeterHistogram histogram = data.getHistogram();
Map<String, String> baseLabel = histogram.getLabelsList().stream().collect(Collectors.toMap(Label::getName, Label::getValue));
meters.computeIfAbsent(histogram.getName(), k -> new ArrayList<>()).addAll(histogram.getValuesList().stream().map(v -> SampleBuilder.builder().name(histogram.getName()).labels(ImmutableMap.<String, String>builder().putAll(baseLabel).put("le", parseHistogramBucket(v)).build()).value(v.getCount()).build()).collect(Collectors.toList()));
break;
default:
return;
}
// Agent info
if (StringUtil.isNotEmpty(data.getService())) {
service = data.getService();
}
if (StringUtil.isNotEmpty(data.getServiceInstance())) {
serviceInstance = data.getServiceInstance();
}
if (data.getTimestamp() > 0) {
timestamp = data.getTimestamp();
}
}
use of org.apache.skywalking.apm.network.language.agent.v3.MeterSingleValue in project skywalking-java by apache.
the class CounterTest method validateMeterData.
/**
* Check the single value message
*/
private void validateMeterData(String name, List<Label> labels, double value, MeterData.Builder validate) {
Assert.assertNotNull(validate);
Assert.assertEquals(validate.getMetricCase().getNumber(), MeterData.SINGLEVALUE_FIELD_NUMBER);
MeterSingleValue singleValue = validate.getSingleValue();
Assert.assertNotNull(singleValue);
Assert.assertEquals(value, singleValue.getValue(), 0.0);
Assert.assertEquals(name, singleValue.getName());
Assert.assertEquals(labels, singleValue.getLabelsList());
}
Aggregations