@Override public double getStdDev() { return snapshot.getStdDev(); }
/** @return an abbreviated summary of {@code hist}. */ public static String getShortHistogramReport(final Histogram hist) { Snapshot sn = hist.getSnapshot(); return "mean=" + DOUBLE_FORMAT.format(sn.getMean()) + ", min=" + DOUBLE_FORMAT.format(sn.getMin()) + ", max=" + DOUBLE_FORMAT.format(sn.getMax()) + ", stdDev=" + DOUBLE_FORMAT.format(sn.getStdDev()) + ", 95th=" + DOUBLE_FORMAT.format(sn.get95thPercentile()) + ", 99th=" + DOUBLE_FORMAT.format(sn.get99thPercentile()); }
private void writeSnapshot(JsonGenerator json, Snapshot snapshot) throws IOException { json.writeNumberField("max", snapshot.getMax()); json.writeNumberField("mean", snapshot.getMean()); json.writeNumberField("min", snapshot.getMin()); json.writeNumberField("stddev", snapshot.getStdDev()); json.writeNumberField("median", snapshot.getMedian()); json.writeNumberField("p75", snapshot.get75thPercentile()); json.writeNumberField("p95", snapshot.get95thPercentile()); json.writeNumberField("p98", snapshot.get98thPercentile()); json.writeNumberField("p99", snapshot.get99thPercentile()); json.writeNumberField("p999", snapshot.get999thPercentile()); }
/** @return a summary of {@code hist}. */ public static String getHistogramReport(final Histogram hist) { Snapshot sn = hist.getSnapshot(); return "mean=" + DOUBLE_FORMAT.format(sn.getMean()) + ", min=" + DOUBLE_FORMAT.format(sn.getMin()) + ", max=" + DOUBLE_FORMAT.format(sn.getMax()) + ", stdDev=" + DOUBLE_FORMAT.format(sn.getStdDev()) + ", 50th=" + DOUBLE_FORMAT.format(sn.getMedian()) + ", 75th=" + DOUBLE_FORMAT.format(sn.get75thPercentile()) + ", 95th=" + DOUBLE_FORMAT.format(sn.get95thPercentile()) + ", 99th=" + DOUBLE_FORMAT.format(sn.get99thPercentile()) + ", 99.9th=" + DOUBLE_FORMAT.format(sn.get999thPercentile()) + ", 99.99th=" + DOUBLE_FORMAT.format(sn.getValue(0.9999)) + ", 99.999th=" + DOUBLE_FORMAT.format(sn.getValue(0.99999)); }
private void printHistogram(Histogram histogram) { Snapshot snapshot = histogram.getSnapshot(); output.printf(locale, " min = %d%n", snapshot.getMin()); output.printf(locale, " max = %d%n", snapshot.getMax()); output.printf(locale, " mean = %2.2f%n", snapshot.getMean()); output.printf(locale, " stddev = %2.2f%n", snapshot.getStdDev()); output.printf(locale, " median = %2.2f%n", snapshot.getMedian()); output.printf(locale, " 75%% <= %2.2f%n", snapshot.get75thPercentile()); output.printf(locale, " 95%% <= %2.2f%n", snapshot.get95thPercentile()); output.printf(locale, " 98%% <= %2.2f%n", snapshot.get98thPercentile()); output.printf(locale, " 99%% <= %2.2f%n", snapshot.get99thPercentile()); output.printf(locale, " 99.9%% <= %2.2f%n", snapshot.get999thPercentile()); output.printf(locale, " count = %d%n", histogram.getCount()); } }
@Override double apply(Histogram hist) { return hist.getSnapshot().getStdDev(); } },
private void printHistogram(Histogram histogram) { this.outputBufferPrintStream.printf(locale, " count = %d%n", histogram.getCount()); Snapshot snapshot = histogram.getSnapshot(); this.outputBufferPrintStream.printf(locale, " min = %d%n", snapshot.getMin()); this.outputBufferPrintStream.printf(locale, " max = %d%n", snapshot.getMax()); this.outputBufferPrintStream.printf(locale, " mean = %2.2f%n", snapshot.getMean()); this.outputBufferPrintStream.printf(locale, " stddev = %2.2f%n", snapshot.getStdDev()); this.outputBufferPrintStream.printf(locale, " median = %2.2f%n", snapshot.getMedian()); this.outputBufferPrintStream.printf(locale, " 75%% <= %2.2f%n", snapshot.get75thPercentile()); this.outputBufferPrintStream.printf(locale, " 95%% <= %2.2f%n", snapshot.get95thPercentile()); this.outputBufferPrintStream.printf(locale, " 98%% <= %2.2f%n", snapshot.get98thPercentile()); this.outputBufferPrintStream.printf(locale, " 99%% <= %2.2f%n", snapshot.get99thPercentile()); this.outputBufferPrintStream.printf(locale, " 99.9%% <= %2.2f%n", snapshot.get999thPercentile()); }
/** @return pretty summary of {@code hist}. */ public static String getPrettyHistogramReport(final Histogram h) { Snapshot sn = h.getSnapshot(); return "Mean = " + DOUBLE_FORMAT.format(sn.getMean()) + "\n" + "Min = " + DOUBLE_FORMAT.format(sn.getMin()) + "\n" + "Max = " + DOUBLE_FORMAT.format(sn.getMax()) + "\n" + "StdDev = " + DOUBLE_FORMAT.format(sn.getStdDev()) + "\n" + "50th = " + DOUBLE_FORMAT.format(sn.getMedian()) + "\n" + "75th = " + DOUBLE_FORMAT.format(sn.get75thPercentile()) + "\n" + "95th = " + DOUBLE_FORMAT.format(sn.get95thPercentile()) + "\n" + "99th = " + DOUBLE_FORMAT.format(sn.get99thPercentile()) + "\n" + "99.9th = " + DOUBLE_FORMAT.format(sn.get999thPercentile()) + "\n" + "99.99th = " + DOUBLE_FORMAT.format(sn.getValue(0.9999)) + "\n" + "99.999th = " + DOUBLE_FORMAT.format(sn.getValue(0.99999)); } }
public static Map<String, Object> buildHistogramMap(Histogram h) { Map<String, Object> metrics = Maps.newHashMap(); if (h == null) { return metrics; } Map<String, Object> time = Maps.newHashMap(); time.put("max", h.getSnapshot().getMax()); time.put("min", h.getSnapshot().getMin()); time.put("mean", (long) h.getSnapshot().getMean()); time.put("95th_percentile", (long) h.getSnapshot().get95thPercentile()); time.put("98th_percentile", (long) h.getSnapshot().get98thPercentile()); time.put("99th_percentile", (long) h.getSnapshot().get99thPercentile()); time.put("std_dev", (long) h.getSnapshot().getStdDev()); metrics.put("time", time); metrics.put("count", h.getCount()); return metrics; }
private void writeTimedSnapshot(JsonGenerator json, Snapshot snapshot) throws IOException { json.writeNumberField("max", convertDuration(snapshot.getMax())); json.writeNumberField("mean", convertDuration(snapshot.getMean())); json.writeNumberField("min", convertDuration(snapshot.getMin())); json.writeNumberField("stddev", convertDuration(snapshot.getStdDev())); json.writeNumberField("median", convertDuration(snapshot.getMedian())); json.writeNumberField("p75", convertDuration(snapshot.get75thPercentile())); json.writeNumberField("p95", convertDuration(snapshot.get95thPercentile())); json.writeNumberField("p98", convertDuration(snapshot.get98thPercentile())); json.writeNumberField("p99", convertDuration(snapshot.get99thPercentile())); json.writeNumberField("p999", convertDuration(snapshot.get999thPercentile())); }
private void printHistogram(Histogram histogram) { printIfEnabled(MetricAttribute.COUNT, String.format(locale, " count = %d", histogram.getCount())); Snapshot snapshot = histogram.getSnapshot(); printIfEnabled(MetricAttribute.MIN, String.format(locale, " min = %d", snapshot.getMin())); printIfEnabled(MetricAttribute.MAX, String.format(locale, " max = %d", snapshot.getMax())); printIfEnabled(MetricAttribute.MEAN, String.format(locale, " mean = %2.2f", snapshot.getMean())); printIfEnabled(MetricAttribute.STDDEV, String.format(locale, " stddev = %2.2f", snapshot.getStdDev())); printIfEnabled(MetricAttribute.P50, String.format(locale, " median = %2.2f", snapshot.getMedian())); printIfEnabled(MetricAttribute.P75, String.format(locale, " 75%% <= %2.2f", snapshot.get75thPercentile())); printIfEnabled(MetricAttribute.P95, String.format(locale, " 95%% <= %2.2f", snapshot.get95thPercentile())); printIfEnabled(MetricAttribute.P98, String.format(locale, " 98%% <= %2.2f", snapshot.get98thPercentile())); printIfEnabled(MetricAttribute.P99, String.format(locale, " 99%% <= %2.2f", snapshot.get99thPercentile())); printIfEnabled(MetricAttribute.P999, String.format(locale, " 99.9%% <= %2.2f", snapshot.get999thPercentile())); }
private void reportSnapshot(List<Point> points, String prefix, String name, Snapshot snapshot, long timestamp, boolean convertDuration) throws IOException { String baseMetricName = getKey(prefix, name); points.add(buildMetricAsPoint(getKey(baseMetricName, MIN), snapshot.getMin(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, MAX), snapshot.getMax(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, MEAN), snapshot.getMean(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, STDDEV), snapshot.getStdDev(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, MEDIAN), snapshot.getMedian(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, PERCENTILE_75TH), snapshot.get75thPercentile(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, PERCENTILE_95TH), snapshot.get95thPercentile(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, PERCENTILE_98TH), snapshot.get98thPercentile(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, PERCENTILE_99TH), snapshot.get99thPercentile(), convertDuration, timestamp)); points.add(buildMetricAsPoint(getKey(baseMetricName, PERCENTILE_999TH), snapshot.get999thPercentile(), convertDuration, timestamp)); }
private String reportHistogramSnapshot(Snapshot snapshot) { return "min=" + snapshot.getMin() + "," + "max=" + snapshot.getMax() + "," + "mean=" + snapshot.getMean() + "," + "p50=" + snapshot.getMedian() + "," + "std=" + snapshot.getStdDev() + "," + "p25=" + snapshot.getValue(0.25) + "," + "p75=" + snapshot.get75thPercentile() + "," + "p95=" + snapshot.get95thPercentile() + "," + "p98=" + snapshot.get98thPercentile() + "," + "p99=" + snapshot.get99thPercentile() + "," + "p999=" + snapshot.get999thPercentile(); }
private void printHistogramSnapshot(Snapshot snapshot, StringBuilder sb) { printDouble(snapshot.getMean(), sb); printDouble(snapshot.getMin(), sb); printDouble(snapshot.getMax(), sb); printDouble(snapshot.getStdDev(), sb); printDouble(snapshot.getMedian(), sb); printDouble(snapshot.get75thPercentile(), sb); printDouble(snapshot.get95thPercentile(), sb); printDouble(snapshot.get98thPercentile(), sb); printDouble(snapshot.get99thPercentile(), sb); printDouble(snapshot.get999thPercentile(), sb); }
private String reportTimerSnapshot(Snapshot snapshot) { return "min=" + getDuration(snapshot.getMin()) + "," + "max=" + getDuration(snapshot.getMax()) + "," + "mean=" + getDuration(snapshot.getMean()) + "," + "p50=" + getDuration(snapshot.getMedian()) + "," + "std=" + getDuration(snapshot.getStdDev()) + "," + "p25=" + getDuration(snapshot.getValue(0.25)) + "," + "p75=" + getDuration(snapshot.get75thPercentile()) + "," + "p95=" + getDuration(snapshot.get95thPercentile()) + "," + "p98=" + getDuration(snapshot.get98thPercentile()) + "," + "p99=" + getDuration(snapshot.get99thPercentile()) + "," + "p999=" + getDuration(snapshot.get999thPercentile()); }
private void writeHistogramSnapshot(Snapshot snapshot, JsonGenerator jg) throws IOException { writeDoubleUnlessNaN(jg, "min", snapshot.getMin()); writeDoubleUnlessNaN(jg, "max", snapshot.getMax()); writeDoubleUnlessNaN(jg, "mean", snapshot.getMean()); writeDoubleUnlessNaN(jg, "p50", snapshot.getMedian()); writeDoubleUnlessNaN(jg, "std", snapshot.getStdDev()); writeDoubleUnlessNaN(jg, "p25", snapshot.getValue(0.25)); writeDoubleUnlessNaN(jg, "p75", snapshot.get75thPercentile()); writeDoubleUnlessNaN(jg, "p95", snapshot.get95thPercentile()); writeDoubleUnlessNaN(jg, "p98", snapshot.get98thPercentile()); writeDoubleUnlessNaN(jg, "p99", snapshot.get99thPercentile()); writeDoubleUnlessNaN(jg, "p999", snapshot.get999thPercentile()); }
private void reportHistogram(Metric metric, Snapshot snapshot) { send(metric.attribute("stat", "min").value(snapshot.getMin())); send(metric.attribute("stat", "max").value(snapshot.getMax())); send(metric.attribute("stat", "mean").value(snapshot.getMean())); send(metric.attribute("stat", "stddev").value(snapshot.getStdDev())); send(metric.attribute("stat", "median").value(snapshot.getMedian())); send(metric.attribute("stat", "p75").value(snapshot.get75thPercentile())); send(metric.attribute("stat", "p99").value(snapshot.get99thPercentile())); }
private void printTimerSnapshot(Snapshot snapshot, StringBuilder sb) { printDouble(convertDuration(snapshot.getMean()), sb); printDouble(convertDuration(snapshot.getMin()), sb); printDouble(convertDuration(snapshot.getMax()), sb); printDouble(convertDuration(snapshot.getStdDev()), sb); printDouble(convertDuration(snapshot.getMedian()), sb); printDouble(convertDuration(snapshot.get75thPercentile()), sb); printDouble(convertDuration(snapshot.get95thPercentile()), sb); printDouble(convertDuration(snapshot.get98thPercentile()), sb); printDouble(convertDuration(snapshot.get99thPercentile()), sb); printDouble(convertDuration(snapshot.get999thPercentile()), sb); }
private void reportSnapshot(String prefix, String name, Snapshot snapshot, long timestamp, boolean convertDuration) throws IOException { String baseMetricName = getKey(prefix, name); pushMetric(getKey(baseMetricName, MIN), snapshot.getMin(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, MAX), snapshot.getMax(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, MEAN), snapshot.getMean(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, STDDEV), snapshot.getStdDev(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, MEDIAN), snapshot.getMedian(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, PERCENTILE_75TH), snapshot.get75thPercentile(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, PERCENTILE_95TH), snapshot.get95thPercentile(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, PERCENTILE_98TH), snapshot.get98thPercentile(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, PERCENTILE_99TH), snapshot.get99thPercentile(), convertDuration, timestamp); pushMetric(getKey(baseMetricName, PERCENTILE_999TH), snapshot.get999thPercentile(), convertDuration, timestamp); }
private void writeTimerSnapshot(Snapshot snapshot, JsonGenerator jg) throws IOException { writeDoubleUnlessNaN(jg, "min", convertDuration(snapshot.getMin())); writeDoubleUnlessNaN(jg, "max", convertDuration(snapshot.getMax())); writeDoubleUnlessNaN(jg, "mean", convertDuration(snapshot.getMean())); writeDoubleUnlessNaN(jg, "p50", convertDuration(snapshot.getMedian())); writeDoubleUnlessNaN(jg, "std", convertDuration(snapshot.getStdDev())); writeDoubleUnlessNaN(jg, "p25", convertDuration(snapshot.getValue(0.25))); writeDoubleUnlessNaN(jg, "p75", convertDuration(snapshot.get75thPercentile())); writeDoubleUnlessNaN(jg, "p95", convertDuration(snapshot.get95thPercentile())); writeDoubleUnlessNaN(jg, "p98", convertDuration(snapshot.get98thPercentile())); writeDoubleUnlessNaN(jg, "p99", convertDuration(snapshot.get99thPercentile())); writeDoubleUnlessNaN(jg, "p999", convertDuration(snapshot.get999thPercentile())); }