private Metric<Number> toSummaryMetric(DistributionSummary summary) { return new Metric<Number>(summary.getId(), summary.takeSnapshot()); }
@Override protected void doProcess(Exchange exchange, MicrometerEndpoint endpoint, DistributionSummary summary) { Double value = simple(exchange, endpoint.getValue(), Double.class); Double finalValue = getDoubleHeader(exchange.getIn(), HEADER_HISTOGRAM_VALUE, value); if (finalValue != null) { summary.record(finalValue); } else { LOG.warn("Cannot update histogram \"{}\" with null value", summary.getId().getName()); } } }
Stream<String> writeSummary(DistributionSummary summary) { long wallTime = config().clock().wallTime(); return Stream.of( writeMetric(idWithSuffix(summary.getId(), "count"), wallTime, summary.count()), writeMetric(idWithSuffix(summary.getId(), "avg"), wallTime, summary.mean()), writeMetric(idWithSuffix(summary.getId(), "sum"), wallTime, summary.totalAmount()), writeMetric(idWithSuffix(summary.getId(), "max"), wallTime, summary.max()) ); }
private Stream<MetricDatum> summaryData(DistributionSummary summary) { final Stream.Builder<MetricDatum> metrics = Stream.builder(); metrics.add(metricDatum(summary.getId(), "sum", summary.totalAmount())); metrics.add(metricDatum(summary.getId(), "count", summary.count())); metrics.add(metricDatum(summary.getId(), "avg", summary.mean())); metrics.add(metricDatum(summary.getId(), "max", summary.max())); return metrics.build(); }
@Nullable private Optional<String> writeSummary(DistributionSummary summary) { HistogramSnapshot snapshot = summary.takeSnapshot(); if (snapshot.count() > 0) { return Optional.of(write(summary.getId(), "distributionSummary", Fields.Count.tag(), decimal(summary.count()), Fields.Sum.tag(), decimal(summary.totalAmount()), Fields.Max.tag(), decimal(summary.max()))); } return Optional.empty(); }
private Stream<String> writeSummary(DistributionSummary summary) { return Stream.of( event(summary.getId(), new Attribute("count", summary.count()), new Attribute("avg", summary.mean()), new Attribute("total", summary.totalAmount()), new Attribute("max", summary.max()) ) ); }
private Stream<String> writeSummary(DistributionSummary summary) { final long wallTime = clock.wallTime(); final Stream.Builder<String> metrics = Stream.builder(); Meter.Id id = summary.getId(); addMetric(metrics, id, "sum", wallTime, summary.totalAmount()); addMetric(metrics, id, "count", wallTime, summary.count()); addMetric(metrics, id, "avg", wallTime, summary.mean()); addMetric(metrics, id, "max", wallTime, summary.max()); return metrics.build(); }
private Stream<String> writeSummary(DistributionSummary summary, Map<String, DatadogMetricMetadata> metadata) { final long wallTime = clock.wallTime(); final Stream.Builder<String> metrics = Stream.builder(); Meter.Id id = summary.getId(); metrics.add(writeMetric(id, "sum", wallTime, summary.totalAmount())); metrics.add(writeMetric(id, "count", wallTime, summary.count())); metrics.add(writeMetric(id, "avg", wallTime, summary.mean())); metrics.add(writeMetric(id, "max", wallTime, summary.max())); addToMetadataList(metadata, id, "sum", Statistic.TOTAL, null); addToMetadataList(metadata, id, "count", Statistic.COUNT, "occurrence"); addToMetadataList(metadata, id, "avg", Statistic.VALUE, null); addToMetadataList(metadata, id, "max", Statistic.MAX, null); return metrics.build(); }