use of com.signalfx.metrics.protobuf.SignalFxProtocolBuffers.Dimension in project instrumentation-java by census-instrumentation.
the class SignalFxSessionAdaptor method createDimensions.
@VisibleForTesting
static Iterable<Dimension> createDimensions(List<LabelKey> keys, List<LabelValue> values) {
List<Dimension> dimensions = new ArrayList<>(keys.size());
for (int i = 0; i < values.size(); i++) {
LabelValue value = values.get(i);
if (Strings.isNullOrEmpty(value.getValue())) {
continue;
}
dimensions.add(createDimension(keys.get(i), value));
}
return dimensions;
}
use of com.signalfx.metrics.protobuf.SignalFxProtocolBuffers.Dimension in project instrumentation-java by census-instrumentation.
the class SignalFxSessionAdaptorTest method adaptMetricIntoDatapoints.
@Test
public void adaptMetricIntoDatapoints() {
List<DataPoint> datapoints = SignalFxSessionAdaptor.adapt(METRIC);
assertEquals(2, datapoints.size());
for (DataPoint dp : datapoints) {
assertEquals(METRIC_NAME, dp.getMetric());
assertEquals(MetricType.CUMULATIVE_COUNTER, dp.getMetricType());
assertEquals(1, dp.getDimensionsCount());
assertTrue(dp.hasValue());
assertFalse(dp.hasSource());
Datum datum = dp.getValue();
assertTrue(datum.hasIntValue());
assertFalse(datum.hasDoubleValue());
assertFalse(datum.hasStrValue());
Dimension dimension = dp.getDimensions(0);
assertEquals(LABEL_KEY_1.getKey(), dimension.getKey());
switch(dimension.getValue()) {
case "value1":
assertEquals(2L, datum.getIntValue());
break;
case "value2":
assertEquals(3L, datum.getIntValue());
break;
default:
fail("unexpected dimension value");
}
}
}
use of com.signalfx.metrics.protobuf.SignalFxProtocolBuffers.Dimension in project instrumentation-java by census-instrumentation.
the class SignalFxSessionAdaptorTest method createDimension.
@Test
public void createDimension() {
Dimension dimension = SignalFxSessionAdaptor.createDimension(LABEL_KEY_1, LABEL_VALUE_1);
assertEquals(LABEL_KEY_1.getKey(), dimension.getKey());
assertEquals(LABEL_VALUE_1.getValue(), dimension.getValue());
}
use of com.signalfx.metrics.protobuf.SignalFxProtocolBuffers.Dimension in project instrumentation-java by census-instrumentation.
the class SignalFxSessionAdaptorTest method adaptMetricWithEmptyLabelValueIntoDatapoints.
@Test
public void adaptMetricWithEmptyLabelValueIntoDatapoints() {
List<DataPoint> datapoints = SignalFxSessionAdaptor.adapt(METRIC_1);
assertEquals(2, datapoints.size());
for (DataPoint dp : datapoints) {
assertEquals(METRIC_NAME, dp.getMetric());
assertEquals(MetricType.CUMULATIVE_COUNTER, dp.getMetricType());
assertTrue(dp.hasValue());
assertFalse(dp.hasSource());
Datum datum = dp.getValue();
assertTrue(datum.hasIntValue());
assertFalse(datum.hasDoubleValue());
assertFalse(datum.hasStrValue());
switch(dp.getDimensionsCount()) {
case 0:
assertEquals(3L, datum.getIntValue());
break;
case 1:
Dimension dimension = dp.getDimensions(0);
assertEquals(LABEL_KEY_1.getKey(), dimension.getKey());
assertEquals(LABEL_VALUE_1.getValue(), dimension.getValue());
assertEquals(2L, datum.getIntValue());
break;
default:
fail("Unexpected number of dimensions on the created datapoint");
break;
}
}
}
Aggregations