public interface AmazonCloudWatchAsync extends AmazonCloudWatch
AsyncHandler
can be used to receive
notification when an asynchronous operation completes.
Amazon CloudWatch monitors your Amazon Web Services (AWS) resources and the applications you run on AWS in real-time. You can use CloudWatch to collect and track metrics, which are the variables you want to measure for your resources and applications.
CloudWatch alarms send notifications or automatically make changes to the resources you are monitoring based on rules that you define. For example, you can monitor the CPU usage and disk reads and writes of your Amazon Elastic Compute Cloud (Amazon EC2) instances and then use this data to determine whether you should launch additional instances to handle increased load. You can also use this data to stop under-used instances to save money.
In addition to monitoring the built-in metrics that come with AWS, you can monitor your own custom metrics. With CloudWatch, you gain system-wide visibility into resource utilization, application performance, and operational health.
ENDPOINT_PREFIX
deleteAlarms, describeAlarmHistory, describeAlarmHistory, describeAlarms, describeAlarms, describeAlarmsForMetric, disableAlarmActions, enableAlarmActions, getCachedResponseMetadata, getMetricStatistics, listMetrics, listMetrics, putMetricAlarm, putMetricData, setAlarmState, setEndpoint, setRegion, shutdown, waiters
Future<DeleteAlarmsResult> deleteAlarmsAsync(DeleteAlarmsRequest deleteAlarmsRequest)
Deletes all specified alarms. In the event of an error, no alarms are deleted.
deleteAlarmsRequest
- Describes the inputs for DeleteAlarms.Future<DeleteAlarmsResult> deleteAlarmsAsync(DeleteAlarmsRequest deleteAlarmsRequest, AsyncHandler<DeleteAlarmsRequest,DeleteAlarmsResult> asyncHandler)
Deletes all specified alarms. In the event of an error, no alarms are deleted.
deleteAlarmsRequest
- Describes the inputs for DeleteAlarms.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<DescribeAlarmHistoryResult> describeAlarmHistoryAsync(DescribeAlarmHistoryRequest describeAlarmHistoryRequest)
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.
Amazon CloudWatch retains the history of an alarm for two weeks, whether or not you delete the alarm.
describeAlarmHistoryRequest
- Describes the inputs for DescribeAlarmHistory.Future<DescribeAlarmHistoryResult> describeAlarmHistoryAsync(DescribeAlarmHistoryRequest describeAlarmHistoryRequest, AsyncHandler<DescribeAlarmHistoryRequest,DescribeAlarmHistoryResult> asyncHandler)
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.
Amazon CloudWatch retains the history of an alarm for two weeks, whether or not you delete the alarm.
describeAlarmHistoryRequest
- Describes the inputs for DescribeAlarmHistory.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<DescribeAlarmHistoryResult> describeAlarmHistoryAsync()
Future<DescribeAlarmHistoryResult> describeAlarmHistoryAsync(AsyncHandler<DescribeAlarmHistoryRequest,DescribeAlarmHistoryResult> asyncHandler)
Future<DescribeAlarmsResult> describeAlarmsAsync(DescribeAlarmsRequest describeAlarmsRequest)
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.
describeAlarmsRequest
- Describes the inputs for DescribeAlarms.Future<DescribeAlarmsResult> describeAlarmsAsync(DescribeAlarmsRequest describeAlarmsRequest, AsyncHandler<DescribeAlarmsRequest,DescribeAlarmsResult> asyncHandler)
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.
describeAlarmsRequest
- Describes the inputs for DescribeAlarms.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<DescribeAlarmsResult> describeAlarmsAsync()
Future<DescribeAlarmsResult> describeAlarmsAsync(AsyncHandler<DescribeAlarmsRequest,DescribeAlarmsResult> asyncHandler)
Future<DescribeAlarmsForMetricResult> describeAlarmsForMetricAsync(DescribeAlarmsForMetricRequest describeAlarmsForMetricRequest)
Retrieves all alarms for a single metric. Specify a statistic, period, or unit to filter the set of alarms further.
describeAlarmsForMetricRequest
- Describes the inputs for DescribeAlarmsForMetric.Future<DescribeAlarmsForMetricResult> describeAlarmsForMetricAsync(DescribeAlarmsForMetricRequest describeAlarmsForMetricRequest, AsyncHandler<DescribeAlarmsForMetricRequest,DescribeAlarmsForMetricResult> asyncHandler)
Retrieves all alarms for a single metric. Specify a statistic, period, or unit to filter the set of alarms further.
describeAlarmsForMetricRequest
- Describes the inputs for DescribeAlarmsForMetric.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<DisableAlarmActionsResult> disableAlarmActionsAsync(DisableAlarmActionsRequest disableAlarmActionsRequest)
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.
disableAlarmActionsRequest
- Future<DisableAlarmActionsResult> disableAlarmActionsAsync(DisableAlarmActionsRequest disableAlarmActionsRequest, AsyncHandler<DisableAlarmActionsRequest,DisableAlarmActionsResult> asyncHandler)
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.
disableAlarmActionsRequest
- asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<EnableAlarmActionsResult> enableAlarmActionsAsync(EnableAlarmActionsRequest enableAlarmActionsRequest)
Enables actions for the specified alarms.
enableAlarmActionsRequest
- Describes the inputs for EnableAlarmActions.Future<EnableAlarmActionsResult> enableAlarmActionsAsync(EnableAlarmActionsRequest enableAlarmActionsRequest, AsyncHandler<EnableAlarmActionsRequest,EnableAlarmActionsResult> asyncHandler)
Enables actions for the specified alarms.
enableAlarmActionsRequest
- Describes the inputs for EnableAlarmActions.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<GetMetricStatisticsResult> getMetricStatisticsAsync(GetMetricStatisticsRequest getMetricStatisticsRequest)
Gets statistics for the specified metric.
The maximum number of data points that can be queried is 50,850, whereas the maximum number of data points
returned from a single GetMetricStatistics
request is 1,440. If you make a request that generates
more than 1,440 data points, Amazon CloudWatch returns an error. In such a case, you can alter the request by
narrowing the specified time range or increasing the specified period. A period can be as short as one minute (60
seconds) or as long as one day (86,400 seconds). Alternatively, you can make multiple requests across adjacent
time ranges. GetMetricStatistics
does not return the data in chronological order.
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.
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:
Statistics for up to 400 instances for a span of one hour
Statistics for up to 35 instances over a span of 24 hours
Statistics for up to 2 instances over a span of 2 weeks
For information about the namespace, metric names, and dimensions that other Amazon Web Services products use to send metrics to CloudWatch, go to Amazon CloudWatch Metrics, Namespaces, and Dimensions Reference in the Amazon CloudWatch Developer Guide.
getMetricStatisticsRequest
- Describes the inputs for GetMetricStatistics.Future<GetMetricStatisticsResult> getMetricStatisticsAsync(GetMetricStatisticsRequest getMetricStatisticsRequest, AsyncHandler<GetMetricStatisticsRequest,GetMetricStatisticsResult> asyncHandler)
Gets statistics for the specified metric.
The maximum number of data points that can be queried is 50,850, whereas the maximum number of data points
returned from a single GetMetricStatistics
request is 1,440. If you make a request that generates
more than 1,440 data points, Amazon CloudWatch returns an error. In such a case, you can alter the request by
narrowing the specified time range or increasing the specified period. A period can be as short as one minute (60
seconds) or as long as one day (86,400 seconds). Alternatively, you can make multiple requests across adjacent
time ranges. GetMetricStatistics
does not return the data in chronological order.
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.
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:
Statistics for up to 400 instances for a span of one hour
Statistics for up to 35 instances over a span of 24 hours
Statistics for up to 2 instances over a span of 2 weeks
For information about the namespace, metric names, and dimensions that other Amazon Web Services products use to send metrics to CloudWatch, go to Amazon CloudWatch Metrics, Namespaces, and Dimensions Reference in the Amazon CloudWatch Developer Guide.
getMetricStatisticsRequest
- Describes the inputs for GetMetricStatistics.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<ListMetricsResult> listMetricsAsync(ListMetricsRequest listMetricsRequest)
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.
Up to 500 results are returned for any one call. To retrieve further results, use returned NextToken
values with subsequent ListMetrics
operations.
If you create a metric with PutMetricData, allow up to fifteen minutes for the metric to appear in calls
to ListMetrics
. Statistics about the metric, however, are available sooner using
GetMetricStatistics.
listMetricsRequest
- Describes the inputs for ListMetrics.Future<ListMetricsResult> listMetricsAsync(ListMetricsRequest listMetricsRequest, AsyncHandler<ListMetricsRequest,ListMetricsResult> asyncHandler)
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.
Up to 500 results are returned for any one call. To retrieve further results, use returned NextToken
values with subsequent ListMetrics
operations.
If you create a metric with PutMetricData, allow up to fifteen minutes for the metric to appear in calls
to ListMetrics
. Statistics about the metric, however, are available sooner using
GetMetricStatistics.
listMetricsRequest
- Describes the inputs for ListMetrics.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<ListMetricsResult> listMetricsAsync()
listMetricsAsync(ListMetricsRequest)
Future<ListMetricsResult> listMetricsAsync(AsyncHandler<ListMetricsRequest,ListMetricsResult> asyncHandler)
Future<PutMetricAlarmResult> putMetricAlarmAsync(PutMetricAlarmRequest putMetricAlarmRequest)
Creates or updates an alarm and associates it with the specified Amazon CloudWatch metric. Optionally, this operation can associate one or more Amazon SNS 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
are then executed.
When updating an existing alarm, its StateValue
is left unchanged, but it completely overwrites the
alarm's previous configuration.
If you are using an AWS Identity and Access Management (IAM) account to create or modify an alarm, you must have the following Amazon EC2 permissions:
ec2:DescribeInstanceStatus
and ec2:DescribeInstances
for all alarms on Amazon EC2
instance status metrics.
ec2:StopInstances
for alarms with stop actions.
ec2:TerminateInstances
for alarms with terminate actions.
ec2:DescribeInstanceRecoveryAttribute
, and ec2:RecoverInstances
for alarms with recover
actions.
If you have read/write permissions for Amazon CloudWatch but not for Amazon EC2, you can still create an alarm but the stop or terminate actions won't be performed on the Amazon EC2 instance. However, if you are later granted permission to use the associated Amazon EC2 APIs, the alarm actions you created earlier will be performed. For more information about IAM permissions, see Permissions and Policies in Using IAM.
If you are using an IAM role (e.g., an Amazon EC2 instance profile), you cannot stop or terminate the instance using alarm actions. However, you can still see the alarm state and perform any other actions such as Amazon SNS notifications or Auto Scaling policies.
If you are using temporary security credentials granted using the AWS Security Token Service (AWS STS), you cannot stop or terminate an Amazon EC2 instance using alarm actions.
putMetricAlarmRequest
- Describes the inputs for PutMetricAlarm.Future<PutMetricAlarmResult> putMetricAlarmAsync(PutMetricAlarmRequest putMetricAlarmRequest, AsyncHandler<PutMetricAlarmRequest,PutMetricAlarmResult> asyncHandler)
Creates or updates an alarm and associates it with the specified Amazon CloudWatch metric. Optionally, this operation can associate one or more Amazon SNS 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
are then executed.
When updating an existing alarm, its StateValue
is left unchanged, but it completely overwrites the
alarm's previous configuration.
If you are using an AWS Identity and Access Management (IAM) account to create or modify an alarm, you must have the following Amazon EC2 permissions:
ec2:DescribeInstanceStatus
and ec2:DescribeInstances
for all alarms on Amazon EC2
instance status metrics.
ec2:StopInstances
for alarms with stop actions.
ec2:TerminateInstances
for alarms with terminate actions.
ec2:DescribeInstanceRecoveryAttribute
, and ec2:RecoverInstances
for alarms with recover
actions.
If you have read/write permissions for Amazon CloudWatch but not for Amazon EC2, you can still create an alarm but the stop or terminate actions won't be performed on the Amazon EC2 instance. However, if you are later granted permission to use the associated Amazon EC2 APIs, the alarm actions you created earlier will be performed. For more information about IAM permissions, see Permissions and Policies in Using IAM.
If you are using an IAM role (e.g., an Amazon EC2 instance profile), you cannot stop or terminate the instance using alarm actions. However, you can still see the alarm state and perform any other actions such as Amazon SNS notifications or Auto Scaling policies.
If you are using temporary security credentials granted using the AWS Security Token Service (AWS STS), you cannot stop or terminate an Amazon EC2 instance using alarm actions.
putMetricAlarmRequest
- Describes the inputs for PutMetricAlarm.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<PutMetricDataResult> putMetricDataAsync(PutMetricDataRequest putMetricDataRequest)
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. When Amazon CloudWatch creates a metric, it can take up to fifteen minutes for the metric to appear in calls to ListMetrics.
Each PutMetricData
request is limited to 8 KB in size for HTTP GET requests and is limited to 40 KB
in size for HTTP POST requests.
Although the Value
parameter accepts numbers of type Double
, Amazon CloudWatch rejects
values that are either too small or too large. Values must be in the range of 8.515920e-109 to 1.174271e+108
(Base 10) or 2e-360 to 2e360 (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are not
supported.
Data that is timestamped 24 hours or more in the past may take in excess of 48 hours to become available from
submission time using GetMetricStatistics
.
putMetricDataRequest
- Describes the inputs for PutMetricData.Future<PutMetricDataResult> putMetricDataAsync(PutMetricDataRequest putMetricDataRequest, AsyncHandler<PutMetricDataRequest,PutMetricDataResult> asyncHandler)
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. When Amazon CloudWatch creates a metric, it can take up to fifteen minutes for the metric to appear in calls to ListMetrics.
Each PutMetricData
request is limited to 8 KB in size for HTTP GET requests and is limited to 40 KB
in size for HTTP POST requests.
Although the Value
parameter accepts numbers of type Double
, Amazon CloudWatch rejects
values that are either too small or too large. Values must be in the range of 8.515920e-109 to 1.174271e+108
(Base 10) or 2e-360 to 2e360 (Base 2). In addition, special values (e.g., NaN, +Infinity, -Infinity) are not
supported.
Data that is timestamped 24 hours or more in the past may take in excess of 48 hours to become available from
submission time using GetMetricStatistics
.
putMetricDataRequest
- Describes the inputs for PutMetricData.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Future<SetAlarmStateResult> setAlarmStateAsync(SetAlarmStateRequest setAlarmStateRequest)
Temporarily sets the state of an alarm for testing purposes. When the updated StateValue
differs
from the previous value, the action configured for the appropriate state is invoked. For example, if your alarm
is configured to send an Amazon SNS message when an alarm is triggered, temporarily changing the alarm's state to
ALARM sends an Amazon SNS message. The alarm returns to its actual state (often within seconds). Because
the alarm state change happens very quickly, it is typically only visible in the alarm's History tab in
the Amazon CloudWatch console or through DescribeAlarmHistory
.
setAlarmStateRequest
- Describes the inputs for SetAlarmState.Future<SetAlarmStateResult> setAlarmStateAsync(SetAlarmStateRequest setAlarmStateRequest, AsyncHandler<SetAlarmStateRequest,SetAlarmStateResult> asyncHandler)
Temporarily sets the state of an alarm for testing purposes. When the updated StateValue
differs
from the previous value, the action configured for the appropriate state is invoked. For example, if your alarm
is configured to send an Amazon SNS message when an alarm is triggered, temporarily changing the alarm's state to
ALARM sends an Amazon SNS message. The alarm returns to its actual state (often within seconds). Because
the alarm state change happens very quickly, it is typically only visible in the alarm's History tab in
the Amazon CloudWatch console or through DescribeAlarmHistory
.
setAlarmStateRequest
- Describes the inputs for SetAlarmState.asyncHandler
- Asynchronous callback handler for events in the lifecycle of the request. Users can provide an
implementation of the callback methods in this interface to receive notification of successful or
unsuccessful completion of the operation.Copyright © 2016. All rights reserved.