Module AutoScalingPlans.ScalingPlan

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscalingplans-scalingplan.html

type tag_filter = {
  1. values : string list option;
  2. key : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-tagfilter.html

and predefined_load_metric_specification = {
  1. predefined_load_metric_type : string;
  2. resource_label : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedloadmetricspecification.html

and metric_dimension = {
  1. value : string;
  2. name : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-metricdimension.html

and predefined_scaling_metric_specification = {
  1. resource_label : string option;
  2. predefined_scaling_metric_type : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-predefinedscalingmetricspecification.html

and customized_scaling_metric_specification = {
  1. metric_name : string;
  2. statistic : string;
  3. dimensions : metric_dimension list option;
  4. unit : string option;
  5. namespace : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedscalingmetricspecification.html

and application_source = {
  1. cloud_formation_stack_arn : string option;
  2. 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 = {
  1. metric_name : string;
  2. statistic : string;
  3. dimensions : metric_dimension list option;
  4. unit : string option;
  5. namespace : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-customizedloadmetricspecification.html

and target_tracking_configuration = {
  1. scale_out_cooldown : int option;
  2. target_value : float;
  3. predefined_scaling_metric_specification : predefined_scaling_metric_specification option;
  4. disable_scale_in : bool option;
  5. scale_in_cooldown : int option;
  6. estimated_instance_warmup : int option;
  7. 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 = {
  1. disable_dynamic_scaling : bool option;
  2. service_namespace : string;
  3. predictive_scaling_max_capacity_behavior : string option;
  4. scalable_dimension : string;
  5. scaling_policy_update_behavior : string option;
  6. min_capacity : int;
  7. target_tracking_configurations : target_tracking_configuration list;
  8. predictive_scaling_max_capacity_buffer : int option;
  9. customized_load_metric_specification : customized_load_metric_specification option;
  10. predefined_load_metric_specification : predefined_load_metric_specification option;
  11. resource_id : string;
  12. scheduled_action_buffer_time : int option;
  13. max_capacity : int;
  14. predictive_scaling_mode : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscalingplans-scalingplan-scalinginstruction.html

type properties = {
  1. application_source : application_source;
  2. 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 ]
type attributes = {
  1. ref_ : string;
  2. scaling_plan_name : string;
  3. scaling_plan_version : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string