com.amazonaws.services.cloudwatch
Class AmazonCloudWatchClient

java.lang.Object
  extended by com.amazonaws.AmazonWebServiceClient
      extended by com.amazonaws.services.cloudwatch.AmazonCloudWatchClient
All Implemented Interfaces:
AmazonCloudWatch
Direct Known Subclasses:
AmazonCloudWatchAsyncClient

public class AmazonCloudWatchClient
extends AmazonWebServiceClient
implements AmazonCloudWatch

Client for accessing AmazonCloudWatch. All service calls made using this client are blocking, and will not return until the service call completes.

Amazon CloudWatch

This is the Amazon CloudWatch API Reference . This guide provides detailed information about Amazon CloudWatch actions, data types, parameters, and errors. For detailed information about Amazon CloudWatch features and their associated API calls, go to the Amazon CloudWatch Developer Guide .

Amazon CloudWatch is a web service that enables you to publish, monitor, and manage various metrics, as well as configure alarm actions based on data from metrics. For more information about this product go to http://aws.amazon.com/cloudwatch .

Use the following links to get started using the Amazon CloudWatch API Reference :


Constructor Summary
AmazonCloudWatchClient()
          Constructs a new client to invoke service methods on AmazonCloudWatch.
AmazonCloudWatchClient(AWSCredentials awsCredentials)
          Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials.
AmazonCloudWatchClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration)
          Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials and client configuration options.
AmazonCloudWatchClient(AWSCredentialsProvider awsCredentialsProvider)
          Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials provider.
AmazonCloudWatchClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)
          Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials provider and client configuration options.
AmazonCloudWatchClient(ClientConfiguration clientConfiguration)
          Constructs a new client to invoke service methods on AmazonCloudWatch.
 
Method Summary
 void deleteAlarms(DeleteAlarmsRequest deleteAlarmsRequest)
           Deletes all specified alarms.
 DescribeAlarmHistoryResult describeAlarmHistory()
           Retrieves history for the specified alarm.
 DescribeAlarmHistoryResult describeAlarmHistory(DescribeAlarmHistoryRequest describeAlarmHistoryRequest)
           Retrieves history for the specified alarm.
 DescribeAlarmsResult describeAlarms()
           Retrieves alarms with the specified names.
 DescribeAlarmsResult describeAlarms(DescribeAlarmsRequest describeAlarmsRequest)
           Retrieves alarms with the specified names.
 DescribeAlarmsForMetricResult describeAlarmsForMetric(DescribeAlarmsForMetricRequest describeAlarmsForMetricRequest)
           Retrieves all alarms for a single metric.
 void disableAlarmActions(DisableAlarmActionsRequest disableAlarmActionsRequest)
           Disables actions for the specified alarms.
 void enableAlarmActions(EnableAlarmActionsRequest enableAlarmActionsRequest)
           Enables actions for the specified alarms.
 ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
          Returns additional metadata for a previously executed successful, request, typically used for debugging issues where a service isn't acting as expected.
 GetMetricStatisticsResult getMetricStatistics(GetMetricStatisticsRequest getMetricStatisticsRequest)
           Gets statistics for the specified metric.
 ListMetricsResult listMetrics()
           Returns a list of valid metrics stored for the AWS account owner.
 ListMetricsResult listMetrics(ListMetricsRequest listMetricsRequest)
           Returns a list of valid metrics stored for the AWS account owner.
 void putMetricAlarm(PutMetricAlarmRequest putMetricAlarmRequest)
           Creates or updates an alarm and associates it with the specified Amazon CloudWatch metric.
 void putMetricData(PutMetricDataRequest putMetricDataRequest)
           Publishes metric data points to Amazon CloudWatch.
 void setAlarmState(SetAlarmStateRequest setAlarmStateRequest)
           Temporarily sets the state of an alarm.
 void setEndpoint(String endpoint, String serviceName, String regionId)
          Overrides the default endpoint for this client ("https://monitoring.amazonaws.com") and explicitly provides an AWS region ID and AWS service name to use when the client calculates a signature for requests.
 
Methods inherited from class com.amazonaws.AmazonWebServiceClient
addRequestHandler, removeRequestHandler, setConfiguration, setEndpoint, shutdown
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.amazonaws.services.cloudwatch.AmazonCloudWatch
setEndpoint, shutdown
 

Constructor Detail

AmazonCloudWatchClient

public AmazonCloudWatchClient()
Constructs a new client to invoke service methods on AmazonCloudWatch. A credentials provider chain will be used that searches for credentials in this order:

All service calls made using this new client object are blocking, and will not return until the service call completes.

See Also:
DefaultAWSCredentialsProvider

AmazonCloudWatchClient

public AmazonCloudWatchClient(ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on AmazonCloudWatch. A credentials provider chain will be used that searches for credentials in this order:

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
clientConfiguration - The client configuration options controlling how this client connects to AmazonCloudWatch (ex: proxy settings, retry counts, etc.).
See Also:
DefaultAWSCredentialsProvider

AmazonCloudWatchClient

public AmazonCloudWatchClient(AWSCredentials awsCredentials)
Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.

AmazonCloudWatchClient

public AmazonCloudWatchClient(AWSCredentials awsCredentials,
                              ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials - The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration - The client configuration options controlling how this client connects to AmazonCloudWatch (ex: proxy settings, retry counts, etc.).

AmazonCloudWatchClient

public AmazonCloudWatchClient(AWSCredentialsProvider awsCredentialsProvider)
Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials provider.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.

AmazonCloudWatchClient

public AmazonCloudWatchClient(AWSCredentialsProvider awsCredentialsProvider,
                              ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on AmazonCloudWatch using the specified AWS account credentials provider and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider - The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration - The client configuration options controlling how this client connects to AmazonCloudWatch (ex: proxy settings, retry counts, etc.).
Method Detail

putMetricAlarm

public void putMetricAlarm(PutMetricAlarmRequest putMetricAlarmRequest)
                    throws AmazonServiceException,
                           AmazonClientException

Creates or updates an alarm and associates it with the specified Amazon CloudWatch metric. Optionally, this operation can associate one or more Amazon Simple Notification Service resources with the alarm.

When this operation creates an alarm, the alarm state is immediately set to INSUFFICIENT_DATA . The alarm is evaluated and its StateValue is set appropriately. Any actions associated with the StateValue is then executed.

NOTE: When updating an existing alarm, its StateValue is left unchanged.

Specified by:
putMetricAlarm in interface AmazonCloudWatch
Parameters:
putMetricAlarmRequest - Container for the necessary parameters to execute the PutMetricAlarm service method on AmazonCloudWatch.
Throws:
LimitExceededException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

putMetricData

public void putMetricData(PutMetricDataRequest putMetricDataRequest)
                   throws AmazonServiceException,
                          AmazonClientException

Publishes metric data points to Amazon CloudWatch. Amazon Cloudwatch associates the data points with the specified metric. If the specified metric does not exist, Amazon CloudWatch creates the metric.

NOTE: If you create a metric with the PutMetricData action, allow up to fifteen minutes for the metric to appear in calls to the ListMetrics action.

The size of a PutMetricData request is limited to 8 KB for HTTP GET requests and 40 KB for HTTP POST requests.

IMPORTANT: Although the Value parameter accepts numbers of type Double, Amazon CloudWatch truncates values with very large exponents. Values with base-10 exponents greater than 126 (1 x 10^126) are truncated. Likewise, values with base-10 exponents less than -130 (1 x 10^-130) are also truncated.

Specified by:
putMetricData in interface AmazonCloudWatch
Parameters:
putMetricDataRequest - Container for the necessary parameters to execute the PutMetricData service method on AmazonCloudWatch.
Throws:
InvalidParameterValueException
InternalServiceException
InvalidParameterCombinationException
MissingRequiredParameterException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

listMetrics

public ListMetricsResult listMetrics(ListMetricsRequest listMetricsRequest)
                              throws AmazonServiceException,
                                     AmazonClientException

Returns a list of valid metrics stored for the AWS account owner. Returned metrics can be used with GetMetricStatistics to obtain statistical data for a given metric.

NOTE: Up to 500 results are returned for any one call. To retrieve further results, use returned NextToken values with subsequent ListMetrics operations.

NOTE: If you create a metric with the PutMetricData action, allow up to fifteen minutes for the metric to appear in calls to the ListMetrics action.

Specified by:
listMetrics in interface AmazonCloudWatch
Parameters:
listMetricsRequest - Container for the necessary parameters to execute the ListMetrics service method on AmazonCloudWatch.
Returns:
The response from the ListMetrics service method, as returned by AmazonCloudWatch.
Throws:
InternalServiceException
InvalidParameterValueException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

getMetricStatistics

public GetMetricStatisticsResult getMetricStatistics(GetMetricStatisticsRequest getMetricStatisticsRequest)
                                              throws AmazonServiceException,
                                                     AmazonClientException

Gets statistics for the specified metric.

NOTE: The maximum number of data points returned from a single GetMetricStatistics request is 1,440. If a request is made that generates more than 1,440 data points, Amazon CloudWatch returns an error. In such a case, alter the request by narrowing the specified time range or increasing the specified period. Alternatively, make multiple requests across adjacent time ranges.

Amazon CloudWatch aggregates data points based on the length of the period that you specify. For example, if you request statistics with a one-minute granularity, Amazon CloudWatch aggregates data points with time stamps that fall within the same one-minute period. In such a case, the data points queried can greatly outnumber the data points returned.

NOTE: The maximum number of data points that can be queried is 50,850; whereas the maximum number of data points returned is 1,440.

The following examples show various statistics allowed by the data point query maximum of 50,850 when you call GetMetricStatistics on Amazon EC2 instances with detailed (one-minute) monitoring enabled:

Specified by:
getMetricStatistics in interface AmazonCloudWatch
Parameters:
getMetricStatisticsRequest - Container for the necessary parameters to execute the GetMetricStatistics service method on AmazonCloudWatch.
Returns:
The response from the GetMetricStatistics service method, as returned by AmazonCloudWatch.
Throws:
InvalidParameterValueException
InternalServiceException
InvalidParameterCombinationException
MissingRequiredParameterException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

disableAlarmActions

public void disableAlarmActions(DisableAlarmActionsRequest disableAlarmActionsRequest)
                         throws AmazonServiceException,
                                AmazonClientException

Disables actions for the specified alarms. When an alarm's actions are disabled the alarm's state may change, but none of the alarm's actions will execute.

Specified by:
disableAlarmActions in interface AmazonCloudWatch
Parameters:
disableAlarmActionsRequest - Container for the necessary parameters to execute the DisableAlarmActions service method on AmazonCloudWatch.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

describeAlarms

public DescribeAlarmsResult describeAlarms(DescribeAlarmsRequest describeAlarmsRequest)
                                    throws AmazonServiceException,
                                           AmazonClientException

Retrieves alarms with the specified names. If no name is specified, all alarms for the user are returned. Alarms can be retrieved by using only a prefix for the alarm name, the alarm state, or a prefix for any action.

Specified by:
describeAlarms in interface AmazonCloudWatch
Parameters:
describeAlarmsRequest - Container for the necessary parameters to execute the DescribeAlarms service method on AmazonCloudWatch.
Returns:
The response from the DescribeAlarms service method, as returned by AmazonCloudWatch.
Throws:
InvalidNextTokenException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

describeAlarmsForMetric

public DescribeAlarmsForMetricResult describeAlarmsForMetric(DescribeAlarmsForMetricRequest describeAlarmsForMetricRequest)
                                                      throws AmazonServiceException,
                                                             AmazonClientException

Retrieves all alarms for a single metric. Specify a statistic, period, or unit to filter the set of alarms further.

Specified by:
describeAlarmsForMetric in interface AmazonCloudWatch
Parameters:
describeAlarmsForMetricRequest - Container for the necessary parameters to execute the DescribeAlarmsForMetric service method on AmazonCloudWatch.
Returns:
The response from the DescribeAlarmsForMetric service method, as returned by AmazonCloudWatch.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

describeAlarmHistory

public DescribeAlarmHistoryResult describeAlarmHistory(DescribeAlarmHistoryRequest describeAlarmHistoryRequest)
                                                throws AmazonServiceException,
                                                       AmazonClientException

Retrieves history for the specified alarm. Filter alarms by date range or item type. If an alarm name is not specified, Amazon CloudWatch returns histories for all of the owner's alarms.

NOTE: Amazon CloudWatch retains the history of an alarm for two weeks, whether or not you delete the alarm.

Specified by:
describeAlarmHistory in interface AmazonCloudWatch
Parameters:
describeAlarmHistoryRequest - Container for the necessary parameters to execute the DescribeAlarmHistory service method on AmazonCloudWatch.
Returns:
The response from the DescribeAlarmHistory service method, as returned by AmazonCloudWatch.
Throws:
InvalidNextTokenException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

enableAlarmActions

public void enableAlarmActions(EnableAlarmActionsRequest enableAlarmActionsRequest)
                        throws AmazonServiceException,
                               AmazonClientException

Enables actions for the specified alarms.

Specified by:
enableAlarmActions in interface AmazonCloudWatch
Parameters:
enableAlarmActionsRequest - Container for the necessary parameters to execute the EnableAlarmActions service method on AmazonCloudWatch.
Throws:
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

deleteAlarms

public void deleteAlarms(DeleteAlarmsRequest deleteAlarmsRequest)
                  throws AmazonServiceException,
                         AmazonClientException

Deletes all specified alarms. In the event of an error, no alarms are deleted.

Specified by:
deleteAlarms in interface AmazonCloudWatch
Parameters:
deleteAlarmsRequest - Container for the necessary parameters to execute the DeleteAlarms service method on AmazonCloudWatch.
Throws:
ResourceNotFoundException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

setAlarmState

public void setAlarmState(SetAlarmStateRequest setAlarmStateRequest)
                   throws AmazonServiceException,
                          AmazonClientException

Temporarily sets the state of an alarm. When the updated StateValue differs from the previous value, the action configured for the appropriate state is invoked. This is not a permanent change. The next periodic alarm check (in about a minute) will set the alarm to its actual state.

Specified by:
setAlarmState in interface AmazonCloudWatch
Parameters:
setAlarmStateRequest - Container for the necessary parameters to execute the SetAlarmState service method on AmazonCloudWatch.
Throws:
ResourceNotFoundException
InvalidFormatException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

listMetrics

public ListMetricsResult listMetrics()
                              throws AmazonServiceException,
                                     AmazonClientException

Returns a list of valid metrics stored for the AWS account owner. Returned metrics can be used with GetMetricStatistics to obtain statistical data for a given metric.

NOTE: Up to 500 results are returned for any one call. To retrieve further results, use returned NextToken values with subsequent ListMetrics operations.

NOTE: If you create a metric with the PutMetricData action, allow up to fifteen minutes for the metric to appear in calls to the ListMetrics action.

Specified by:
listMetrics in interface AmazonCloudWatch
Returns:
The response from the ListMetrics service method, as returned by AmazonCloudWatch.
Throws:
InternalServiceException
InvalidParameterValueException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

describeAlarms

public DescribeAlarmsResult describeAlarms()
                                    throws AmazonServiceException,
                                           AmazonClientException

Retrieves alarms with the specified names. If no name is specified, all alarms for the user are returned. Alarms can be retrieved by using only a prefix for the alarm name, the alarm state, or a prefix for any action.

Specified by:
describeAlarms in interface AmazonCloudWatch
Returns:
The response from the DescribeAlarms service method, as returned by AmazonCloudWatch.
Throws:
InvalidNextTokenException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

describeAlarmHistory

public DescribeAlarmHistoryResult describeAlarmHistory()
                                                throws AmazonServiceException,
                                                       AmazonClientException

Retrieves history for the specified alarm. Filter alarms by date range or item type. If an alarm name is not specified, Amazon CloudWatch returns histories for all of the owner's alarms.

NOTE: Amazon CloudWatch retains the history of an alarm for two weeks, whether or not you delete the alarm.

Specified by:
describeAlarmHistory in interface AmazonCloudWatch
Returns:
The response from the DescribeAlarmHistory service method, as returned by AmazonCloudWatch.
Throws:
InvalidNextTokenException
AmazonClientException - If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
AmazonServiceException - If an error response is returned by AmazonCloudWatch indicating either a problem with the data in the request, or a server side issue.

setEndpoint

public void setEndpoint(String endpoint,
                        String serviceName,
                        String regionId)
                 throws IllegalArgumentException
Overrides the default endpoint for this client ("https://monitoring.amazonaws.com") and explicitly provides an AWS region ID and AWS service name to use when the client calculates a signature for requests. In almost all cases, this region ID and service name are automatically determined from the endpoint, and callers should use the simpler one-argument form of setEndpoint instead of this method.

This method is not threadsafe. Endpoints should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit.

Callers can pass in just the endpoint (ex: "monitoring.amazonaws.com") or a full URL, including the protocol (ex: "https://monitoring.amazonaws.com"). If the protocol is not specified here, the default protocol from this client's ClientConfiguration will be used, which by default is HTTPS.

For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3912

Parameters:
endpoint - The endpoint (ex: "monitoring.amazonaws.com") or a full URL, including the protocol (ex: "https://monitoring.amazonaws.com") of the region specific AWS endpoint this client will communicate with.
serviceName - The name of the AWS service to use when signing requests.
regionId - The ID of the region in which this service resides.
Throws:
IllegalArgumentException - If any problems are detected with the specified endpoint.

getCachedResponseMetadata

public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful, request, typically used for debugging issues where a service isn't acting as expected. This data isn't considered part of the result data returned by an operation, so it's available through this separate, diagnostic interface.

Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.

Specified by:
getCachedResponseMetadata in interface AmazonCloudWatch
Parameters:
request - The originally executed request
Returns:
The response metadata for the specified request, or null if none is available.


Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.