Example usage for com.amazonaws.services.cloudwatch.model ListMetricsRequest withDimensions

List of usage examples for com.amazonaws.services.cloudwatch.model ListMetricsRequest withDimensions

Introduction

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

Prototype


public ListMetricsRequest withDimensions(java.util.Collection<DimensionFilter> dimensions) 

Source Link

Document

The dimensions to filter against.

Usage

From source file:com.appdynamics.extensions.cloudwatch.metricsmanager.MetricsManager.java

License:Apache License

/**
 * Retrieve metrics for a particular namespace using the specified filter names
 * @param awsCloudWatch // w ww  .  j a va  2s. c o m
 * @param namespace     Name of the namespace
 * @param filterNames   List of filter names (used to filter metrics)
 * @return List<Metric> List of filtered metrics for a particular namespace
 */
protected List<Metric> getMetrics(AmazonCloudWatch awsCloudWatch, String namespace, String... filterNames) {
    ListMetricsRequest request = new ListMetricsRequest();
    List<DimensionFilter> filters = new ArrayList<DimensionFilter>();

    for (String filterName : filterNames) {
        DimensionFilter dimensionFilter = new DimensionFilter();
        dimensionFilter.withName(filterName);
        filters.add(dimensionFilter);
    }
    request.withNamespace(namespace);
    request.withDimensions(filters);
    List<Metric> metricList = Lists.newArrayList();
    ListMetricsResult listMetricsResult = awsCloudWatch.listMetrics(request);
    metricList = listMetricsResult.getMetrics();
    // Retrieves all the metrics if metricList > 500
    while (listMetricsResult.getNextToken() != null) {
        request.setNextToken(listMetricsResult.getNextToken());
        listMetricsResult = awsCloudWatch.listMetrics(request);
        metricList.addAll(listMetricsResult.getMetrics());
    }
    return metricList;
}

From source file:com.pinterest.arcee.autoscaling.AwsAlarmManager.java

License:Apache License

@Override
public List<String> listAwsMetrics(String groupName) throws Exception {
    DimensionFilter dimensionFilter = new DimensionFilter();
    dimensionFilter.setName(DIMENTION_NAME);
    dimensionFilter.setValue(groupName);
    ListMetricsRequest listMetricsRequest = new ListMetricsRequest();
    listMetricsRequest.withDimensions(dimensionFilter).withNamespace(METRIC_NAMESPACE);

    ListMetricsResult listMetricsResult = acwClient.listMetrics(listMetricsRequest);
    List<String> metricName = new ArrayList<>();
    for (Metric metric : listMetricsResult.getMetrics()) {
        metricName.add(metric.getMetricName());
    }//  ww  w  .  ja va  2s .  com
    return metricName;
}