use of wavefront.report.ReportPoint in project java by wavefrontHQ.
the class GraphiteDecoderTest method testNumberLookingTagValue2.
@Test
public void testNumberLookingTagValue2() {
GraphiteDecoder decoder = new GraphiteDecoder(emptyCustomSourceTags);
List<ReportPoint> out = Lists.newArrayList();
decoder.decodeReportPoints("vm.guest.virtualDisk.mediumSeeks.latest 4.00 1439250320 " + "host=iadprdhyp02.iad.corp.com version=\"1.0.0\\\"-030051.d0e485f\"", out, "customer");
ReportPoint point = out.get(0);
assertEquals("customer", point.getTable());
assertEquals("vm.guest.virtualDisk.mediumSeeks.latest", point.getMetric());
assertEquals("iadprdhyp02.iad.corp.com", point.getHost());
assertEquals("1.0.0\"-030051.d0e485f", point.getAnnotations().get("version"));
assertEquals(4.0, point.getValue());
}
use of wavefront.report.ReportPoint in project java by wavefrontHQ.
the class HistogramDecoderTest method testMultipleBuckets.
@Test
public void testMultipleBuckets() {
HistogramDecoder decoder = new HistogramDecoder();
List<ReportPoint> out = new ArrayList<>();
decoder.decodeReportPoints("!M 1471988653 #1 3.1416 #1 2.7183 TestMetric", out, "customer");
assertThat(out).isNotEmpty();
ReportPoint p = out.get(0);
assertThat(p.getValue()).isNotNull();
assertThat(p.getValue().getClass()).isEqualTo(Histogram.class);
Histogram h = (Histogram) p.getValue();
assertThat(h.getDuration()).isEqualTo(DateUtils.MILLIS_PER_MINUTE);
assertThat(h.getBins()).isNotNull();
assertThat(h.getBins()).isNotEmpty();
assertThat(h.getBins()).containsExactly(3.1416D, 2.7183D);
assertThat(h.getCounts()).isNotNull();
assertThat(h.getCounts()).isNotEmpty();
assertThat(h.getCounts()).containsExactly(1, 1);
}
use of wavefront.report.ReportPoint in project java by wavefrontHQ.
the class HistogramDecoderTest method testBasicMessage.
@Test
public void testBasicMessage() {
HistogramDecoder decoder = new HistogramDecoder();
List<ReportPoint> out = new ArrayList<>();
decoder.decodeReportPoints("!M 1471988653 #3 123.237 TestMetric source=Test key=value", out, "customer");
assertThat(out).isNotEmpty();
ReportPoint p = out.get(0);
assertThat(p.getMetric()).isEqualTo("TestMetric");
// Should be converted to Millis and pinned to the beginning of the corresponding minute
assertThat(p.getTimestamp()).isEqualTo(1471988640000L);
assertThat(p.getValue()).isNotNull();
assertThat(p.getValue().getClass()).isEqualTo(Histogram.class);
assertThat(p.getHost()).isEqualTo("Test");
assertThat(p.getTable()).isEqualTo("customer");
assertThat(p.getAnnotations()).isNotNull();
assertThat(p.getAnnotations()).containsEntry("key", "value");
Histogram h = (Histogram) p.getValue();
assertThat(h.getDuration()).isEqualTo(DateUtils.MILLIS_PER_MINUTE);
assertThat(h.getBins()).isNotNull();
assertThat(h.getBins()).isNotEmpty();
assertThat(h.getBins()).containsExactly(123.237D);
assertThat(h.getCounts()).isNotNull();
assertThat(h.getCounts()).isNotEmpty();
assertThat(h.getCounts()).containsExactly(3);
}
use of wavefront.report.ReportPoint in project java by wavefrontHQ.
the class HistogramDecoderTest method testTagKey.
@Test
public void testTagKey() {
HistogramDecoder decoder = new HistogramDecoder();
List<ReportPoint> out = new ArrayList<>();
decoder.decodeReportPoints("!M 1471988653 #3 123.237 TestMetric source=Test tag=value", out, "customer");
assertThat(out).isNotEmpty();
ReportPoint p = out.get(0);
assertThat(p.getAnnotations()).isNotNull();
assertThat(p.getAnnotations()).containsEntry("_tag", "value");
}
use of wavefront.report.ReportPoint in project java by wavefrontHQ.
the class HistogramDecoderTest method testMissingTimestamp.
@Test
public void testMissingTimestamp() {
// Note - missingTimestamp to port 40,000 is no longer invalid - see MONIT-6430 for more details
HistogramDecoder decoder = new HistogramDecoder();
List<ReportPoint> out = new ArrayList<>();
decoder.decodeReportPoints("!M #3 123.237 TestMetric source=Test tag=value", out, "customer");
assertThat(out).isNotEmpty();
long expectedTimestamp = Clock.now();
ReportPoint p = out.get(0);
assertThat(p.getMetric()).isEqualTo("TestMetric");
assertThat(p.getValue()).isNotNull();
assertThat(p.getValue().getClass()).isEqualTo(Histogram.class);
// Should be converted to Millis and pinned to the beginning of the corresponding minute
long duration = ((Histogram) p.getValue()).getDuration();
expectedTimestamp = (expectedTimestamp / duration) * duration;
assertThat(p.getTimestamp()).isEqualTo(expectedTimestamp);
assertThat(p.getHost()).isEqualTo("Test");
assertThat(p.getTable()).isEqualTo("customer");
assertThat(p.getAnnotations()).isNotNull();
assertThat(p.getAnnotations()).containsEntry("_tag", "value");
Histogram h = (Histogram) p.getValue();
assertThat(h.getDuration()).isEqualTo(DateUtils.MILLIS_PER_MINUTE);
assertThat(h.getBins()).isNotNull();
assertThat(h.getBins()).isNotEmpty();
assertThat(h.getBins()).containsExactly(123.237D);
assertThat(h.getCounts()).isNotNull();
assertThat(h.getCounts()).isNotEmpty();
assertThat(h.getCounts()).containsExactly(3);
}
Aggregations