/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the autoscaling-2011-01-01.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.AutoScaling.Model
{
///
/// Container for the parameters to the EnableMetricsCollection operation.
/// Enables group metrics collection for the specified Auto Scaling group.
///
///
///
/// You can use these metrics to track changes in an Auto Scaling group and to set alarms
/// on threshold values. You can view group metrics using the Amazon EC2 Auto Scaling
/// console or the CloudWatch console. For more information, see Monitor
/// CloudWatch metrics for your Auto Scaling groups and instances in the Amazon
/// EC2 Auto Scaling User Guide.
///
///
public partial class EnableMetricsCollectionRequest : AmazonAutoScalingRequest
{
private string _autoScalingGroupName;
private string _granularity;
private List _metrics = new List();
///
/// Gets and sets the property AutoScalingGroupName.
///
/// The name of the Auto Scaling group.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string AutoScalingGroupName
{
get { return this._autoScalingGroupName; }
set { this._autoScalingGroupName = value; }
}
// Check to see if AutoScalingGroupName property is set
internal bool IsSetAutoScalingGroupName()
{
return this._autoScalingGroupName != null;
}
///
/// Gets and sets the property Granularity.
///
/// The frequency at which Amazon EC2 Auto Scaling sends aggregated data to CloudWatch.
/// The only valid value is 1Minute
.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string Granularity
{
get { return this._granularity; }
set { this._granularity = value; }
}
// Check to see if Granularity property is set
internal bool IsSetGranularity()
{
return this._granularity != null;
}
///
/// Gets and sets the property Metrics.
///
/// Identifies the metrics to enable.
///
///
///
/// You can specify one or more of the following metrics:
///
/// -
///
///
GroupMinSize
///
/// -
///
///
GroupMaxSize
///
/// -
///
///
GroupDesiredCapacity
///
/// -
///
///
GroupInServiceInstances
///
/// -
///
///
GroupPendingInstances
///
/// -
///
///
GroupStandbyInstances
///
/// -
///
///
GroupTerminatingInstances
///
/// -
///
///
GroupTotalInstances
///
/// -
///
///
GroupInServiceCapacity
///
/// -
///
///
GroupPendingCapacity
///
/// -
///
///
GroupStandbyCapacity
///
/// -
///
///
GroupTerminatingCapacity
///
/// -
///
///
GroupTotalCapacity
///
/// -
///
///
WarmPoolDesiredCapacity
///
/// -
///
///
WarmPoolWarmedCapacity
///
/// -
///
///
WarmPoolPendingCapacity
///
/// -
///
///
WarmPoolTerminatingCapacity
///
/// -
///
///
WarmPoolTotalCapacity
///
/// -
///
///
GroupAndWarmPoolDesiredCapacity
///
/// -
///
///
GroupAndWarmPoolTotalCapacity
///
///
///
/// If you specify Granularity
and don't specify any metrics, all metrics
/// are enabled.
///
///
///
/// For more information, see Auto
/// Scaling group metrics in the Amazon EC2 Auto Scaling User Guide.
///
///
public List Metrics
{
get { return this._metrics; }
set { this._metrics = value; }
}
// Check to see if Metrics property is set
internal bool IsSetMetrics()
{
return this._metrics != null && this._metrics.Count > 0;
}
}
}