Module ApplicationAutoScaling.ScalingPolicy

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html

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

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

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

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricdimension.html

and step_adjustment = {
  1. metric_interval_upper_bound : float option;
  2. metric_interval_lower_bound : float option;
  3. scaling_adjustment : int;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepadjustment.html

and predefined_metric_specification = {
  1. predefined_metric_type : string;
  2. resource_label : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html

and step_scaling_policy_configuration = {
  1. metric_aggregation_type : string option;
  2. cooldown : int option;
  3. step_adjustments : step_adjustment list option;
  4. min_adjustment_magnitude : int option;
  5. adjustment_type : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html

and target_tracking_metric = {
  1. metric_name : string option;
  2. dimensions : target_tracking_metric_dimension list option;
  3. namespace : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetric.html

and target_tracking_metric_stat = {
  1. stat : string option;
  2. metric : target_tracking_metric option;
  3. unit : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricstat.html

and target_tracking_metric_data_query = {
  1. return_data : bool option;
  2. expression : string option;
  3. label : string option;
  4. metric_stat : target_tracking_metric_stat option;
  5. id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingmetricdataquery.html

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

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html

and target_tracking_scaling_policy_configuration = {
  1. scale_out_cooldown : int option;
  2. target_value : float;
  3. customized_metric_specification : customized_metric_specification option;
  4. disable_scale_in : bool option;
  5. scale_in_cooldown : int option;
  6. predefined_metric_specification : predefined_metric_specification option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html

type properties = {
  1. policy_type : string;
  2. resource_id : string option;
  3. scaling_target_id : string option;
  4. policy_name : string;
  5. service_namespace : string option;
  6. scalable_dimension : string option;
  7. target_tracking_scaling_policy_configuration : target_tracking_scaling_policy_configuration option;
  8. step_scaling_policy_configuration : step_scaling_policy_configuration option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html;

val make_properties : policy_type:string -> ?resource_id:string -> ?scaling_target_id:string -> policy_name:string -> ?service_namespace:string -> ?scalable_dimension:string -> ?target_tracking_scaling_policy_configuration: target_tracking_scaling_policy_configuration -> ?step_scaling_policy_configuration:step_scaling_policy_configuration -> unit -> properties
val make_metric_dimension : value:string -> name:string -> unit -> metric_dimension
val make_target_tracking_metric_dimension : ?value:string -> ?name:string -> unit -> target_tracking_metric_dimension
val make_step_adjustment : ?metric_interval_upper_bound:float -> ?metric_interval_lower_bound:float -> scaling_adjustment:int -> unit -> step_adjustment
val make_predefined_metric_specification : predefined_metric_type:string -> ?resource_label:string -> unit -> predefined_metric_specification
val make_step_scaling_policy_configuration : ?metric_aggregation_type:string -> ?cooldown:int -> ?step_adjustments:step_adjustment list -> ?min_adjustment_magnitude:int -> ?adjustment_type:string -> unit -> step_scaling_policy_configuration
val make_target_tracking_metric : ?metric_name:string -> ?dimensions:target_tracking_metric_dimension list -> ?namespace:string -> unit -> target_tracking_metric
val make_target_tracking_metric_stat : ?stat:string -> ?metric:target_tracking_metric -> ?unit:string -> unit -> target_tracking_metric_stat
val make_target_tracking_metric_data_query : ?return_data:bool -> ?expression:string -> ?label:string -> ?metric_stat:target_tracking_metric_stat -> ?id:string -> unit -> target_tracking_metric_data_query
val make_customized_metric_specification : ?metric_name:string -> ?metrics:target_tracking_metric_data_query list -> ?statistic:string -> ?dimensions:metric_dimension list -> ?unit:string -> ?namespace:string -> unit -> customized_metric_specification
val make_target_tracking_scaling_policy_configuration : ?scale_out_cooldown:int -> target_value:float -> ?customized_metric_specification:customized_metric_specification -> ?disable_scale_in:bool -> ?scale_in_cooldown:int -> ?predefined_metric_specification:predefined_metric_specification -> unit -> target_tracking_scaling_policy_configuration
val yojson_of_metric_dimension : metric_dimension -> Yojson.Safe.t
val yojson_of_target_tracking_metric_dimension : target_tracking_metric_dimension -> Yojson.Safe.t
val yojson_of_step_adjustment : step_adjustment -> Yojson.Safe.t
val yojson_of_predefined_metric_specification : predefined_metric_specification -> Yojson.Safe.t
val yojson_of_step_scaling_policy_configuration : step_scaling_policy_configuration -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_target_tracking_metric : target_tracking_metric -> Yojson.Safe.t
val yojson_of_target_tracking_metric_stat : target_tracking_metric_stat -> Yojson.Safe.t
val yojson_of_target_tracking_metric_data_query : target_tracking_metric_data_query -> Yojson.Safe.t
val yojson_of_customized_metric_specification : customized_metric_specification -> Yojson.Safe.t
val yojson_of_target_tracking_scaling_policy_configuration : target_tracking_scaling_policy_configuration -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
  2. arn : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string