package com.telenav.logshed.collector.muxdemux; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import org.apache.avro.file.DataFileStream; import org.apache.avro.generic.GenericData; import org.apache.avro.generic.GenericData.Record; import org.apache.avro.generic.GenericDatumReader; import org.apache.avro.io.DatumReader; import com.telenav.logshed.collector.utils.LogshedCollectorUtils; public class MuxDemuxValidate { public static void validateMuxDemuxFile(String appid, long timestamp) throws IOException { DatumReader<GenericData.Record> reader = new GenericDatumReader<Record>( LogshedCollectorUtils.getResourceSchema()); String outpath = LogshedCollectorUtils.getLogshedKeyHour(timestamp, appid); String MUXDEMUX_FILE = outpath.concat("part-r-00000"); InputStream in = new BufferedInputStream(new FileInputStream(MUXDEMUX_FILE)); DataFileStream<GenericData.Record> muxdemux = new DataFileStream<GenericData.Record>(in, reader); for (GenericData.Record r : muxdemux) { System.out.println(r.toString()); } } public static void validateCollectorsFile(String filePath) throws IOException { DatumReader<GenericData.Record> reader = new GenericDatumReader<Record>( LogshedCollectorUtils.getResourceSchema()); InputStream in = new BufferedInputStream(new FileInputStream(filePath)); DataFileStream<GenericData.Record> muxdemux = new DataFileStream<GenericData.Record>(in, reader); for (GenericData.Record r : muxdemux) { System.out.println(r.toString()); } } }