AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
Creates a rule for the specified listener. The listener must be associated with an Application Load Balancer.
Each rule consists of a priority, one or more actions, and one or more conditions. Rules are evaluated in priority order, from the lowest value to the highest value. When the conditions for a rule are met, its actions are performed. If the conditions for no rules are met, the actions for the default rule are performed. For more information, see Listener rules in the Application Load Balancers Guide.
For .NET Core this operation is only available in asynchronous form. Please refer to CreateRuleAsync.
Namespace: Amazon.ElasticLoadBalancingV2
Assembly: AWSSDK.ElasticLoadBalancingV2.dll
Version: 3.x.y.z
public abstract CreateRuleResponse CreateRule( CreateRuleRequest request )
Container for the necessary parameters to execute the CreateRule service method.
Exception | Condition |
---|---|
IncompatibleProtocolsException | The specified configuration is not valid with this protocol. |
InvalidConfigurationRequestException | The requested configuration is not valid. |
InvalidLoadBalancerActionException | The requested action is not valid. |
ListenerNotFoundException | The specified listener does not exist. |
PriorityInUseException | The specified priority is in use. |
TargetGroupAssociationLimitException | You've reached the limit on the number of load balancers per target group. |
TargetGroupNotFoundException | The specified target group does not exist. |
TooManyActionsException | You've reached the limit on the number of actions per rule. |
TooManyRegistrationsForTargetIdException | You've reached the limit on the number of times a target can be registered with a load balancer. |
TooManyRulesException | You've reached the limit on the number of rules per load balancer. |
TooManyTagsException | You've reached the limit on the number of tags for this resource. |
TooManyTargetGroupsException | You've reached the limit on the number of target groups for your Amazon Web Services account. |
TooManyTargetsException | You've reached the limit on the number of targets. |
TooManyUniqueTargetGroupsPerLoadBalancerException | You've reached the limit on the number of unique target groups per load balancer across all listeners. If a target group is used by multiple actions for a load balancer, it is counted as only one use. |
UnsupportedProtocolException | The specified protocol is not supported. |
This example creates a rule that forwards requests to the specified target group if the URL contains the specified pattern (for example, /img/*).
var client = new AmazonElasticLoadBalancingV2Client(); var response = client.CreateRule(new CreateRuleRequest { Actions = new List<Action> { new Action { TargetGroupArn = "arn:aws:elasticloadbalancing:us-west-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067", Type = "forward" } }, Conditions = new List<RuleCondition> { new RuleCondition { Field = "path-pattern", Values = new List<string> { "/img/*" } } }, ListenerArn = "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", Priority = 10 }); List<Rule> rules = response.Rules;
.NET Framework:
Supported in: 4.5, 4.0, 3.5