Example usage for com.amazonaws.services.cloudwatch AmazonCloudWatchAsyncClient AmazonCloudWatchAsyncClient

List of usage examples for com.amazonaws.services.cloudwatch AmazonCloudWatchAsyncClient AmazonCloudWatchAsyncClient

Introduction

In this page you can find the example usage for com.amazonaws.services.cloudwatch AmazonCloudWatchAsyncClient AmazonCloudWatchAsyncClient.

Prototype

AmazonCloudWatchAsyncClient(AwsAsyncClientParams asyncClientParams) 

Source Link

Document

Constructs a new asynchronous client to invoke service methods on CloudWatch using the specified parameters.

Usage

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  om*/
    });
    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);

}

From source file:com.mimesis.jmx.Exporter4CloudwatchAsyncClient.java

License:Apache License

@Override
public void export(Collection<Result> data) throws Exception {
    //TODO configure client to use POST
    AmazonCloudWatchAsyncClient awsClient = new AmazonCloudWatchAsyncClient(_awsCredentials);
    if (_region != null) {
        awsClient.setEndpoint(String.format("monitoring.%s.amazonaws.com", _region));
    }//from  ww w . j a va  2s  .  com

    Collection<Dimension> dimensions = parseDimensions(_dimensions);
    ArrayList<MetricDatum> metrics = new ArrayList<MetricDatum>(AWS_METRICS_MAX);
    System.out.println("send START");
    int i = 0;
    for (Result d : data) {
        if (!(d.value instanceof Number)) {
            logger.info(String.format("CloudWatch only accept value of type Number : [%s][%s] => %s",
                    d.objectName, d.key, String.valueOf(d.value)));
            continue;
        }
        MetricDatum metricDatum = new MetricDatum().withMetricName(metricNameOf(d.objectName, d.key))
                .withValue(((Number) d.value).doubleValue()).withTimestamp(d.timestampDate);
        if (dimensions.size() > 0) {
            metricDatum = metricDatum.withDimensions(dimensions);
        }
        if (d.unit != null) {
            metricDatum = metricDatum.withUnit(d.unit);
        }
        System.out.println("send : " + (++i) + metricDatum.getMetricName());
        metrics.add(metricDatum);
        if (metrics.size() == AWS_METRICS_MAX) {
            waitEndOfLastExport();
            _lastFuture = awsClient.putMetricDataAsync(newPutMetricDataRequest(metrics));
            metrics = new ArrayList<MetricDatum>(AWS_METRICS_MAX);
        }
    }
    if (metrics.size() > 0) {
        waitEndOfLastExport();
        _lastFuture = awsClient.putMetricDataAsync(newPutMetricDataRequest(metrics));
    }
}

From source file:com.mulesoft.agent.monitoring.publisher.CloudwatchMonitorPublisher.java

License:Open Source License

@Override
public boolean flush(@NotNull Collection<List<Metric>> listOfMetrics) {
    AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
    AmazonCloudWatchAsyncClient cloudWatchClient = new AmazonCloudWatchAsyncClient(credentials);

    for (List<Metric> metrics : listOfMetrics) {
        List<MetricDatum> cloudWatchMetrics = transformMetrics(metrics);
        PutMetricDataRequest putMetricDataRequest = new PutMetricDataRequest();
        putMetricDataRequest.setMetricData(cloudWatchMetrics);
        putMetricDataRequest.setNamespace(namespace);
        cloudWatchClient.putMetricData(putMetricDataRequest);
    }// w w w  .j a v  a2 s .  c om

    return true;
}

From source file:com.netflix.bdp.s3mper.alert.impl.CloudWatchAlertDispatcher.java

License:Apache License

private void initCloudWatch(String keyId, String keySecret) {
    log.debug("Initializing CloudWatch Client");
    cloudWatch = new AmazonCloudWatchAsyncClient(new BasicAWSCredentials(keyId, keySecret));
}

From source file:org.attribyte.metrics.cloudwatch.CloudwatchReporter.java

License:Apache License

@Override
public void init(final String name, final Properties _props, final MetricRegistry registry,
        final MetricFilter filter) throws Exception {
    if (isInit.compareAndSet(false, true)) {
        init(name, _props);//from  ww w.  ja  va2 s.  co m

        boolean useInstanceCredentials = init.getProperty(USE_INSTANCE_CREDENTIALS_PROPERTY, "false")
                .equalsIgnoreCase("true");
        boolean useDefaultProviderChain = init.getProperty(USE_DEFAULT_PROVIDER_CHAIN_PROPERTY, "false")
                .equalsIgnoreCase("true");

        if (useDefaultProviderChain) {
            client = new AmazonCloudWatchAsyncClient(new DefaultAWSCredentialsProviderChain());
        } else if (useInstanceCredentials) {
            client = new AmazonCloudWatchAsyncClient(new InstanceProfileCredentialsProvider());
        } else {
            String awsKeyId = init.getProperty(AWS_ACCESS_KEY_ID_PROPERTY, "");
            if (awsKeyId.isEmpty()) {
                init.throwRequiredException(AWS_ACCESS_KEY_ID_PROPERTY);
            }

            String awsKeySecret = init.getProperty(AWS_ACCESS_KEY_SECRET_PROPERTY, "");
            if (awsKeySecret.isEmpty()) {
                init.throwRequiredException(AWS_ACCESS_KEY_SECRET_PROPERTY);
            }

            client = new AmazonCloudWatchAsyncClient(new BasicAWSCredentials(awsKeyId, awsKeySecret));
        }

        String cloudwatchNamespace = init.getProperty(METRIC_NAMESPACE_PROPERTY, null);

        frequencyMillis = InitUtil.millisFromTime(init.getProperty(FREQUENCY_PROPERTY, "1m"));

        boolean disableTranslate = init.getProperty(DISABLE_TRANSLATE_PROPERTY, "false")
                .equalsIgnoreCase("true");

        if (disableTranslate) {
            reporter = new CloudWatchReporter(registry, cloudwatchNamespace, client);
        } else {
            MetricRegistry filteredRegistry = RegistryTranslation.translate(init.getProperties(), registry);
            reporter = new CloudWatchReporter(filteredRegistry, cloudwatchNamespace, client);
        }
    }
}

From source file:org.springframework.cloud.aws.autoconfigure.actuate.CloudWatchMetricAutoConfiguration.java

License:Apache License

@Bean
@ConditionalOnMissingAmazonClient(AmazonCloudWatchAsync.class)
public AmazonCloudWatchAsync amazonCloudWatchAsync(AWSCredentialsProvider credentialsProvider) {
    AmazonCloudWatchAsyncClient serviceClient = new AmazonCloudWatchAsyncClient(credentialsProvider);
    if (this.regionProvider != null) {
        serviceClient.setRegion(this.regionProvider.getRegion());
    }/*from w  w  w . jav  a 2 s.c  o m*/
    return serviceClient;
}