Browse Source

ESS SDK Auto Released By kangning.tkn,Version:1.51.12

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 6 years ago
parent
commit
e7a323926e

+ 4 - 0
ChangeLog.txt

@@ -1,3 +1,7 @@
+2019-01-28 Version: 1.51.12
+1, Support modify vSwitch of scalingGroup.
+2, Support new target tracking scaling rule.
+
 2019-01-28 Version: 1.51.11
 1, modify DescribeSlowLogs OpenApi.
 

+ 1 - 0
services/ess/create_scaling_configuration.go

@@ -88,6 +88,7 @@ type CreateScalingConfigurationRequest struct {
 	SpotPriceLimit              *[]CreateScalingConfigurationSpotPriceLimit `position:"Query" name:"SpotPriceLimit"  type:"Repeated"`
 	SystemDiskCategory          string                                      `position:"Query" name:"SystemDisk.Category"`
 	UserData                    string                                      `position:"Query" name:"UserData"`
+	ResourceGroupId             string                                      `position:"Query" name:"ResourceGroupId"`
 	HostName                    string                                      `position:"Query" name:"HostName"`
 	Password                    string                                      `position:"Query" name:"Password"`
 	PasswordInherit             requests.Boolean                            `position:"Query" name:"PasswordInherit"`

+ 13 - 8
services/ess/create_scaling_rule.go

@@ -76,14 +76,19 @@ func (client *Client) CreateScalingRuleWithCallback(request *CreateScalingRuleRe
 // CreateScalingRuleRequest is the request struct for api CreateScalingRule
 type CreateScalingRuleRequest struct {
 	*requests.RpcRequest
-	ScalingRuleName      string           `position:"Query" name:"ScalingRuleName"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	AdjustmentValue      requests.Integer `position:"Query" name:"AdjustmentValue"`
-	ScalingGroupId       string           `position:"Query" name:"ScalingGroupId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	Cooldown             requests.Integer `position:"Query" name:"Cooldown"`
-	AdjustmentType       string           `position:"Query" name:"AdjustmentType"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceOwnerAccount    string           `position:"Query" name:"ResourceOwnerAccount"`
+	AdjustmentValue         requests.Integer `position:"Query" name:"AdjustmentValue"`
+	ScalingGroupId          string           `position:"Query" name:"ScalingGroupId"`
+	EstimatedInstanceWarmup requests.Integer `position:"Query" name:"EstimatedInstanceWarmup"`
+	OwnerAccount            string           `position:"Query" name:"OwnerAccount"`
+	AdjustmentType          string           `position:"Query" name:"AdjustmentType"`
+	DisableScaleIn          requests.Boolean `position:"Query" name:"DisableScaleIn"`
+	OwnerId                 requests.Integer `position:"Query" name:"OwnerId"`
+	ScalingRuleName         string           `position:"Query" name:"ScalingRuleName"`
+	Cooldown                requests.Integer `position:"Query" name:"Cooldown"`
+	TargetValue             requests.Float   `position:"Query" name:"TargetValue"`
+	ScalingRuleType         string           `position:"Query" name:"ScalingRuleType"`
+	MetricName              string           `position:"Query" name:"MetricName"`
 }
 
 // CreateScalingRuleResponse is the response struct for api CreateScalingRule

+ 112 - 0
services/ess/describe_account_attributes.go

@@ -0,0 +1,112 @@
+package ess
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License 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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeAccountAttributes invokes the ess.DescribeAccountAttributes API synchronously
+// api document: https://help.aliyun.com/api/ess/describeaccountattributes.html
+func (client *Client) DescribeAccountAttributes(request *DescribeAccountAttributesRequest) (response *DescribeAccountAttributesResponse, err error) {
+	response = CreateDescribeAccountAttributesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeAccountAttributesWithChan invokes the ess.DescribeAccountAttributes API asynchronously
+// api document: https://help.aliyun.com/api/ess/describeaccountattributes.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAccountAttributesWithChan(request *DescribeAccountAttributesRequest) (<-chan *DescribeAccountAttributesResponse, <-chan error) {
+	responseChan := make(chan *DescribeAccountAttributesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeAccountAttributes(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeAccountAttributesWithCallback invokes the ess.DescribeAccountAttributes API asynchronously
+// api document: https://help.aliyun.com/api/ess/describeaccountattributes.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAccountAttributesWithCallback(request *DescribeAccountAttributesRequest, callback func(response *DescribeAccountAttributesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeAccountAttributesResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeAccountAttributes(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeAccountAttributesRequest is the request struct for api DescribeAccountAttributes
+type DescribeAccountAttributesRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeAccountAttributesResponse is the response struct for api DescribeAccountAttributes
+type DescribeAccountAttributesResponse struct {
+	*responses.BaseResponse
+	MaxNumberOfScalingGroups         int `json:"MaxNumberOfScalingGroups" xml:"MaxNumberOfScalingGroups"`
+	MaxNumberOfScalingConfigurations int `json:"MaxNumberOfScalingConfigurations" xml:"MaxNumberOfScalingConfigurations"`
+	MaxNumberOfScalingRules          int `json:"MaxNumberOfScalingRules" xml:"MaxNumberOfScalingRules"`
+	MaxNumberOfScheduledTasks        int `json:"MaxNumberOfScheduledTasks" xml:"MaxNumberOfScheduledTasks"`
+	MaxNumberOfScalingInstances      int `json:"MaxNumberOfScalingInstances" xml:"MaxNumberOfScalingInstances"`
+	MaxNumberOfDBInstances           int `json:"MaxNumberOfDBInstances" xml:"MaxNumberOfDBInstances"`
+	MaxNumberOfLoadBalancers         int `json:"MaxNumberOfLoadBalancers" xml:"MaxNumberOfLoadBalancers"`
+	MaxNumberOfMinSize               int `json:"MaxNumberOfMinSize" xml:"MaxNumberOfMinSize"`
+	MaxNumberOfMaxSize               int `json:"MaxNumberOfMaxSize" xml:"MaxNumberOfMaxSize"`
+}
+
+// CreateDescribeAccountAttributesRequest creates a request to invoke DescribeAccountAttributes API
+func CreateDescribeAccountAttributesRequest() (request *DescribeAccountAttributesRequest) {
+	request = &DescribeAccountAttributesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Ess", "2014-08-28", "DescribeAccountAttributes", "ess", "openAPI")
+	return
+}
+
+// CreateDescribeAccountAttributesResponse creates a response to parse from DescribeAccountAttributes response
+func CreateDescribeAccountAttributesResponse() (response *DescribeAccountAttributesResponse) {
+	response = &DescribeAccountAttributesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 12 - 9
services/ess/describe_limitation.go

@@ -83,15 +83,18 @@ type DescribeLimitationRequest struct {
 // DescribeLimitationResponse is the response struct for api DescribeLimitation
 type DescribeLimitationResponse struct {
 	*responses.BaseResponse
-	MaxNumberOfScalingGroups         int `json:"MaxNumberOfScalingGroups" xml:"MaxNumberOfScalingGroups"`
-	MaxNumberOfScalingConfigurations int `json:"MaxNumberOfScalingConfigurations" xml:"MaxNumberOfScalingConfigurations"`
-	MaxNumberOfScalingRules          int `json:"MaxNumberOfScalingRules" xml:"MaxNumberOfScalingRules"`
-	MaxNumberOfScheduledTasks        int `json:"MaxNumberOfScheduledTasks" xml:"MaxNumberOfScheduledTasks"`
-	MaxNumberOfScalingInstances      int `json:"MaxNumberOfScalingInstances" xml:"MaxNumberOfScalingInstances"`
-	MaxNumberOfDBInstances           int `json:"MaxNumberOfDBInstances" xml:"MaxNumberOfDBInstances"`
-	MaxNumberOfLoadBalancers         int `json:"MaxNumberOfLoadBalancers" xml:"MaxNumberOfLoadBalancers"`
-	MaxNumberOfMinSize               int `json:"MaxNumberOfMinSize" xml:"MaxNumberOfMinSize"`
-	MaxNumberOfMaxSize               int `json:"MaxNumberOfMaxSize" xml:"MaxNumberOfMaxSize"`
+	MaxNumberOfScalingGroups              int `json:"MaxNumberOfScalingGroups" xml:"MaxNumberOfScalingGroups"`
+	MaxNumberOfScalingConfigurations      int `json:"MaxNumberOfScalingConfigurations" xml:"MaxNumberOfScalingConfigurations"`
+	MaxNumberOfScalingRules               int `json:"MaxNumberOfScalingRules" xml:"MaxNumberOfScalingRules"`
+	MaxNumberOfScheduledTasks             int `json:"MaxNumberOfScheduledTasks" xml:"MaxNumberOfScheduledTasks"`
+	MaxNumberOfScalingInstances           int `json:"MaxNumberOfScalingInstances" xml:"MaxNumberOfScalingInstances"`
+	MaxNumberOfDBInstances                int `json:"MaxNumberOfDBInstances" xml:"MaxNumberOfDBInstances"`
+	MaxNumberOfLoadBalancers              int `json:"MaxNumberOfLoadBalancers" xml:"MaxNumberOfLoadBalancers"`
+	MaxNumberOfMinSize                    int `json:"MaxNumberOfMinSize" xml:"MaxNumberOfMinSize"`
+	MaxNumberOfMaxSize                    int `json:"MaxNumberOfMaxSize" xml:"MaxNumberOfMaxSize"`
+	MaxNumberOfVServerGroups              int `json:"MaxNumberOfVServerGroups" xml:"MaxNumberOfVServerGroups"`
+	MaxNumberOfLifecycleHooks             int `json:"MaxNumberOfLifecycleHooks" xml:"MaxNumberOfLifecycleHooks"`
+	MaxNumberOfNotificationConfigurations int `json:"MaxNumberOfNotificationConfigurations" xml:"MaxNumberOfNotificationConfigurations"`
 }
 
 // CreateDescribeLimitationRequest creates a request to invoke DescribeLimitation API

+ 1 - 0
services/ess/describe_scaling_rules.go

@@ -90,6 +90,7 @@ type DescribeScalingRulesRequest struct {
 	ScalingRuleName9     string           `position:"Query" name:"ScalingRuleName.9"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	ScalingRuleType      string           `position:"Query" name:"ScalingRuleType"`
 	ScalingRuleId10      string           `position:"Query" name:"ScalingRuleId.10"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`

+ 21 - 6
services/ess/modify_alarm.go

@@ -76,12 +76,27 @@ func (client *Client) ModifyAlarmWithCallback(request *ModifyAlarmRequest, callb
 // ModifyAlarmRequest is the request struct for api ModifyAlarm
 type ModifyAlarmRequest struct {
 	*requests.RpcRequest
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	Name                 string           `position:"Query" name:"Name"`
-	Description          string           `position:"Query" name:"Description"`
-	AlarmAction          *[]string        `position:"Query" name:"AlarmAction"  type:"Repeated"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	AlarmTaskId          string           `position:"Query" name:"AlarmTaskId"`
+	MetricType           string                  `position:"Query" name:"MetricType"`
+	Period               requests.Integer        `position:"Query" name:"Period"`
+	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
+	GroupId              requests.Integer        `position:"Query" name:"GroupId"`
+	Description          string                  `position:"Query" name:"Description"`
+	AlarmAction          *[]string               `position:"Query" name:"AlarmAction"  type:"Repeated"`
+	Threshold            requests.Float          `position:"Query" name:"Threshold"`
+	OwnerId              requests.Integer        `position:"Query" name:"OwnerId"`
+	AlarmTaskId          string                  `position:"Query" name:"AlarmTaskId"`
+	Name                 string                  `position:"Query" name:"Name"`
+	EvaluationCount      requests.Integer        `position:"Query" name:"EvaluationCount"`
+	MetricName           string                  `position:"Query" name:"MetricName"`
+	ComparisonOperator   string                  `position:"Query" name:"ComparisonOperator"`
+	Dimension            *[]ModifyAlarmDimension `position:"Query" name:"Dimension"  type:"Repeated"`
+	Statistics           string                  `position:"Query" name:"Statistics"`
+}
+
+// ModifyAlarmDimension is a repeated param struct in ModifyAlarmRequest
+type ModifyAlarmDimension struct {
+	DimensionValue string `name:"DimensionValue"`
+	DimensionKey   string `name:"DimensionKey"`
 }
 
 // ModifyAlarmResponse is the response struct for api ModifyAlarm

+ 1 - 0
services/ess/modify_scaling_configuration.go

@@ -86,6 +86,7 @@ type ModifyScalingConfigurationRequest struct {
 	SpotPriceLimit           *[]ModifyScalingConfigurationSpotPriceLimit `position:"Query" name:"SpotPriceLimit"  type:"Repeated"`
 	SystemDiskCategory       string                                      `position:"Query" name:"SystemDisk.Category"`
 	UserData                 string                                      `position:"Query" name:"UserData"`
+	ResourceGroupId          string                                      `position:"Query" name:"ResourceGroupId"`
 	HostName                 string                                      `position:"Query" name:"HostName"`
 	PasswordInherit          requests.Boolean                            `position:"Query" name:"PasswordInherit"`
 	ImageName                string                                      `position:"Query" name:"ImageName"`

+ 1 - 0
services/ess/modify_scaling_group.go

@@ -82,6 +82,7 @@ type ModifyScalingGroupRequest struct {
 	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	ScalingGroupName             string           `position:"Query" name:"ScalingGroupName"`
 	ScalingGroupId               string           `position:"Query" name:"ScalingGroupId"`
+	VSwitchIds                   *[]string        `position:"Query" name:"VSwitchIds"  type:"Repeated"`
 	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
 	ActiveScalingConfigurationId string           `position:"Query" name:"ActiveScalingConfigurationId"`
 	MinSize                      requests.Integer `position:"Query" name:"MinSize"`

+ 13 - 9
services/ess/modify_scaling_rule.go

@@ -76,15 +76,19 @@ func (client *Client) ModifyScalingRuleWithCallback(request *ModifyScalingRuleRe
 // ModifyScalingRuleRequest is the request struct for api ModifyScalingRule
 type ModifyScalingRuleRequest struct {
 	*requests.RpcRequest
-	ScalingRuleName      string           `position:"Query" name:"ScalingRuleName"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	AdjustmentValue      requests.Integer `position:"Query" name:"AdjustmentValue"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	Cooldown             requests.Integer `position:"Query" name:"Cooldown"`
-	AdjustmentType       string           `position:"Query" name:"AdjustmentType"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ScalingRuleId        string           `position:"Query" name:"ScalingRuleId"`
+	ResourceOwnerId         requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount    string           `position:"Query" name:"ResourceOwnerAccount"`
+	AdjustmentValue         requests.Integer `position:"Query" name:"AdjustmentValue"`
+	EstimatedInstanceWarmup requests.Integer `position:"Query" name:"EstimatedInstanceWarmup"`
+	OwnerAccount            string           `position:"Query" name:"OwnerAccount"`
+	AdjustmentType          string           `position:"Query" name:"AdjustmentType"`
+	DisableScaleIn          requests.Boolean `position:"Query" name:"DisableScaleIn"`
+	OwnerId                 requests.Integer `position:"Query" name:"OwnerId"`
+	ScalingRuleId           string           `position:"Query" name:"ScalingRuleId"`
+	ScalingRuleName         string           `position:"Query" name:"ScalingRuleName"`
+	Cooldown                requests.Integer `position:"Query" name:"Cooldown"`
+	TargetValue             requests.Float   `position:"Query" name:"TargetValue"`
+	MetricName              string           `position:"Query" name:"MetricName"`
 }
 
 // ModifyScalingRuleResponse is the response struct for api ModifyScalingRule

+ 8 - 7
services/ess/struct_alarm.go

@@ -17,19 +17,20 @@ package ess
 
 // Alarm is a nested struct in ess response
 type Alarm struct {
-	AlarmTaskId        string       `json:"AlarmTaskId" xml:"AlarmTaskId"`
 	Name               string       `json:"Name" xml:"Name"`
-	Description        string       `json:"Description" xml:"Description"`
 	MetricType         string       `json:"MetricType" xml:"MetricType"`
-	MetricName         string       `json:"MetricName" xml:"MetricName"`
 	Period             int          `json:"Period" xml:"Period"`
-	Statistics         string       `json:"Statistics" xml:"Statistics"`
-	ComparisonOperator string       `json:"ComparisonOperator" xml:"ComparisonOperator"`
 	Threshold          float64      `json:"Threshold" xml:"Threshold"`
-	EvaluationCount    int          `json:"EvaluationCount" xml:"EvaluationCount"`
+	AlarmTaskId        string       `json:"AlarmTaskId" xml:"AlarmTaskId"`
+	ComparisonOperator string       `json:"ComparisonOperator" xml:"ComparisonOperator"`
 	State              string       `json:"State" xml:"State"`
-	ScalingGroupId     string       `json:"ScalingGroupId" xml:"ScalingGroupId"`
 	Enable             bool         `json:"Enable" xml:"Enable"`
+	MetricName         string       `json:"MetricName" xml:"MetricName"`
+	Statistics         string       `json:"Statistics" xml:"Statistics"`
+	ScalingGroupId     string       `json:"ScalingGroupId" xml:"ScalingGroupId"`
+	Description        string       `json:"Description" xml:"Description"`
+	AlarmTaskName      string       `json:"AlarmTaskName" xml:"AlarmTaskName"`
+	EvaluationCount    int          `json:"EvaluationCount" xml:"EvaluationCount"`
 	AlarmActions       AlarmActions `json:"AlarmActions" xml:"AlarmActions"`
 	Dimensions         Dimensions   `json:"Dimensions" xml:"Dimensions"`
 }

+ 21 - 0
services/ess/struct_alarms.go

@@ -0,0 +1,21 @@
+package ess
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License 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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Alarms is a nested struct in ess response
+type Alarms struct {
+	Alarm []Alarm `json:"Alarm" xml:"Alarm"`
+}

+ 1 - 0
services/ess/struct_scaling_configuration.go

@@ -45,6 +45,7 @@ type ScalingConfiguration struct {
 	SecurityEnhancementStrategy string         `json:"SecurityEnhancementStrategy" xml:"SecurityEnhancementStrategy"`
 	SpotStrategy                string         `json:"SpotStrategy" xml:"SpotStrategy"`
 	PasswordInherit             bool           `json:"PasswordInherit" xml:"PasswordInherit"`
+	ResourceGroupId             string         `json:"ResourceGroupId" xml:"ResourceGroupId"`
 	InstanceTypes               InstanceTypes  `json:"InstanceTypes" xml:"InstanceTypes"`
 	DataDisks                   DataDisks      `json:"DataDisks" xml:"DataDisks"`
 	Tags                        Tags           `json:"Tags" xml:"Tags"`

+ 1 - 0
services/ess/struct_scaling_instance.go

@@ -27,4 +27,5 @@ type ScalingInstance struct {
 	CreationType           string `json:"CreationType" xml:"CreationType"`
 	LaunchTemplateId       string `json:"LaunchTemplateId" xml:"LaunchTemplateId"`
 	LaunchTemplateVersion  string `json:"LaunchTemplateVersion" xml:"LaunchTemplateVersion"`
+	WarmupState            string `json:"WarmupState" xml:"WarmupState"`
 }

+ 15 - 9
services/ess/struct_scaling_rule.go

@@ -17,13 +17,19 @@ package ess
 
 // ScalingRule is a nested struct in ess response
 type ScalingRule struct {
-	ScalingRuleId   string `json:"ScalingRuleId" xml:"ScalingRuleId"`
-	ScalingGroupId  string `json:"ScalingGroupId" xml:"ScalingGroupId"`
-	ScalingRuleName string `json:"ScalingRuleName" xml:"ScalingRuleName"`
-	Cooldown        int    `json:"Cooldown" xml:"Cooldown"`
-	AdjustmentType  string `json:"AdjustmentType" xml:"AdjustmentType"`
-	AdjustmentValue int    `json:"AdjustmentValue" xml:"AdjustmentValue"`
-	MinSize         int    `json:"MinSize" xml:"MinSize"`
-	MaxSize         int    `json:"MaxSize" xml:"MaxSize"`
-	ScalingRuleAri  string `json:"ScalingRuleAri" xml:"ScalingRuleAri"`
+	ScalingRuleId           string  `json:"ScalingRuleId" xml:"ScalingRuleId"`
+	ScalingGroupId          string  `json:"ScalingGroupId" xml:"ScalingGroupId"`
+	ScalingRuleName         string  `json:"ScalingRuleName" xml:"ScalingRuleName"`
+	Cooldown                int     `json:"Cooldown" xml:"Cooldown"`
+	AdjustmentType          string  `json:"AdjustmentType" xml:"AdjustmentType"`
+	AdjustmentValue         int     `json:"AdjustmentValue" xml:"AdjustmentValue"`
+	MinSize                 int     `json:"MinSize" xml:"MinSize"`
+	MaxSize                 int     `json:"MaxSize" xml:"MaxSize"`
+	ScalingRuleAri          string  `json:"ScalingRuleAri" xml:"ScalingRuleAri"`
+	ScalingRuleType         string  `json:"ScalingRuleType" xml:"ScalingRuleType"`
+	EstimatedInstanceWarmup int     `json:"EstimatedInstanceWarmup" xml:"EstimatedInstanceWarmup"`
+	MetricName              string  `json:"MetricName" xml:"MetricName"`
+	TargetValue             float64 `json:"TargetValue" xml:"TargetValue"`
+	DisableScaleIn          bool    `json:"DisableScaleIn" xml:"DisableScaleIn"`
+	Alarms                  Alarms  `json:"Alarms" xml:"Alarms"`
 }