awslimitchecker.services.elb module¶
-
awslimitchecker.services.elb.
ELBV2_MAX_RETRY_ATTEMPTS
= 12¶ Override the elbv2 API maximum retry attempts
-
class
awslimitchecker.services.elb.
_ElbService
(warning_threshold, critical_threshold, boto_connection_kwargs, quotas_client)[source]¶ Bases:
awslimitchecker.services.base._AwsService
Describes an AWS service and its limits, and provides methods to query current utilization.
Constructors of _AwsService subclasses must not make any external connections; these must be made lazily as needed in other methods. _AwsService subclasses should be usable without any external network connections.
Parameters: - warning_threshold (int) – the default warning threshold, as an integer percentage, for any limits without a specifically-set threshold.
- critical_threshold (int) – the default critical threshold, as an integer percentage, for any limits without a specifically-set threshold.
- boto_connection_kwargs (dict) – Dictionary of keyword arguments to pass to boto connection methods.
- quotas_client (
ServiceQuotasClient
orNone
) – Instance of ServiceQuotasClient
-
__module__
= 'awslimitchecker.services.elb'¶
-
_find_usage_elbv1
()[source]¶ Find usage for ELBv1 / Classic ELB and update the appropriate limits.
Returns: number of Classic ELBs in use Return type: int
-
_find_usage_elbv2
()[source]¶ Find usage for ELBv2 / Application LB and update the appropriate limits.
Returns: number of Application LBs in use Return type: int
-
_update_limits_from_api
()[source]¶ Query ELB’s DescribeAccountLimits API action, and update limits with the quotas returned. Updates
self.limits
.
-
_update_usage_for_alb
(conn, alb_arn, alb_name)[source]¶ Update usage for a single ALB.
Parameters: - conn (
ElasticLoadBalancing.Client
) – elbv2 API connection - alb_arn (str) – Load Balancer ARN
- alb_name (str) – Load Balancer Name
- conn (
-
_update_usage_for_nlb
(conn, nlb_arn, nlb_name)[source]¶ Update usage for a single NLB.
Parameters: - conn (
ElasticLoadBalancing.Client
) – elbv2 API connection - nlb_arn (str) – Load Balancer ARN
- nlb_name (str) – Load Balancer Name
- conn (
-
api_name
= 'elb'¶
-
find_usage
()[source]¶ Determine the current usage for each limit of this service, and update corresponding Limit via
_add_current_usage()
.
-
get_limits
()[source]¶ Return all known limits for this service, as a dict of their names to
AwsLimit
objects.Returns: dict of limit names to AwsLimit
objectsReturn type: dict
-
quotas_service_code
= 'elasticloadbalancing'¶
-
required_iam_permissions
()[source]¶ Return a list of IAM Actions required for this Service to function properly. All Actions will be shown with an Effect of “Allow” and a Resource of “*”.
Returns: list of IAM Action strings Return type: list
-
service_name
= 'ELB'¶
-
awslimitchecker.services.elb.
allow_count_or_none_units
(value, in_unit, out_unit)[source]¶ This is a unit converter for Service Quotas; see
ServiceQuotasClient.get_quota_value()
for details.This is a work-around for https://github.com/jantman/awslimitchecker/issues/503 where, sometime between 2020-11-02 and 2020-11-09, the quota unit for Application Load Balancers per Region and Classic Load Balancers per Region changed, without announcement or warning, from “Count” to “None”. This converter allows both options and treats them identically.