List of usage examples for com.amazonaws.services.cloudwatch AmazonCloudWatchAsyncClient getMetricStatisticsAsync
@Override
public java.util.concurrent.Future<GetMetricStatisticsResult> getMetricStatisticsAsync(
GetMetricStatisticsRequest request)
From source file:com.blubb.andcw.ChartBuilder.java
License:Apache License
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Metric m = new Metric().withMetricName((String) getIntent().getExtras().get("metric")) .withNamespace((String) getIntent().getExtras().get("namespace")); Dimension d = new Dimension().withName((String) getIntent().getExtras().get("dimension")) .withValue((String) getIntent().getExtras().get("dimensionvalue")); TimeSeries series = new TimeSeries(m.getMetricName() + " - " + d.getName() + " " + d.getValue()); AWSCredentials awsc = getAWSCredentials(); AmazonCloudWatchAsyncClient acw = new AmazonCloudWatchAsyncClient(awsc); long offset = new Date().getTime() - 1000 * 3600 * 24; GetMetricStatisticsRequest gmsr = new GetMetricStatisticsRequest().withStartTime(new Date(offset)) .withMetricName(m.getMetricName()).withNamespace(m.getNamespace()).withDimensions(d).withPeriod(300) .withStatistics("Average").withEndTime(new Date()); Log.i("AndCW req", gmsr.toString()); Future<GetMetricStatisticsResult> res = acw.getMetricStatisticsAsync(gmsr); TreeSet<Datapoint> data = new TreeSet<Datapoint>(new Comparator<Datapoint>() { public int compare(Datapoint lhs, Datapoint rhs) { return lhs.getTimestamp().compareTo(rhs.getTimestamp()); }/* w ww .j a va2 s . c o m*/ }); try { data.addAll((List<Datapoint>) res.get().getDatapoints()); // FIXME } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } for (Datapoint dp : data) { series.add(dp.getTimestamp(), dp.getAverage()); } XYSeriesRenderer renderer = new XYSeriesRenderer(); mRenderer.addSeriesRenderer(renderer); renderer.setPointStyle(PointStyle.CIRCLE); renderer.setFillPoints(true); mDataset.addSeries(series); mRenderer.setApplyBackgroundColor(true); mRenderer.setBackgroundColor(Color.argb(100, 50, 50, 50)); mRenderer.setAxisTitleTextSize(16); mRenderer.setChartTitleTextSize(20); mRenderer.setLabelsTextSize(15); mRenderer.setLegendTextSize(15); mRenderer.setMargins(new int[] { 20, 30, 15, 0 }); mRenderer.setZoomButtonsVisible(true); mRenderer.setPointSize(1); mChartView = ChartFactory.getTimeChartView(this, mDataset, mRenderer, null); setContentView(mChartView); }