@Override public String getName() { return timeSeries.getName(); }
@Test public void testParse() throws Exception { try (InputStream stream = GraphiteFormatParserTest.class.getResourceAsStream("/prometheus-text.txt")) { assertNotNull(stream); List<MetricTimeSeries> series = Lists.newArrayList(sut.parse(stream)); assertThat(series.size(), is(3)); MetricTimeSeries metricWithoutTimestampAndLabel = series.stream().filter(s -> s.getName().equals("metric_without_timestamp_and_labels")).findFirst().get(); assertThat(metricWithoutTimestampAndLabel.getTime(0), is(NOW.toEpochMilli())); assertThat(metricWithoutTimestampAndLabel.getValue(0), is(12.47)); MetricTimeSeries httpRequestsTotal200 = series.stream().filter(s -> s.getName().equals("http_requests_total") && s.getAttributesReference().get("code").equals("200")).findFirst().get(); assertThat(httpRequestsTotal200.getTime(0), is(1395066363000L)); assertThat(httpRequestsTotal200.getValue(0), is(1027.0)); MetricTimeSeries httpRequestsTotal400 = series.stream().filter(s -> s.getName().equals("http_requests_total") && s.getAttributesReference().get("code").equals("400")).findFirst().get(); assertThat(httpRequestsTotal400.getTime(0), is(1395066363000L)); assertThat(httpRequestsTotal400.getValue(0), is(3.0)); } } }
@Test public void testSingle() throws Exception { try (InputStream stream = GraphiteFormatParserTest.class.getResourceAsStream("/opentsdb-http-api-single.json")) { assertNotNull(stream); List<MetricTimeSeries> series = Lists.newArrayList(sut.parse(stream)); // We should have one metric assertThat(series.size(), is(1)); MetricTimeSeries metric = series.get(0); assertThat(metric.getName(), is("sys.cpu.nice")); assertThat(metric.getTimestamps().size(), is(1)); assertThat(metric.getValues().get(0), is(18.0)); assertThat(metric.getTimestamps().get(0), is(1346846400000L)); } }
@Test public void test() throws Exception { try (InputStream stream = KairosDbFormatParserTest.class.getResourceAsStream("/kairosdb.json")) { assertNotNull(stream); List<MetricTimeSeries> series = Lists.newArrayList(sut.parse(stream)); // We should have two metrics assertThat(series.size(), is(2)); MetricTimeSeries first = series.get(0); assertThat(first.getName(), is("archive.file.tracked")); assertThat(first.getTimestamps().size(), is(1)); assertThat(first.getValues().get(0), is(123.0)); assertThat(first.getTimestamps().get(0), is(1349109376L)); assertThat(first.getAttributesReference().get("host"), is("test")); MetricTimeSeries second = series.get(1); assertThat(second.getName(), is("archive.file.search")); assertThat(second.getTimestamps().size(), is(1)); assertThat(second.getValues().get(0), is(32.1)); assertThat(second.getTimestamps().get(0), is(1349109665L)); assertThat(second.getAttributesReference().get("host"), is("test")); } } }
@Test public void testMultiple() throws Exception { try (InputStream stream = GraphiteFormatParserTest.class.getResourceAsStream("/opentsdb-http-api-multiple.json")) { assertNotNull(stream); List<MetricTimeSeries> series = Lists.newArrayList(sut.parse(stream)); // We should have two metrics assertThat(series.size(), is(2)); MetricTimeSeries first = series.get(0); assertThat(first.getName(), is("sys.cpu.nice")); assertThat(first.getTimestamps().size(), is(2)); assertThat(first.getValues().get(0), is(1.0)); assertThat(first.getTimestamps().get(0), is(1346846400000L)); assertThat(first.getValues().get(1), is(2.0)); assertThat(first.getTimestamps().get(1), is(1346846400100L)); MetricTimeSeries second = series.get(1); assertThat(second.getName(), is("sys.cpu.load")); assertThat(second.getTimestamps().size(), is(1)); assertThat(second.getValues().get(0), is(2.0)); assertThat(second.getTimestamps().get(0), is(1346846400000L)); } } }
/** * Copies a given metric time series. * * @param ts the time series * @return builder preconfigured with values from the given time series */ public MetricTimeSeries.Builder copy(MetricTimeSeries ts) { MetricTimeSeries.Builder result = new MetricTimeSeries.Builder(ts.getName(), ts.getType()); result.start(ts.getStart()); result.end(ts.getEnd()); result.points(ts.getTimestamps(), ts.getValues()); result.attributes(ts.attributes()); return result; } }
assertThat(cpu0series.getName(), is("sys.cpu.user")); assertThat(cpu0series.getTimestamps().size(), is(2)); assertThat(cpu0series.getTimestamps().get(0), is(1356998400000L)); assertThat(cpu1series.getName(), is("sys.cpu.user")); assertThat(cpu1series.getTimestamps().size(), is(1)); assertThat(cpu1series.getTimestamps().get(0), is(1356998400000L)); assertThat(cpu2series.getName(), is("sys.cpu.user")); assertThat(cpu2series.getTimestamps().size(), is(1)); assertThat(cpu2series.getTimestamps().get(0), is(1356998400000L));
name = ts.getName();
assertThat(server01.getName(), is("cpu_load_short")); assertThat(server01.getTimestamps().size(), is(1)); assertThat(server01.getTimestamps().get(0), is(NOW.toEpochMilli())); assertThat(server02.getName(), is("cpu_load_short")); assertThat(server02.getTimestamps().size(), is(1)); assertThat(server02.getTimestamps().get(0), is(1422568543702900L)); assertThat(server03.getName(), is("cpu_load_long")); assertThat(server03.getTimestamps().size(), is(2)); assertThat(server03.getTimestamps().get(0), is(1422568543702900L));
assertThat(bashSeries.getName(), is("test.bash.stats")); assertThat(bashSeries.getTimestamps().size(), is(5)); assertThat(bashSeries.getTimestamps().get(0), is(1475754111000L)); assertThat(psSeries.getName(), is("test.ps.stats")); assertThat(psSeries.getTimestamps().size(), is(4)); assertThat(psSeries.getTimestamps().get(0), is(1475754116000L));