Example usage for com.amazonaws.services.cloudwatch.model StatisticSet getMinimum

List of usage examples for com.amazonaws.services.cloudwatch.model StatisticSet getMinimum

Introduction

In this page you can find the example usage for com.amazonaws.services.cloudwatch.model StatisticSet getMinimum.

Prototype


public Double getMinimum() 

Source Link

Document

The minimum value of the sample set.

Usage

From source file:com.amazon.kinesis.streaming.agent.metrics.AccumulatingMetricsScope.java

License:Open Source License

@Override
protected void realAddData(String name, double value, StandardUnit unit) {
    MetricDatum datum = data.get(name);//from  w ww.  ja  va2  s.co m
    if (datum == null) {
        data.put(name, new MetricDatum().withMetricName(name).withUnit(unit).withStatisticValues(
                new StatisticSet().withMaximum(value).withMinimum(value).withSampleCount(1.0).withSum(value)));
    } else {
        if (!datum.getUnit().equals(unit.name())) {
            throw new IllegalArgumentException("Cannot add to existing metric with different unit");
        }
        StatisticSet statistics = datum.getStatisticValues();
        statistics.setMaximum(Math.max(value, statistics.getMaximum()));
        statistics.setMinimum(Math.min(value, statistics.getMinimum()));
        statistics.setSampleCount(statistics.getSampleCount() + 1);
        statistics.setSum(statistics.getSum() + value);
    }
}

From source file:com.amazon.kinesis.streaming.agent.metrics.LogMetricsScope.java

License:Open Source License

@Override
protected void realCommit() {
    if (!data.values().isEmpty()) {
        StringBuilder output = new StringBuilder();
        output.append("Metrics:\n");

        output.append("Dimensions: ");
        boolean needsComma = false;
        for (Dimension dimension : getDimensions()) {
            output.append(String.format("%s[%s: %s]", needsComma ? ", " : "", dimension.getName(),
                    dimension.getValue()));
            needsComma = true;// w  w  w. j  av  a  2  s. co m
        }
        output.append("\n");

        for (MetricDatum datum : data.values()) {
            StatisticSet statistics = datum.getStatisticValues();
            output.append(
                    String.format("Name=%50s\tMin=%.2f\tMax=%.2f\tCount=%.2f\tSum=%.2f\tAvg=%.2f\tUnit=%s\n",
                            datum.getMetricName(), statistics.getMinimum(), statistics.getMaximum(),
                            statistics.getSampleCount(), statistics.getSum(),
                            statistics.getSum() / statistics.getSampleCount(), datum.getUnit()));
        }
        LOGGER.debug(output.toString());
    }
}

From source file:com.amazon.kinesis.streaming.agent.metrics.MetricAccumulatingQueue.java

License:Open Source License

private void accumulate(MetricDatum oldDatum, MetricDatum newDatum) {
    if (!oldDatum.getUnit().equals(newDatum.getUnit())) {
        throw new IllegalArgumentException("Unit mismatch for datum named " + oldDatum.getMetricName());
    }// w  w  w  . j a va 2  s.c o m

    StatisticSet oldStats = oldDatum.getStatisticValues();
    StatisticSet newStats = newDatum.getStatisticValues();

    oldStats.setSampleCount(oldStats.getSampleCount() + newStats.getSampleCount());
    oldStats.setMaximum(Math.max(oldStats.getMaximum(), newStats.getMaximum()));
    oldStats.setMinimum(Math.min(oldStats.getMinimum(), newStats.getMinimum()));
    oldStats.setSum(oldStats.getSum() + newStats.getSum());
}

From source file:com.github.lpezet.antiope.metrics.aws.BlockingRequestBuilder.java

License:Open Source License

/**
 * Summarizes the given datum into the statistics of the respective unique metric.
 *//*  ww  w  . j a va  2  s.  c  om*/
private void summarize(MetricDatum pDatum, Map<String, MetricDatum> pUniqueMetrics) {
    Double pValue = pDatum.getValue();
    if (pValue == null) {
        return;
    }
    List<Dimension> oDims = pDatum.getDimensions();
    Collections.sort(oDims, DimensionComparator.INSTANCE);
    String oMetricName = pDatum.getMetricName();
    String k = oMetricName + Jackson.toJsonString(oDims);
    MetricDatum oStatDatum = pUniqueMetrics.get(k);
    if (oStatDatum == null) {
        oStatDatum = new MetricDatum().withDimensions(pDatum.getDimensions()).withMetricName(oMetricName)
                .withUnit(pDatum.getUnit()).withStatisticValues(new StatisticSet().withMaximum(pValue)
                        .withMinimum(pValue).withSampleCount(0.0).withSum(0.0));
        pUniqueMetrics.put(k, oStatDatum);
    }
    StatisticSet oStat = oStatDatum.getStatisticValues();
    oStat.setSampleCount(oStat.getSampleCount() + 1.0);
    oStat.setSum(oStat.getSum() + pValue);
    if (pValue > oStat.getMaximum()) {
        oStat.setMaximum(pValue);
    } else if (pValue < oStat.getMinimum()) {
        oStat.setMinimum(pValue);
    }
}