AutoScalingPlans.ScalingPlan
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html
and customized_scaling_metric_specification = {
metric_name : string;
statistic : string;
dimensions : metric_dimension list option;
unit : string option;
namespace : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html
and application_source = {
cloud_formation_stack_arn : string option;
tag_filters : tag_filter list option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-applicationsource.html
and customized_load_metric_specification = {
metric_name : string;
statistic : string;
dimensions : metric_dimension list option;
unit : string option;
namespace : string;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html
and target_tracking_configuration = {
scale_out_cooldown : int option;
target_value : float;
predefined_scaling_metric_specification : predefined_scaling_metric_specification
option;
disable_scale_in : bool option;
scale_in_cooldown : int option;
estimated_instance_warmup : int option;
customized_scaling_metric_specification : customized_scaling_metric_specification
option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-targettrackingconfiguration.html
and scaling_instruction = {
disable_dynamic_scaling : bool option;
service_namespace : string;
predictive_scaling_max_capacity_behavior : string option;
scalable_dimension : string;
scaling_policy_update_behavior : string option;
min_capacity : int;
target_tracking_configurations : target_tracking_configuration list;
predictive_scaling_max_capacity_buffer : int option;
customized_load_metric_specification : customized_load_metric_specification
option;
predefined_load_metric_specification : predefined_load_metric_specification
option;
resource_id : string;
scheduled_action_buffer_time : int option;
max_capacity : int;
predictive_scaling_mode : string option;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html
type properties = {
application_source : application_source;
scaling_instructions : scaling_instruction list;
}
see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html;
val make_properties :
application_source:application_source ->
scaling_instructions:scaling_instruction list ->
unit ->
properties
val make_tag_filter : ?values:string list -> key:string -> unit -> tag_filter
val make_predefined_load_metric_specification :
predefined_load_metric_type:string ->
?resource_label:string ->
unit ->
predefined_load_metric_specification
val make_metric_dimension :
value:string ->
name:string ->
unit ->
metric_dimension
val make_predefined_scaling_metric_specification :
?resource_label:string ->
predefined_scaling_metric_type:string ->
unit ->
predefined_scaling_metric_specification
val make_customized_scaling_metric_specification :
metric_name:string ->
statistic:string ->
?dimensions:metric_dimension list ->
?unit:string ->
namespace:string ->
unit ->
customized_scaling_metric_specification
val make_application_source :
?cloud_formation_stack_arn:string ->
?tag_filters:tag_filter list ->
unit ->
application_source
val make_customized_load_metric_specification :
metric_name:string ->
statistic:string ->
?dimensions:metric_dimension list ->
?unit:string ->
namespace:string ->
unit ->
customized_load_metric_specification
val make_target_tracking_configuration :
?scale_out_cooldown:int ->
target_value:float ->
?predefined_scaling_metric_specification:
predefined_scaling_metric_specification ->
?disable_scale_in:bool ->
?scale_in_cooldown:int ->
?estimated_instance_warmup:int ->
?customized_scaling_metric_specification:
customized_scaling_metric_specification ->
unit ->
target_tracking_configuration
val make_scaling_instruction :
?disable_dynamic_scaling:bool ->
service_namespace:string ->
?predictive_scaling_max_capacity_behavior:string ->
scalable_dimension:string ->
?scaling_policy_update_behavior:string ->
min_capacity:int ->
target_tracking_configurations:target_tracking_configuration list ->
?predictive_scaling_max_capacity_buffer:int ->
?customized_load_metric_specification:customized_load_metric_specification ->
?predefined_load_metric_specification:predefined_load_metric_specification ->
resource_id:string ->
?scheduled_action_buffer_time:int ->
max_capacity:int ->
?predictive_scaling_mode:string ->
unit ->
scaling_instruction
val yojson_of_tag_filter : tag_filter -> Yojson.Safe.t
val yojson_of_predefined_load_metric_specification :
predefined_load_metric_specification ->
Yojson.Safe.t
val yojson_of_metric_dimension : metric_dimension -> Yojson.Safe.t
val yojson_of_predefined_scaling_metric_specification :
predefined_scaling_metric_specification ->
Yojson.Safe.t
val yojson_of_customized_scaling_metric_specification :
customized_scaling_metric_specification ->
Yojson.Safe.t
val yojson_of_application_source :
application_source ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_customized_load_metric_specification :
customized_load_metric_specification ->
Yojson.Safe.t
val yojson_of_target_tracking_configuration :
target_tracking_configuration ->
Yojson.Safe.t
val yojson_of_scaling_instruction :
scaling_instruction ->
[> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties :
properties ->
[> `Assoc of
(string
* [> `Assoc of (string * Yojson.Safe.t) list
| `List of [> `Assoc of (string * Yojson.Safe.t) list ] list ])
list ]
val create_attributes : string -> attributes