private void execRequest(String endpoint, int status) { AwsRequestMetrics metrics = new AwsRequestMetricsFullSupport(); metrics.addProperty(AwsRequestMetrics.Field.ServiceName, "AmazonCloudWatch"); metrics.addProperty(AwsRequestMetrics.Field.ServiceEndpoint, endpoint); metrics.addProperty(AwsRequestMetrics.Field.StatusCode, "" + status); if (status == 503) { metrics.addProperty(AwsRequestMetrics.Field.AWSErrorCode, "Throttled"); } String counterName = "BytesProcessed"; String timerName = "ClientExecuteTime"; metrics.setCounter(counterName, 12345); metrics.getTimingInfo().addSubMeasurement(timerName, TimingInfo.unmodifiableTimingInfo(100000L, 200000L)); Request<?> req = new DefaultRequest( ListMetricsRequest.builder().build(), "AmazonCloudWatch"); req.setAwsRequestMetrics(metrics); req.setEndpoint(URI.create(endpoint)); collector.collectMetrics(req, null); }
return listMetricsPaginator(ListMetricsRequest.builder().applyMutation(listMetricsRequest).build());
return listMetricsPaginator(ListMetricsRequest.builder().build());
return listMetricsPaginator(ListMetricsRequest.builder().build());
throws InternalServiceException, InvalidParameterValueException, AwsServiceException, SdkClientException, CloudWatchException { return listMetrics(ListMetricsRequest.builder().applyMutation(listMetricsRequest).build());
return listMetrics(ListMetricsRequest.builder().build());
return listMetrics(ListMetricsRequest.builder().applyMutation(listMetricsRequest).build());
return listMetrics(ListMetricsRequest.builder().applyMutation(listMetricsRequest).build());
return listMetrics(ListMetricsRequest.builder().build());
return listMetrics(ListMetricsRequest.builder().build());
return listMetrics(ListMetricsRequest.builder().build());
throws InternalServiceException, InvalidParameterValueException, AwsServiceException, SdkClientException, CloudWatchException { return listMetrics(ListMetricsRequest.builder().applyMutation(listMetricsRequest).build());
/** * <p> * A helper method to resume the pages in case of unexpected failures. The method takes the last successful response * page as input and returns an instance of {@link ListMetricsIterable} that can be used to retrieve the consecutive * pages that follows the input page. * </p> */ private final ListMetricsIterable resume(ListMetricsResponse lastSuccessfulPage) { if (nextPageFetcher.hasNextPage(lastSuccessfulPage)) { return new ListMetricsIterable(client, firstRequest.toBuilder().nextToken(lastSuccessfulPage.nextToken()).build()); } return new ListMetricsIterable(client, firstRequest) { @Override public Iterator<ListMetricsResponse> iterator() { return Collections.emptyIterator(); } }; }
/** * <p> * A helper method to resume the pages in case of unexpected failures. The method takes the last successful response * page as input and returns an instance of {@link ListMetricsPublisher} that can be used to retrieve the * consecutive pages that follows the input page. * </p> */ private final ListMetricsPublisher resume(ListMetricsResponse lastSuccessfulPage) { if (nextPageFetcher.hasNextPage(lastSuccessfulPage)) { return new ListMetricsPublisher(client, firstRequest.toBuilder().nextToken(lastSuccessfulPage.nextToken()).build()); } return new ListMetricsPublisher(client, firstRequest, true) { @Override public void subscribe(Subscriber<? super ListMetricsResponse> subscriber) { subscriber.onSubscribe(new EmptySubscription(subscriber)); } }; }
/** * <p> * A helper method to resume the pages in case of unexpected failures. The method takes the last successful response * page as input and returns an instance of {@link ListMetricsIterable} that can be used to retrieve the consecutive * pages that follows the input page. * </p> */ private final ListMetricsIterable resume(ListMetricsResponse lastSuccessfulPage) { if (nextPageFetcher.hasNextPage(lastSuccessfulPage)) { return new ListMetricsIterable(client, firstRequest.toBuilder().nextToken(lastSuccessfulPage.nextToken()).build()); } return new ListMetricsIterable(client, firstRequest) { @Override public Iterator<ListMetricsResponse> iterator() { return Collections.emptyIterator(); } }; }
/** * <p> * A helper method to resume the pages in case of unexpected failures. The method takes the last successful response * page as input and returns an instance of {@link ListMetricsPublisher} that can be used to retrieve the * consecutive pages that follows the input page. * </p> */ private final ListMetricsPublisher resume(ListMetricsResponse lastSuccessfulPage) { if (nextPageFetcher.hasNextPage(lastSuccessfulPage)) { return new ListMetricsPublisher(client, firstRequest.toBuilder().nextToken(lastSuccessfulPage.nextToken()).build()); } return new ListMetricsPublisher(client, firstRequest, true) { @Override public void subscribe(Subscriber<? super ListMetricsResponse> subscriber) { subscriber.onSubscribe(new EmptySubscription(subscriber)); } }; }
@Override public ListMetricsResponse nextPage(ListMetricsResponse previousPage) { if (previousPage == null) { return client.listMetrics(firstRequest); } return client.listMetrics(firstRequest.toBuilder().nextToken(previousPage.nextToken()).build()); } }
@Override public CompletableFuture<ListMetricsResponse> nextPage(final ListMetricsResponse previousPage) { if (previousPage == null) { return client.listMetrics(firstRequest); } return client.listMetrics(firstRequest.toBuilder().nextToken(previousPage.nextToken()).build()); } }
@Override public CompletableFuture<ListMetricsResponse> nextPage(final ListMetricsResponse previousPage) { if (previousPage == null) { return client.listMetrics(firstRequest); } return client.listMetrics(firstRequest.toBuilder().nextToken(previousPage.nextToken()).build()); } }
@Override public ListMetricsResponse nextPage(ListMetricsResponse previousPage) { if (previousPage == null) { return client.listMetrics(firstRequest); } return client.listMetrics(firstRequest.toBuilder().nextToken(previousPage.nextToken()).build()); } }