@Override public MetricsRecordBuilderImpl addRecord(MetricsInfo info) { boolean acceptable = recordFilter == null || recordFilter.accepts(info.name()); MetricsRecordBuilderImpl rb = new MetricsRecordBuilderImpl(this, info, recordFilter, metricFilter, acceptable); if (acceptable) rbs.add(rb); return rb; }
@Override public MetricsRecordBuilderImpl addCounter(MetricsInfo info, int value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricCounterInt(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, long value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeLong(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, float value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeFloat(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, int value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeInt(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addCounter(MetricsInfo info, long value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricCounterLong(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, double value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeDouble(info, value)); } return this; }
public MetricsRecordImpl getRecord() { if (acceptable && (recordFilter == null || recordFilter.accepts(tags))) { return new MetricsRecordImpl(recInfo, timestamp, tags(), metrics()); } return null; }
/** * Sample all the sources for a snapshot of metrics/tags * @return the metrics buffer containing the snapshot */ @VisibleForTesting public synchronized MetricsBuffer sampleMetrics() { collector.clear(); MetricsBufferBuilder bufferBuilder = new MetricsBufferBuilder(); for (Entry<String, MetricsSourceAdapter> entry : sources.entrySet()) { if (sourceFilter == null || sourceFilter.accepts(entry.getKey())) { snapshotMetrics(entry.getValue(), bufferBuilder); } } if (publishSelfMetrics) { snapshotMetrics(sysSource, bufferBuilder); } MetricsBuffer buffer = bufferBuilder.get(); return buffer; }
@Override public void consume(MetricsBuffer buffer) { long ts = 0; for (MetricsBuffer.Entry entry : buffer) { if (sourceFilter == null || sourceFilter.accepts(entry.name())) { for (MetricsRecordImpl record : entry.records()) { if ((context == null || context.equals(record.context())) && (recordFilter == null || recordFilter.accepts(record))) { if (LOG.isDebugEnabled()) { LOG.debug("Pushing record "+ entry.name() +"."+ record.context() + "."+ record.name() +" to "+ name); } sink.putMetrics(metricFilter == null ? record : new MetricsRecordFiltered(record, metricFilter)); if (ts == 0) ts = record.timestamp(); } } } } if (ts > 0) { sink.flush(); latency.add(Time.now() - ts); } if (buffer instanceof WaitableMetricsBuffer) { ((WaitableMetricsBuffer)buffer).notifyAnyWaiters(); } LOG.debug("Done"); }
@Override public MetricsRecordBuilderImpl addRecord(MetricsInfo info) { boolean acceptable = recordFilter == null || recordFilter.accepts(info.name()); MetricsRecordBuilderImpl rb = new MetricsRecordBuilderImpl(this, info, recordFilter, metricFilter, acceptable); if (acceptable) rbs.add(rb); return rb; }
@Override public MetricsRecordBuilderImpl addCounter(MetricsInfo info, int value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricCounterInt(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addCounter(MetricsInfo info, long value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricCounterLong(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, float value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeFloat(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, float value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeFloat(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addGauge(MetricsInfo info, double value) { if (acceptable && (metricFilter == null || metricFilter.accepts(info.name()))) { metrics.add(new MetricGaugeDouble(info, value)); } return this; }
@Override public MetricsRecordBuilderImpl addRecord(MetricsInfo info) { boolean acceptable = recordFilter == null || recordFilter.accepts(info.name()); MetricsRecordBuilderImpl rb = new MetricsRecordBuilderImpl(this, info, recordFilter, metricFilter, acceptable); if (acceptable) rbs.add(rb); return rb; }
public MetricsRecordImpl getRecord() { if (acceptable && (recordFilter == null || recordFilter.accepts(tags))) { return new MetricsRecordImpl(recInfo, timestamp, tags(), metrics()); } return null; }