public AccumulatingJsonSamplesOutputer(final TimeAggregationMode timeAggregationMode, final TimelineEventHandler timelineEventHandler, final TimelineDao timelineDao, final InternalTenantContext context) { super(timelineEventHandler, timelineDao, context); this.accumulatorSampleConsumer = new AccumulatorSampleConsumer(timeAggregationMode, new CSVSampleProcessor()); }
public static String getSamplesAsCSV(final SampleCoder sampleCoder, final TimelineChunk chunk, @Nullable final DateTime startTime, @Nullable final DateTime endTime) throws IOException { final CSVSampleProcessor processor = new CSVSampleProcessor(startTime, endTime); return getSamplesAsCSV(sampleCoder, chunk, processor); }
private DecimatingSampleFilter createDecimatingSampleFilter(final Integer outputCount, final DecimationMode decimationMode, final DateTime startTime, final DateTime endTime) { final DecimatingSampleFilter rangeSampleProcessor; if (outputCount == null) { rangeSampleProcessor = null; } else { // TODO Fix the polling interval rangeSampleProcessor = new DecimatingSampleFilter(startTime, endTime, outputCount, new TimeSpan("1s"), decimationMode, new CSVSampleProcessor()); } return rangeSampleProcessor; } }
@Test(groups = "fast") public void testDailyAggregation() throws Exception { clock.setTime(new DateTime(2012, 12, 1, 12, 40, DateTimeZone.UTC)); final DateTime start = clock.getUTCNow(); final AccumulatorSampleConsumer sampleConsumer = new AccumulatorSampleConsumer(TimeAggregationMode.DAYS, new CSVSampleProcessor()); // 5 for day 1 sampleConsumer.processOneSample(start, SampleOpcode.DOUBLE, (double) 1); sampleConsumer.processOneSample(start.plusHours(4), SampleOpcode.DOUBLE, (double) 4); // 1 for day 2 sampleConsumer.processOneSample(start.plusDays(1), SampleOpcode.DOUBLE, (double) 1); // 10 and 20 for day 3 (with different opcode) sampleConsumer.processOneSample(start.plusDays(2), SampleOpcode.DOUBLE, (double) 10); sampleConsumer.processOneSample(start.plusDays(2), SampleOpcode.INT, 20); Assert.assertEquals(sampleConsumer.flush(), "1354320000,5.0,1354406400,1.0,1354492800,10.0,1354492800,20.0"); } }