class GoogleMonitoringIngester extends DataIngester {

    Datum processRecord(Record rec) throws Exception {
        int idx = 0;
        RealVector metricVec = new ArrayRealVector(metrics.size());
        for (String metric : metrics) {
            metricVec.setEntry(idx, rec.values.get(metric));
            ++idx;
        }

        idx = 1;
        List<Integer> attrList = new ArrayList<>(attributes.size());
        for (String attr : attributes) {
            attrList.add(conf.getEncoder().getIntegerEncoding(idx, rec.attributes.get(attr)));
            ++idx;
        }

        return new Datum(attrList, metricVec);
    }

    public  GoogleMonitoringIngester(MacroBaseConf conf);

}