// getLabelKeys returns a slice of *wire.LabelKeys based on the keys // in data. private static slice <ptr <wire.LabelKey> > getLabelKeys(metric.Data data) { switch (data.type()) { case ptr <metric.Int64Data> d: return(infoKeysToLabelKeys(d.Info.Keys)); break; case ptr <metric.Float64Data> d: return(infoKeysToLabelKeys(d.Info.Keys)); break; case ptr <metric.HistogramInt64Data> d: return(infoKeysToLabelKeys(d.Info.Keys)); break; case ptr <metric.HistogramFloat64Data> d: return(infoKeysToLabelKeys(d.Info.Keys)); break; } return(null); }
// getDescription returns the description of data. private static @string getDescription(metric.Data data) { switch (data.type()) { case ptr <metric.Int64Data> d: return(d.Info.Description); break; case ptr <metric.Float64Data> d: return(d.Info.Description); break; case ptr <metric.HistogramInt64Data> d: return(d.Info.Description); break; case ptr <metric.HistogramFloat64Data> d: return(d.Info.Description); break; } return(""); }
// dataToMetricDescriptorType returns a wire.MetricDescriptor_Type based on the // underlying type of data. private static wire.MetricDescriptor_Type dataToMetricDescriptorType(metric.Data data) { switch (data.type()) { case ptr <metric.Int64Data> d: if (d.IsGauge) { return(wire.MetricDescriptor_GAUGE_INT64); } return(wire.MetricDescriptor_CUMULATIVE_INT64); break; case ptr <metric.Float64Data> d: if (d.IsGauge) { return(wire.MetricDescriptor_GAUGE_DOUBLE); } return(wire.MetricDescriptor_CUMULATIVE_DOUBLE); break; case ptr <metric.HistogramInt64Data> d: return(wire.MetricDescriptor_CUMULATIVE_DISTRIBUTION); break; case ptr <metric.HistogramFloat64Data> d: return(wire.MetricDescriptor_CUMULATIVE_DISTRIBUTION); break; } return(wire.MetricDescriptor_UNSPECIFIED); }