public interface AmazonCloudWatchEvents
Amazon CloudWatch Events helps you to respond to state changes in your AWS resources. When your resources change state they automatically send events into an event stream. You can create rules that match selected events in the stream and route them to targets to take action. You can also use rules to take action on a pre-determined schedule. For example, you can configure rules to:
For more information about Amazon CloudWatch Events features, see the Amazon CloudWatch Developer Guide.
Modifier and Type | Field and Description |
---|---|
static String |
ENDPOINT_PREFIX
The region metadata service name for computing region endpoints.
|
Modifier and Type | Method and Description |
---|---|
DeleteRuleResult |
deleteRule(DeleteRuleRequest deleteRuleRequest)
Deletes a rule.
|
DescribeRuleResult |
describeRule(DescribeRuleRequest describeRuleRequest)
Describes the details of the specified rule.
|
DisableRuleResult |
disableRule(DisableRuleRequest disableRuleRequest)
Disables a rule.
|
EnableRuleResult |
enableRule(EnableRuleRequest enableRuleRequest)
Enables a rule.
|
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.
|
ListRuleNamesByTargetResult |
listRuleNamesByTarget(ListRuleNamesByTargetRequest listRuleNamesByTargetRequest)
Lists the names of the rules that the given target is put to.
|
ListRulesResult |
listRules(ListRulesRequest listRulesRequest)
Lists the Amazon CloudWatch Events rules in your account.
|
ListTargetsByRuleResult |
listTargetsByRule(ListTargetsByRuleRequest listTargetsByRuleRequest)
Lists of targets assigned to the rule.
|
PutEventsResult |
putEvents(PutEventsRequest putEventsRequest)
Sends custom events to Amazon CloudWatch Events so that they can be matched to rules.
|
PutRuleResult |
putRule(PutRuleRequest putRuleRequest)
Creates or updates a rule.
|
PutTargetsResult |
putTargets(PutTargetsRequest putTargetsRequest)
Adds target(s) to a rule.
|
RemoveTargetsResult |
removeTargets(RemoveTargetsRequest removeTargetsRequest)
Removes target(s) from a rule so that when the rule is triggered, those targets will no longer be invoked.
|
void |
setEndpoint(String endpoint)
Overrides the default endpoint for this client ("events.us-east-1.amazonaws.com").
|
void |
setRegion(Region region)
An alternative to
setEndpoint(String) , sets the regional endpoint for this
client's service calls. |
void |
shutdown()
Shuts down this client object, releasing any resources that might be held open.
|
TestEventPatternResult |
testEventPattern(TestEventPatternRequest testEventPatternRequest)
Tests whether an event pattern matches the provided event.
|
static final String ENDPOINT_PREFIX
void setEndpoint(String endpoint)
Callers can pass in just the endpoint (ex: "events.us-east-1.amazonaws.com") or a full URL, including the
protocol (ex: "events.us-east-1.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
This method is not threadsafe. An endpoint 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 or retrying.
endpoint
- The endpoint (ex: "events.us-east-1.amazonaws.com") or a full URL, including the protocol (ex:
"events.us-east-1.amazonaws.com") of the region specific AWS endpoint this client will communicate with.void setRegion(Region region)
setEndpoint(String)
, sets the regional endpoint for this
client's service calls. Callers can use this method to control which AWS region they want to work with.
By default, all service endpoints in all regions use the https protocol. To use http instead, specify it in the
ClientConfiguration
supplied at construction.
This method is not threadsafe. A region 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 or retrying.
region
- The region this client will communicate with. See Region.getRegion(com.amazonaws.regions.Regions)
for accessing a given region. Must not be null and must be a region where the service is available.Region.getRegion(com.amazonaws.regions.Regions)
,
Region.createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
,
Region.isServiceSupported(String)
DeleteRuleResult deleteRule(DeleteRuleRequest deleteRuleRequest)
Deletes a rule. You must remove all targets from a rule using RemoveTargets before you can delete the rule.
Note: When you delete a rule, incoming events might still continue to match to the deleted rule. Please allow a short period of time for changes to take effect.
deleteRuleRequest
- Container for the parameters to the DeleteRule operation.ConcurrentModificationException
- This exception occurs if there is concurrent modification on rule or target.InternalException
- This exception occurs due to unexpected causes.DescribeRuleResult describeRule(DescribeRuleRequest describeRuleRequest)
Describes the details of the specified rule.
describeRuleRequest
- Container for the parameters to the DescribeRule operation.ResourceNotFoundException
- The rule does not exist.InternalException
- This exception occurs due to unexpected causes.DisableRuleResult disableRule(DisableRuleRequest disableRuleRequest)
Disables a rule. A disabled rule won't match any events, and won't self-trigger if it has a schedule expression.
Note: When you disable a rule, incoming events might still continue to match to the disabled rule. Please allow a short period of time for changes to take effect.
disableRuleRequest
- Container for the parameters to the DisableRule operation.ResourceNotFoundException
- The rule does not exist.ConcurrentModificationException
- This exception occurs if there is concurrent modification on rule or target.InternalException
- This exception occurs due to unexpected causes.EnableRuleResult enableRule(EnableRuleRequest enableRuleRequest)
Enables a rule. If the rule does not exist, the operation fails.
Note: When you enable a rule, incoming events might not immediately start matching to a newly enabled rule. Please allow a short period of time for changes to take effect.
enableRuleRequest
- Container for the parameters to the EnableRule operation.ResourceNotFoundException
- The rule does not exist.ConcurrentModificationException
- This exception occurs if there is concurrent modification on rule or target.InternalException
- This exception occurs due to unexpected causes.ListRuleNamesByTargetResult listRuleNamesByTarget(ListRuleNamesByTargetRequest listRuleNamesByTargetRequest)
Lists the names of the rules that the given target is put to. You can see which of the rules in Amazon CloudWatch Events can invoke a specific target in your account. If you have more rules in your account than the given limit, the results will be paginated. In that case, use the next token returned in the response and repeat ListRulesByTarget until the NextToken in the response is returned as null.
listRuleNamesByTargetRequest
- Container for the parameters to the ListRuleNamesByTarget operation.InternalException
- This exception occurs due to unexpected causes.ListRulesResult listRules(ListRulesRequest listRulesRequest)
Lists the Amazon CloudWatch Events rules in your account. You can either list all the rules or you can provide a prefix to match to the rule names. If you have more rules in your account than the given limit, the results will be paginated. In that case, use the next token returned in the response and repeat ListRules until the NextToken in the response is returned as null.
listRulesRequest
- Container for the parameters to the ListRules operation.InternalException
- This exception occurs due to unexpected causes.ListTargetsByRuleResult listTargetsByRule(ListTargetsByRuleRequest listTargetsByRuleRequest)
Lists of targets assigned to the rule.
listTargetsByRuleRequest
- Container for the parameters to the ListTargetsByRule operation.ResourceNotFoundException
- The rule does not exist.InternalException
- This exception occurs due to unexpected causes.PutEventsResult putEvents(PutEventsRequest putEventsRequest)
Sends custom events to Amazon CloudWatch Events so that they can be matched to rules.
putEventsRequest
- Container for the parameters to the PutEvents operation.InternalException
- This exception occurs due to unexpected causes.PutRuleResult putRule(PutRuleRequest putRuleRequest)
Creates or updates a rule. Rules are enabled by default, or based on value of the State parameter. You can disable a rule using DisableRule.
Note: When you create or update a rule, incoming events might not immediately start matching to new or updated rules. Please allow a short period of time for changes to take effect.
A rule must contain at least an EventPattern or ScheduleExpression. Rules with EventPatterns are triggered when a matching event is observed. Rules with ScheduleExpressions self-trigger based on the given schedule. A rule can have both an EventPattern and a ScheduleExpression, in which case the rule will trigger on matching events as well as on a schedule.
Note: Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.
putRuleRequest
- Container for the parameters to the PutRule operation.InvalidEventPatternException
- The event pattern is invalid.LimitExceededException
- This exception occurs if you try to create more rules or add more targets to a rule than allowed by
default.ConcurrentModificationException
- This exception occurs if there is concurrent modification on rule or target.InternalException
- This exception occurs due to unexpected causes.PutTargetsResult putTargets(PutTargetsRequest putTargetsRequest)
Adds target(s) to a rule. Targets are the resources that can be invoked when a rule is triggered. For example, AWS Lambda functions, Amazon Kinesis streams, and built-in targets. Updates the target(s) if they are already associated with the role. In other words, if there is already a target with the given target ID, then the target associated with that ID is updated.
In order to be able to make API calls against the resources you own, Amazon CloudWatch Events needs the appropriate permissions. For AWS Lambda and Amazon SNS resources, CloudWatch Events relies on resource-based policies. For Amazon Kinesis streams, CloudWatch Events relies on IAM roles. For more information, see Permissions for Sending Events to Targets in the Amazon CloudWatch Developer Guide.
Input and InputPath are mutually-exclusive and optional parameters of a target. When a rule is triggered due to a matched event, if for a target:
Note: When you add targets to a rule, when the associated rule triggers, new or updated targets might not be immediately invoked. Please allow a short period of time for changes to take effect.
putTargetsRequest
- Container for the parameters to the PutTargets operation.ResourceNotFoundException
- The rule does not exist.ConcurrentModificationException
- This exception occurs if there is concurrent modification on rule or target.LimitExceededException
- This exception occurs if you try to create more rules or add more targets to a rule than allowed by
default.InternalException
- This exception occurs due to unexpected causes.RemoveTargetsResult removeTargets(RemoveTargetsRequest removeTargetsRequest)
Removes target(s) from a rule so that when the rule is triggered, those targets will no longer be invoked.
Note: When you remove a target, when the associated rule triggers, removed targets might still continue to be invoked. Please allow a short period of time for changes to take effect.
removeTargetsRequest
- Container for the parameters to the RemoveTargets operation.ResourceNotFoundException
- The rule does not exist.ConcurrentModificationException
- This exception occurs if there is concurrent modification on rule or target.InternalException
- This exception occurs due to unexpected causes.TestEventPatternResult testEventPattern(TestEventPatternRequest testEventPatternRequest)
Tests whether an event pattern matches the provided event.
Note: Most services in AWS treat : or / as the same character in Amazon Resource Names (ARNs). However, CloudWatch Events uses an exact match in event patterns and rules. Be sure to use the correct ARN characters when creating event patterns so that they match the ARN syntax in the event you want to match.
testEventPatternRequest
- Container for the parameters to the TestEventPattern operation.InvalidEventPatternException
- The event pattern is invalid.InternalException
- This exception occurs due to unexpected causes.void shutdown()
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
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 a request.
request
- The originally executed request.Copyright © 2013 Amazon Web Services, Inc. All Rights Reserved.