使用Client Java构建Exporter程序
自定义Collector
compile 'io.prometheus:simpleclient:0.3.0'public class YourCustomCollector extends Collector {
public List<MetricFamilySamples> collect() {
List<MetricFamilySamples> mfs = new ArrayList<MetricFamilySamples>();
String metricName = "my_guage_1";
// Your code to get metrics
MetricFamilySamples.Sample sample = new MetricFamilySamples.Sample(metricName, Arrays.asList("l1"), Arrays.asList("v1"), 4);
MetricFamilySamples.Sample sample2 = new MetricFamilySamples.Sample(metricName, Arrays.asList("l1", "l2"), Arrays.asList("v1", "v2"), 3);
MetricFamilySamples samples = new MetricFamilySamples(metricName, Type.GAUGE, "help", Arrays.asList(sample, sample2));
mfs.add(samples);
return mfs;
}
}使用HTTP Server暴露样本数据

使用内置的Collector
在业务代码中进行监控埋点
简单类型Gauge和Counter
复杂类型Summary和Histogram
与PushGateway集成
Last updated