List of usage examples for com.amazonaws.services.cloudwatch.model StatisticSet getSum
public Double getSum()
The sum of values for the sample set.
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);/* w w w . j a v a 2 s. c om*/ 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;//from w ww . j a va2s. com } 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()); }//from w ww .j av a2 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. */// w ww . j av a2s . co m 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); } }