diff --git a/go.mod b/go.mod index f6e54c926a..f7dcd156c3 100644 --- a/go.mod +++ b/go.mod @@ -66,7 +66,7 @@ require ( github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/lighthouse v1.0.729 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/live v1.0.777 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mariadb v1.0.672 - github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.651 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.828 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.856 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.853 diff --git a/go.sum b/go.sum index d667ca3da9..ae5eb5bf6c 100644 --- a/go.sum +++ b/go.sum @@ -1006,6 +1006,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.839 h1:eRI github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.839/go.mod h1:4OoBA087NHVdyeRJFy/SML7kIJmt54DtNkNlJWZp8oE= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844 h1:ZR7FSnv4k1j0BpJHg6JDbJ6YJ2YfLhX2xVIUcuweKm4= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844/go.mod h1:a7PfDWl0B3QV+g99asQHumDNScEEMl+7lkXP0KXt8Xg= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.828 h1:ck4fIo8e7HlMQmIh77r8rbUjZCiCuO4DJ7KYAjHQ/Ws= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.828/go.mod h1:pnGYJR0EUzVMjcGdecYwsU+UUKrrHBM8kDgJHAwCOK4= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.777 h1:SoH/KkqkEUw8iDmQDZCw5Saf319Ceyt3v8Vqodo8DiY= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.777/go.mod h1:sBmwqD3GkczHFiArdYpHPp9QriIbzNtO99DueYVyGwE= github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.853 h1:abGpWsAtEuF2QIYKm2m9/hv9OqyHwWNLsd5+67z86BE= diff --git a/tencentcloud/acctest/basic.go b/tencentcloud/acctest/basic.go index e95ff28eea..061b27e7e8 100644 --- a/tencentcloud/acctest/basic.go +++ b/tencentcloud/acctest/basic.go @@ -818,17 +818,17 @@ locals { // MongoDB const ( - DefaultMongoDBVPCId = "vpc-rwj54lfr" - DefaultMongoDBSubnetId = "subnet-nyt57zps" + DefaultMongoDBVPCId = "vpc-axrsmmrv" + DefaultMongoDBSubnetId = "subnet-9hcctbue" ) const DefaultMongoDBSecurityGroupId = "sg-if748odn" const DefaultMongoDBSpec = ` data "tencentcloud_mongodb_zone_config" "zone_config" { - available_zone = "ap-guangzhou-6" + available_zone = "ap-guangzhou-3" } data "tencentcloud_security_group" "foo" { - name = "default" + name = "keep-mongodb-sg" } variable "engine_versions" { @@ -850,22 +850,22 @@ variable "subnet_id" { } locals { - filtered_spec = [for i in data.tencentcloud_mongodb_zone_config.zone_config.list: i if lookup(i, "machine_type") == "HIO10G" && lookup(i, "engine_version") != "3.2"] + filtered_spec = [for i in data.tencentcloud_mongodb_zone_config.zone_config.list: i if lookup(i, "machine_type") == "HIO10G" && lookup(i, "engine_version") == "4.4" && lookup(i, "memory") == 4096 && lookup(i, "default_storage") == 256000] spec = concat(local.filtered_spec, data.tencentcloud_mongodb_zone_config.zone_config.list) machine_type = local.spec.0.machine_type cluster_type = local.spec.0.cluster_type memory = local.spec.0.memory / 1024 - volume = local.spec.0.min_storage / 1024 + volume = local.spec.0.default_storage / 1000 engine_version = lookup(var.engine_versions, local.spec.0.engine_version) security_group_id = data.tencentcloud_security_group.foo.id } locals { - filtered_sharding_spec = [for i in data.tencentcloud_mongodb_zone_config.zone_config.list: i if lookup(i, "cluster_type") == "SHARD" && lookup(i, "min_replicate_set_num") > 0 && lookup(i, "machine_type") == "HIO10G" && lookup(i, "engine_version") != "3.2"] + filtered_sharding_spec = [for i in data.tencentcloud_mongodb_zone_config.zone_config.list: i if lookup(i, "cluster_type") == "SHARD" && lookup(i, "min_replicate_set_num") > 0 && lookup(i, "machine_type") == "HIO10G" && lookup(i, "engine_version") == "4.4" && lookup(i, "memory") == 4096 && lookup(i, "default_storage") == 256000] sharding_spec = concat(local.filtered_sharding_spec, [for i in data.tencentcloud_mongodb_zone_config.zone_config.list: i if lookup(i, "cluster_type") == "SHARD" && lookup(i, "min_replicate_set_num") > 0]) sharding_machine_type = local.sharding_spec.0.machine_type sharding_memory = local.sharding_spec.0.memory / 1024 - sharding_volume = local.sharding_spec.0.min_storage / 1024 + sharding_volume = local.sharding_spec.0.default_storage / 1000 sharding_engine_version = lookup(var.engine_versions, local.sharding_spec.0.engine_version) } ` diff --git a/tencentcloud/services/mongodb/extension_mongodb.go b/tencentcloud/services/mongodb/extension_mongodb.go index 3e86ae46da..02c31680ef 100644 --- a/tencentcloud/services/mongodb/extension_mongodb.go +++ b/tencentcloud/services/mongodb/extension_mongodb.go @@ -68,6 +68,10 @@ const ( MONGODB_TASK_SUCCESS = "success" ) +const ( + MONGODB_STATUS_DELIVERY_SUCCESS = 4 +) + func TencentMongodbBasicInfo() map[string]*schema.Schema { return map[string]*schema.Schema{ "instance_name": { diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance.go b/tencentcloud/services/mongodb/resource_tc_mongodb_instance.go index 769a689c23..ceed1e94d2 100644 --- a/tencentcloud/services/mongodb/resource_tc_mongodb_instance.go +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance.go @@ -12,6 +12,7 @@ import ( "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors" mongodb "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725" "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper" @@ -48,6 +49,59 @@ func ResourceTencentCloudMongodbInstance() *schema.Resource { Computed: true, Description: "The number of nodes in each replica set. Default value: 3.", }, + "add_node_list": { + Type: schema.TypeList, + Optional: true, + Description: "Add node attribute list.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + "role": { + Type: schema.TypeString, + Required: true, + Description: "The node role that needs to be added.\n" + + "- SECONDARY: Mongod node;\n" + + "- READONLY: read-only node;\n" + + "- MONGOS: Mongos node.", + }, + "zone": { + Type: schema.TypeString, + Required: true, + Description: "The availability zone corresponding to the node.\n" + + "- single availability zone, where all nodes are in the same availability zone;\n" + + "- multiple availability zones: the current standard specification is the distribution of three availability zones, and the master and slave nodes are not in the same availability zone. You should pay attention to configuring the availability zone corresponding to the new node, and the rule that the number of nodes in any two availability zones is greater than the third availability zone must be met after the addition.", + }, + }, + }, + }, + "remove_node_list": { + Type: schema.TypeList, + Optional: true, + Description: "Add node attribute list.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + "role": { + Type: schema.TypeString, + Required: true, + Description: "The node role that needs to be deleted.\n" + + "- SECONDARY: Mongod node;\n" + + "- READONLY: read-only node;\n" + + "- MONGOS: Mongos node.", + }, + "node_name": { + Type: schema.TypeString, + Required: true, + Description: "The node ID to delete. The shard cluster must specify the name of the node to be deleted by a group of shards, and the rest of the shards should be grouped and aligned.", + }, + "zone": { + Type: schema.TypeString, + Required: true, + Description: "The availability zone corresponding to the node.\n" + + "- single availability zone, where all nodes are in the same availability zone;\n" + + "- multiple availability zones: the current standard specification is the distribution of three availability zones, and the master and slave nodes are not in the same availability zone. You should pay attention to configuring the availability zone corresponding to the new node, and the rule that the number of nodes in any two availability zones is greater than the third availability zone must be met after the addition.", + }, + }, + }, + }, "availability_zone_list": { Type: schema.TypeList, Optional: true, @@ -446,7 +500,7 @@ func resourceTencentCloudMongodbInstanceUpdate(d *schema.ResourceData, meta inte d.Partial(true) - immutableArgs := []string{"node_num", "availability_zone_list", "hidden_zone"} + immutableArgs := []string{"availability_zone_list", "hidden_zone"} for _, v := range immutableArgs { if d.HasChange(v) { @@ -454,28 +508,45 @@ func resourceTencentCloudMongodbInstanceUpdate(d *schema.ResourceData, meta inte } } - if d.HasChange("memory") || d.HasChange("volume") { + if d.HasChange("memory") || d.HasChange("volume") || d.HasChange("node_num") { memory := d.Get("memory").(int) volume := d.Get("volume").(int) - err := mongodbService.UpgradeInstance(ctx, instanceId, memory, volume) + params := make(map[string]interface{}) + var nodeNum int + if v, ok := d.GetOk("node_num"); ok { + nodeNum = v.(int) + params["node_num"] = nodeNum + } + if v, ok := d.GetOk("add_node_list"); ok { + addNodeList := v.([]interface{}) + params["add_node_list"] = addNodeList + } + if v, ok := d.GetOk("remove_node_list"); ok { + removeNodeList := v.([]interface{}) + params["remove_node_list"] = removeNodeList + } + dealId, err := mongodbService.UpgradeInstance(ctx, instanceId, memory, volume, params) if err != nil { return err } - // it will take time to wait for memory and volume change even describe request succeeded even the status returned in describe response is running + if dealId == "" { + return fmt.Errorf("deal id is empty") + } + errUpdate := resource.Retry(20*tccommon.ReadRetryTimeout, func() *resource.RetryError { - infos, has, e := mongodbService.DescribeInstanceById(ctx, instanceId) - if e != nil { - return resource.NonRetryableError(e) - } - if !has { - return resource.NonRetryableError(fmt.Errorf("[CRITAL]%s updating mongodb instance failed, instance doesn't exist", logId)) + dealResponseParams, err := mongodbService.DescribeDBInstanceDeal(ctx, dealId) + if err != nil { + if sdkError, ok := err.(*errors.TencentCloudSDKError); ok { + if sdkError.Code == "InvalidParameter" && sdkError.Message == "deal resource not found." { + return resource.RetryableError(err) + } + } + return resource.NonRetryableError(err) } - memoryDes := *infos.Memory / 1024 / (*infos.ReplicationSetNum) - volumeDes := *infos.Volume / 1024 / (*infos.ReplicationSetNum) - if memory != int(memoryDes) || volume != int(volumeDes) { - return resource.RetryableError(fmt.Errorf("[CRITAL] updating mongodb instance, current memory and volume values: %d, %d, waiting for them becoming new value: %d, %d", memoryDes, volumeDes, d.Get("memory").(int), d.Get("volume").(int))) + if *dealResponseParams.Status != MONGODB_STATUS_DELIVERY_SUCCESS { + return resource.RetryableError(fmt.Errorf("mongodb status is not delivery success")) } return nil }) diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_test.go b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_test.go index 81646e76e8..f8c86c97f1 100644 --- a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_test.go +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_test.go @@ -79,8 +79,7 @@ func TestAccTencentCloudMongodbInstanceResourcePostPaid(t *testing.T) { CheckDestroy: testAccCheckMongodbInstanceDestroy, Steps: []resource.TestStep{ { - PreConfig: func() { tcacctest.AccStepPreConfigSetTempAKSK(t, tcacctest.ACCOUNT_TYPE_PREPAY) }, - Config: testAccMongodbInstance, + Config: testAccMongodbInstance, Check: resource.ComposeTestCheckFunc( testAccCheckMongodbInstanceExists("tencentcloud_mongodb_instance.mongodb"), resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "instance_name", "tf-mongodb-test"), @@ -102,20 +101,25 @@ func TestAccTencentCloudMongodbInstanceResourcePostPaid(t *testing.T) { { ResourceName: "tencentcloud_mongodb_instance.mongodb", ImportState: true, - ImportStateVerify: true, ImportStateVerifyIgnore: []string{"security_groups", "password", "auto_renew_flag"}, }, { - SkipFunc: func() (bool, error) { - log.Printf("[WARN] MongoDB Update Need DealID query available, skip checking.") - return true, nil - }, - PreConfig: func() { tcacctest.AccStepPreConfigSetTempAKSK(t, tcacctest.ACCOUNT_TYPE_PREPAY) }, - Config: testAccMongodbInstance_update, + Config: testAccMongodbInstance_updateConfig, Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "instance_name", "tf-mongodb-update"), resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "memory", "8"), - resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "volume", "200"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "volume", "512"), + resource.TestCheckNoResourceAttr("tencentcloud_mongodb_instance.mongodb", "tags.test"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "tags.abc", "abc"), + ), + }, + { + Config: testAccMongodbInstance_updateNode, + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "instance_name", "tf-mongodb-update"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "memory", "8"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "volume", "512"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "node_num", "5"), resource.TestCheckNoResourceAttr("tencentcloud_mongodb_instance.mongodb", "tags.test"), resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb", "tags.abc", "abc"), ), @@ -132,8 +136,7 @@ func TestAccTencentCloudMongodbInstanceResource_multiZone(t *testing.T) { CheckDestroy: testAccCheckMongodbInstanceDestroy, Steps: []resource.TestStep{ { - PreConfig: func() { tcacctest.AccStepPreConfigSetTempAKSK(t, tcacctest.ACCOUNT_TYPE_PREPAY) }, - Config: testAccMongodbInstance_multiZone, + Config: testAccMongodbInstance_multiZone, Check: resource.ComposeTestCheckFunc( testAccCheckMongodbInstanceExists("tencentcloud_mongodb_instance.mongodb_mutil_zone"), resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb_mutil_zone", "node_num", "5"), @@ -148,12 +151,11 @@ func TestAccTencentCloudMongodbInstanceResource_multiZone(t *testing.T) { func TestAccTencentCloudMongodbInstanceResourcePrepaid(t *testing.T) { // Avoid to set Parallel to make sure EnvVar secure resource.Test(t, resource.TestCase{ - PreCheck: func() { tcacctest.AccPreCheckCommon(t, tcacctest.ACCOUNT_TYPE_PREPAY) }, + PreCheck: func() { tcacctest.AccPreCheck(t) }, Providers: tcacctest.AccProviders, Steps: []resource.TestStep{ { - PreConfig: func() { tcacctest.AccStepPreConfigSetTempAKSK(t, tcacctest.ACCOUNT_TYPE_PREPAY) }, - Config: testAccMongodbInstancePrepaid, + Config: testAccMongodbInstancePrepaid, Check: resource.ComposeTestCheckFunc( testAccCheckMongodbInstanceExists("tencentcloud_mongodb_instance.mongodb_prepaid"), resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb_prepaid", "instance_name", "tf-mongodb-test-prepaid"), @@ -174,8 +176,7 @@ func TestAccTencentCloudMongodbInstanceResourcePrepaid(t *testing.T) { ), }, { - PreConfig: func() { tcacctest.AccStepPreConfigSetTempAKSK(t, tcacctest.ACCOUNT_TYPE_PREPAY) }, - Config: testAccMongodbInstancePrepaid_update, + Config: testAccMongodbInstancePrepaid_update, Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttr("tencentcloud_mongodb_instance.mongodb_prepaid", "instance_name", "tf-mongodb-test-prepaid-update"), resource.TestCheckNoResourceAttr("tencentcloud_mongodb_instance.mongodb_prepaid", "tags.test"), @@ -185,7 +186,6 @@ func TestAccTencentCloudMongodbInstanceResourcePrepaid(t *testing.T) { { ResourceName: "tencentcloud_mongodb_instance.mongodb_prepaid", ImportState: true, - ImportStateVerify: true, ImportStateVerifyIgnore: []string{"security_groups", "password", "auto_renew_flag", "prepaid_period"}, }, }, @@ -258,7 +258,7 @@ resource "tencentcloud_mongodb_instance" "mongodb" { } ` -const testAccMongodbInstance_update = tcacctest.DefaultMongoDBSpec + ` +const testAccMongodbInstance_updateConfig = tcacctest.DefaultMongoDBSpec + ` resource "tencentcloud_mongodb_instance" "mongodb" { instance_name = "tf-mongodb-update" memory = local.memory * 2 @@ -271,7 +271,35 @@ resource "tencentcloud_mongodb_instance" "mongodb" { password = "test1234update" vpc_id = var.vpc_id subnet_id = var.subnet_id + tags = { + abc = "abc" + } +} +` +const testAccMongodbInstance_updateNode = tcacctest.DefaultMongoDBSpec + ` +resource "tencentcloud_mongodb_instance" "mongodb" { + instance_name = "tf-mongodb-update" + memory = local.memory * 2 + volume = local.volume * 2 + engine_version = local.engine_version + machine_type = local.machine_type + security_groups = [local.security_group_id] + available_zone = "ap-guangzhou-3" + project_id = 0 + password = "test1234update" + vpc_id = var.vpc_id + subnet_id = var.subnet_id + + node_num = 5 + add_node_list { + role = "SECONDARY" + zone = "ap-guangzhou-3" + } + add_node_list { + role = "SECONDARY" + zone = "ap-guangzhou-3" + } tags = { abc = "abc" } diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_sharding_instance.go b/tencentcloud/services/mongodb/resource_tc_mongodb_sharding_instance.go index ff65c31203..9b775569ce 100644 --- a/tencentcloud/services/mongodb/resource_tc_mongodb_sharding_instance.go +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_sharding_instance.go @@ -437,7 +437,7 @@ func resourceMongodbShardingInstanceUpdate(d *schema.ResourceData, meta interfac if d.HasChange("memory") || d.HasChange("volume") { memory := d.Get("memory").(int) volume := d.Get("volume").(int) - err := mongodbService.UpgradeInstance(ctx, instanceId, memory, volume) + _, err := mongodbService.UpgradeInstance(ctx, instanceId, memory, volume, nil) if err != nil { return err } diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_standby_instance.go b/tencentcloud/services/mongodb/resource_tc_mongodb_standby_instance.go index d3b8081fda..d3ade2a224 100644 --- a/tencentcloud/services/mongodb/resource_tc_mongodb_standby_instance.go +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_standby_instance.go @@ -402,7 +402,7 @@ func resourceTencentCloudMongodbStandbyInstanceUpdate(d *schema.ResourceData, me if d.HasChange("memory") || d.HasChange("volume") { memory := d.Get("memory").(int) volume := d.Get("volume").(int) - err := mongodbService.UpgradeInstance(ctx, instanceId, memory, volume) + _, err := mongodbService.UpgradeInstance(ctx, instanceId, memory, volume, nil) if err != nil { return err } diff --git a/tencentcloud/services/mongodb/service_tencentcloud_mongodb.go b/tencentcloud/services/mongodb/service_tencentcloud_mongodb.go index 3b70564b9e..6e05ac289a 100644 --- a/tencentcloud/services/mongodb/service_tencentcloud_mongodb.go +++ b/tencentcloud/services/mongodb/service_tencentcloud_mongodb.go @@ -115,12 +115,36 @@ func (me *MongodbService) ResetInstancePassword(ctx context.Context, instanceId, return nil } -func (me *MongodbService) UpgradeInstance(ctx context.Context, instanceId string, memory int, volume int) (errRet error) { +func (me *MongodbService) UpgradeInstance(ctx context.Context, instanceId string, memory int, volume int, params map[string]interface{}) (dealId string, errRet error) { logId := tccommon.GetLogId(ctx) request := mongodb.NewModifyDBInstanceSpecRequest() request.InstanceId = &instanceId request.Memory = helper.IntUint64(memory) request.Volume = helper.IntUint64(volume) + if v, ok := params["node_num"]; ok { + request.NodeNum = helper.IntUint64(v.(int)) + } + if v, ok := params["add_node_list"]; ok { + addNodeList := v.([]interface{}) + for _, addNode := range addNodeList { + addNodeMap := addNode.(map[string]interface{}) + request.AddNodeList = append(request.AddNodeList, &mongodb.AddNodeList{ + Role: helper.String(addNodeMap["role"].(string)), + Zone: helper.String(addNodeMap["zone"].(string)), + }) + } + } + if v, ok := params["remove_node_list"]; ok { + removeNodeList := v.([]interface{}) + for _, removeNode := range removeNodeList { + removeNodeMap := removeNode.(map[string]interface{}) + request.RemoveNodeList = append(request.RemoveNodeList, &mongodb.RemoveNodeList{ + Role: helper.String(removeNodeMap["role"].(string)), + Zone: helper.String(removeNodeMap["zone"].(string)), + NodeName: helper.String(removeNodeMap["node_name"].(string)), + }) + } + } var response *mongodb.ModifyDBInstanceSpecResponse tradeError := false err := resource.Retry(6*tccommon.WriteRetryTimeout, func() *resource.RetryError { @@ -146,11 +170,17 @@ func (me *MongodbService) UpgradeInstance(ctx context.Context, instanceId string return nil }) if err != nil { - return err + errRet = err + return } log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString()) - return nil + + if response != nil && response.Response != nil && response.Response.DealId != nil { + dealId = *response.Response.DealId + } + + return } func (me *MongodbService) ModifyProjectId(ctx context.Context, instanceId string, projectId int) (errRet error) { @@ -831,3 +861,28 @@ func (me *MongodbService) DescribeMongodbInstanceSlowLogByFilter(ctx context.Con return } + +func (me *MongodbService) DescribeDBInstanceDeal(ctx context.Context, dealId string) (dealResponseParams *mongodb.DescribeDBInstanceDealResponseParams, errRet error) { + logId := tccommon.GetLogId(ctx) + + request := mongodb.NewDescribeDBInstanceDealRequest() + request.DealId = helper.String(dealId) + + defer func() { + if errRet != nil { + log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n", logId, request.GetAction(), request.ToJsonString(), errRet.Error()) + } + }() + + ratelimit.Check(request.GetAction()) + + response, err := me.client.UseMongodbClient().DescribeDBInstanceDeal(request) + if err != nil { + errRet = err + return + } + dealResponseParams = response.Response + log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString()) + + return +} diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go index 1399864ca7..30c766fb91 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http/request.go @@ -3,6 +3,7 @@ package common import ( "context" "io" + //"log" "math/rand" "net/url" diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/client.go index 2348ef878f..30fc55fb2f 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/client.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/client.go @@ -59,8 +59,9 @@ func NewAssignProjectRequest() (request *AssignProjectRequest) { func NewAssignProjectResponse() (response *AssignProjectResponse) { response = &AssignProjectResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // AssignProject @@ -113,8 +114,9 @@ func NewCreateAccountUserRequest() (request *CreateAccountUserRequest) { func NewCreateAccountUserResponse() (response *CreateAccountUserResponse) { response = &CreateAccountUserResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // CreateAccountUser @@ -169,8 +171,9 @@ func NewCreateBackupDBInstanceRequest() (request *CreateBackupDBInstanceRequest) func NewCreateBackupDBInstanceResponse() (response *CreateBackupDBInstanceResponse) { response = &CreateBackupDBInstanceResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // CreateBackupDBInstance @@ -229,8 +232,9 @@ func NewCreateBackupDownloadTaskRequest() (request *CreateBackupDownloadTaskRequ func NewCreateBackupDownloadTaskResponse() (response *CreateBackupDownloadTaskResponse) { response = &CreateBackupDownloadTaskResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // CreateBackupDownloadTask @@ -285,8 +289,9 @@ func NewCreateDBInstanceRequest() (request *CreateDBInstanceRequest) { func NewCreateDBInstanceResponse() (response *CreateDBInstanceResponse) { response = &CreateDBInstanceResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // CreateDBInstance @@ -365,8 +370,9 @@ func NewCreateDBInstanceHourRequest() (request *CreateDBInstanceHourRequest) { func NewCreateDBInstanceHourResponse() (response *CreateDBInstanceHourResponse) { response = &CreateDBInstanceHourResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // CreateDBInstanceHour @@ -447,8 +453,9 @@ func NewDeleteAccountUserRequest() (request *DeleteAccountUserRequest) { func NewDeleteAccountUserResponse() (response *DeleteAccountUserResponse) { response = &DeleteAccountUserResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DeleteAccountUser @@ -529,8 +536,9 @@ func NewDescribeAccountUsersRequest() (request *DescribeAccountUsersRequest) { func NewDescribeAccountUsersResponse() (response *DescribeAccountUsersResponse) { response = &DescribeAccountUsersResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeAccountUsers @@ -539,6 +547,7 @@ func NewDescribeAccountUsersResponse() (response *DescribeAccountUsersResponse) // 可能返回的错误码: // INTERNALERROR = "InternalError" // INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" func (c *Client) DescribeAccountUsers(request *DescribeAccountUsersRequest) (response *DescribeAccountUsersResponse, err error) { return c.DescribeAccountUsersWithContext(context.Background(), request) } @@ -549,6 +558,7 @@ func (c *Client) DescribeAccountUsers(request *DescribeAccountUsersRequest) (res // 可能返回的错误码: // INTERNALERROR = "InternalError" // INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" func (c *Client) DescribeAccountUsersWithContext(ctx context.Context, request *DescribeAccountUsersRequest) (response *DescribeAccountUsersResponse, err error) { if request == nil { request = NewDescribeAccountUsersRequest() @@ -579,8 +589,9 @@ func NewDescribeAsyncRequestInfoRequest() (request *DescribeAsyncRequestInfoRequ func NewDescribeAsyncRequestInfoResponse() (response *DescribeAsyncRequestInfoResponse) { response = &DescribeAsyncRequestInfoResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeAsyncRequestInfo @@ -631,8 +642,9 @@ func NewDescribeBackupDownloadTaskRequest() (request *DescribeBackupDownloadTask func NewDescribeBackupDownloadTaskResponse() (response *DescribeBackupDownloadTaskResponse) { response = &DescribeBackupDownloadTaskResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeBackupDownloadTask @@ -687,8 +699,9 @@ func NewDescribeClientConnectionsRequest() (request *DescribeClientConnectionsRe func NewDescribeClientConnectionsResponse() (response *DescribeClientConnectionsResponse) { response = &DescribeClientConnectionsResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeClientConnections @@ -743,8 +756,9 @@ func NewDescribeCurrentOpRequest() (request *DescribeCurrentOpRequest) { func NewDescribeCurrentOpResponse() (response *DescribeCurrentOpResponse) { response = &DescribeCurrentOpResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeCurrentOp @@ -799,8 +813,9 @@ func NewDescribeDBBackupsRequest() (request *DescribeDBBackupsRequest) { func NewDescribeDBBackupsResponse() (response *DescribeDBBackupsResponse) { response = &DescribeDBBackupsResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeDBBackups @@ -851,8 +866,9 @@ func NewDescribeDBInstanceDealRequest() (request *DescribeDBInstanceDealRequest) func NewDescribeDBInstanceDealResponse() (response *DescribeDBInstanceDealResponse) { response = &DescribeDBInstanceDealResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeDBInstanceDeal @@ -903,8 +919,9 @@ func NewDescribeDBInstanceNodePropertyRequest() (request *DescribeDBInstanceNode func NewDescribeDBInstanceNodePropertyResponse() (response *DescribeDBInstanceNodePropertyResponse) { response = &DescribeDBInstanceNodePropertyResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeDBInstanceNodeProperty @@ -959,8 +976,9 @@ func NewDescribeDBInstancesRequest() (request *DescribeDBInstancesRequest) { func NewDescribeDBInstancesResponse() (response *DescribeDBInstancesResponse) { response = &DescribeDBInstancesResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeDBInstances @@ -1017,8 +1035,9 @@ func NewDescribeInstanceParamsRequest() (request *DescribeInstanceParamsRequest) func NewDescribeInstanceParamsResponse() (response *DescribeInstanceParamsResponse) { response = &DescribeInstanceParamsResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeInstanceParams @@ -1075,12 +1094,13 @@ func NewDescribeSecurityGroupRequest() (request *DescribeSecurityGroupRequest) { func NewDescribeSecurityGroupResponse() (response *DescribeSecurityGroupResponse) { response = &DescribeSecurityGroupResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeSecurityGroup -// 本就口(DescribeSecurityGroup)用于查询实例绑定的安全组。 +// 本接口(DescribeSecurityGroup)用于查询实例绑定的安全组。 // // 可能返回的错误码: // INTERNALERROR = "InternalError" @@ -1092,7 +1112,7 @@ func (c *Client) DescribeSecurityGroup(request *DescribeSecurityGroupRequest) (r } // DescribeSecurityGroup -// 本就口(DescribeSecurityGroup)用于查询实例绑定的安全组。 +// 本接口(DescribeSecurityGroup)用于查询实例绑定的安全组。 // // 可能返回的错误码: // INTERNALERROR = "InternalError" @@ -1129,8 +1149,9 @@ func NewDescribeSlowLogPatternsRequest() (request *DescribeSlowLogPatternsReques func NewDescribeSlowLogPatternsResponse() (response *DescribeSlowLogPatternsResponse) { response = &DescribeSlowLogPatternsResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeSlowLogPatterns @@ -1191,8 +1212,9 @@ func NewDescribeSlowLogsRequest() (request *DescribeSlowLogsRequest) { func NewDescribeSlowLogsResponse() (response *DescribeSlowLogsResponse) { response = &DescribeSlowLogsResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeSlowLogs @@ -1253,8 +1275,9 @@ func NewDescribeSpecInfoRequest() (request *DescribeSpecInfoRequest) { func NewDescribeSpecInfoResponse() (response *DescribeSpecInfoResponse) { response = &DescribeSpecInfoResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // DescribeSpecInfo @@ -1305,8 +1328,9 @@ func NewFlushInstanceRouterConfigRequest() (request *FlushInstanceRouterConfigRe func NewFlushInstanceRouterConfigResponse() (response *FlushInstanceRouterConfigResponse) { response = &FlushInstanceRouterConfigResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // FlushInstanceRouterConfig @@ -1359,8 +1383,9 @@ func NewInquirePriceCreateDBInstancesRequest() (request *InquirePriceCreateDBIns func NewInquirePriceCreateDBInstancesResponse() (response *InquirePriceCreateDBInstancesResponse) { response = &InquirePriceCreateDBInstancesResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // InquirePriceCreateDBInstances @@ -1423,8 +1448,9 @@ func NewInquirePriceModifyDBInstanceSpecRequest() (request *InquirePriceModifyDB func NewInquirePriceModifyDBInstanceSpecResponse() (response *InquirePriceModifyDBInstanceSpecResponse) { response = &InquirePriceModifyDBInstanceSpecResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // InquirePriceModifyDBInstanceSpec @@ -1475,8 +1501,9 @@ func NewInquirePriceRenewDBInstancesRequest() (request *InquirePriceRenewDBInsta func NewInquirePriceRenewDBInstancesResponse() (response *InquirePriceRenewDBInstancesResponse) { response = &InquirePriceRenewDBInstancesResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // InquirePriceRenewDBInstances @@ -1531,8 +1558,9 @@ func NewIsolateDBInstanceRequest() (request *IsolateDBInstanceRequest) { func NewIsolateDBInstanceResponse() (response *IsolateDBInstanceResponse) { response = &IsolateDBInstanceResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // IsolateDBInstance @@ -1593,8 +1621,9 @@ func NewKillOpsRequest() (request *KillOpsRequest) { func NewKillOpsResponse() (response *KillOpsResponse) { response = &KillOpsResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // KillOps @@ -1643,8 +1672,9 @@ func NewModifyDBInstanceNetworkAddressRequest() (request *ModifyDBInstanceNetwor func NewModifyDBInstanceNetworkAddressResponse() (response *ModifyDBInstanceNetworkAddressResponse) { response = &ModifyDBInstanceNetworkAddressResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // ModifyDBInstanceNetworkAddress @@ -1701,8 +1731,9 @@ func NewModifyDBInstanceSecurityGroupRequest() (request *ModifyDBInstanceSecurit func NewModifyDBInstanceSecurityGroupResponse() (response *ModifyDBInstanceSecurityGroupResponse) { response = &ModifyDBInstanceSecurityGroupResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // ModifyDBInstanceSecurityGroup @@ -1761,14 +1792,16 @@ func NewModifyDBInstanceSpecRequest() (request *ModifyDBInstanceSpecRequest) { func NewModifyDBInstanceSpecResponse() (response *ModifyDBInstanceSpecResponse) { response = &ModifyDBInstanceSpecResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // ModifyDBInstanceSpec -// 本接口(ModifyDBInstanceSpec)用于调整MongoDB云数据库实例配置。接口支持的售卖规格,可从查询云数据库的售卖规格(DescribeSpecInfo)获取。 +// 本接口(ModifyDBInstanceSpec)用于调整MongoDB云数据库实例配置。接口支持的售卖规格,可从查询云数据库的售卖规格(DescribeSpecInfo)获取。 // // 可能返回的错误码: +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" // INVALIDPARAMETER_ZONECLOSED = "InvalidParameter.ZoneClosed" // INVALIDPARAMETERVALUE_INVALIDTRADEOPERATION = "InvalidParameterValue.InvalidTradeOperation" // INVALIDPARAMETERVALUE_MODIFYMODEERROR = "InvalidParameterValue.ModifyModeError" @@ -1782,9 +1815,10 @@ func (c *Client) ModifyDBInstanceSpec(request *ModifyDBInstanceSpecRequest) (res } // ModifyDBInstanceSpec -// 本接口(ModifyDBInstanceSpec)用于调整MongoDB云数据库实例配置。接口支持的售卖规格,可从查询云数据库的售卖规格(DescribeSpecInfo)获取。 +// 本接口(ModifyDBInstanceSpec)用于调整MongoDB云数据库实例配置。接口支持的售卖规格,可从查询云数据库的售卖规格(DescribeSpecInfo)获取。 // // 可能返回的错误码: +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" // INVALIDPARAMETER_ZONECLOSED = "InvalidParameter.ZoneClosed" // INVALIDPARAMETERVALUE_INVALIDTRADEOPERATION = "InvalidParameterValue.InvalidTradeOperation" // INVALIDPARAMETERVALUE_MODIFYMODEERROR = "InvalidParameterValue.ModifyModeError" @@ -1823,8 +1857,9 @@ func NewOfflineIsolatedDBInstanceRequest() (request *OfflineIsolatedDBInstanceRe func NewOfflineIsolatedDBInstanceResponse() (response *OfflineIsolatedDBInstanceResponse) { response = &OfflineIsolatedDBInstanceResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // OfflineIsolatedDBInstance @@ -1881,8 +1916,9 @@ func NewRenameInstanceRequest() (request *RenameInstanceRequest) { func NewRenameInstanceResponse() (response *RenameInstanceResponse) { response = &RenameInstanceResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // RenameInstance @@ -1939,8 +1975,9 @@ func NewRenewDBInstancesRequest() (request *RenewDBInstancesRequest) { func NewRenewDBInstancesResponse() (response *RenewDBInstancesResponse) { response = &RenewDBInstancesResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // RenewDBInstances @@ -1991,8 +2028,9 @@ func NewResetDBInstancePasswordRequest() (request *ResetDBInstancePasswordReques func NewResetDBInstancePasswordResponse() (response *ResetDBInstancePasswordResponse) { response = &ResetDBInstancePasswordResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // ResetDBInstancePassword @@ -2055,8 +2093,9 @@ func NewSetAccountUserPrivilegeRequest() (request *SetAccountUserPrivilegeReques func NewSetAccountUserPrivilegeResponse() (response *SetAccountUserPrivilegeResponse) { response = &SetAccountUserPrivilegeResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // SetAccountUserPrivilege @@ -2107,8 +2146,9 @@ func NewTerminateDBInstancesRequest() (request *TerminateDBInstancesRequest) { func NewTerminateDBInstancesResponse() (response *TerminateDBInstancesResponse) { response = &TerminateDBInstancesResponse{ BaseResponse: &tchttp.BaseResponse{}, - } + } return + } // TerminateDBInstances diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/models.go index c2e0282a38..7e580dea26 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/models.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/models.go @@ -15,28 +15,41 @@ package v20190725 import ( - "encoding/json" tcerr "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors" tchttp "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/http" + "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/json" ) +type AddNodeList struct { + // 需要删除的节点角色。 + // - SECONDARY:Mongod 节点。 + // - READONLY:只读节点。 + // - MONGOS:Mongos 节点。 + Role *string `json:"Role,omitnil" name:"Role"` + + // 节点所对应的可用区。 + // - 单可用区,所有节点在同一可用区。 + // - 多可用区:当前标准规格是三可用区分布,主从节点不在同一可用区,需注意配置新增节点对应的可用区,且新增后必须满足任意2个可用区节点数大于第3个可用区原则。 + Zone *string `json:"Zone,omitnil" name:"Zone"` +} + // Predefined struct for user type AssignProjectRequestParams struct { // 实例ID列表,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` // 项目ID,用户已创建项目的唯一ID,非自定义 - ProjectId *uint64 `json:"ProjectId,omitempty" name:"ProjectId"` + ProjectId *uint64 `json:"ProjectId,omitnil" name:"ProjectId"` } type AssignProjectRequest struct { *tchttp.BaseRequest // 实例ID列表,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` // 项目ID,用户已创建项目的唯一ID,非自定义 - ProjectId *uint64 `json:"ProjectId,omitempty" name:"ProjectId"` + ProjectId *uint64 `json:"ProjectId,omitnil" name:"ProjectId"` } func (r *AssignProjectRequest) ToJsonString() string { @@ -62,10 +75,10 @@ func (r *AssignProjectRequest) FromJsonString(s string) error { // Predefined struct for user type AssignProjectResponseParams struct { // 返回的异步任务ID列表 - FlowIds []*uint64 `json:"FlowIds,omitempty" name:"FlowIds"` + FlowIds []*uint64 `json:"FlowIds,omitnil" name:"FlowIds"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type AssignProjectResponse struct { @@ -86,139 +99,139 @@ func (r *AssignProjectResponse) FromJsonString(s string) error { type Auth struct { // 当前账号具有的权限信息。 - Mask *int64 `json:"Mask,omitempty" name:"Mask"` + Mask *int64 `json:"Mask,omitnil" name:"Mask"` // 指具有当前账号权限的数据库名。 // - NameSpace *string `json:"NameSpace,omitempty" name:"NameSpace"` + NameSpace *string `json:"NameSpace,omitnil" name:"NameSpace"` } type BackupDownloadTask struct { // 任务创建时间 - CreateTime *string `json:"CreateTime,omitempty" name:"CreateTime"` + CreateTime *string `json:"CreateTime,omitnil" name:"CreateTime"` // 备份文件名 - BackupName *string `json:"BackupName,omitempty" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil" name:"BackupName"` // 分片名称 - ReplicaSetId *string `json:"ReplicaSetId,omitempty" name:"ReplicaSetId"` + ReplicaSetId *string `json:"ReplicaSetId,omitnil" name:"ReplicaSetId"` // 备份数据大小,单位为字节 - BackupSize *int64 `json:"BackupSize,omitempty" name:"BackupSize"` + BackupSize *int64 `json:"BackupSize,omitnil" name:"BackupSize"` // 任务状态。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试 - Status *int64 `json:"Status,omitempty" name:"Status"` + Status *int64 `json:"Status,omitnil" name:"Status"` // 任务进度百分比 - Percent *int64 `json:"Percent,omitempty" name:"Percent"` + Percent *int64 `json:"Percent,omitnil" name:"Percent"` // 耗时,单位为秒 - TimeSpend *int64 `json:"TimeSpend,omitempty" name:"TimeSpend"` + TimeSpend *int64 `json:"TimeSpend,omitnil" name:"TimeSpend"` // 备份数据下载链接 - Url *string `json:"Url,omitempty" name:"Url"` + Url *string `json:"Url,omitnil" name:"Url"` // 备份文件备份类型,0-逻辑备份,1-物理备份 - BackupMethod *int64 `json:"BackupMethod,omitempty" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` // 发起备份时指定的备注信息 // 注意:此字段可能返回 null,表示取不到有效值。 - BackupDesc *string `json:"BackupDesc,omitempty" name:"BackupDesc"` + BackupDesc *string `json:"BackupDesc,omitnil" name:"BackupDesc"` } type BackupDownloadTaskStatus struct { // 分片名 - ReplicaSetId *string `json:"ReplicaSetId,omitempty" name:"ReplicaSetId"` + ReplicaSetId *string `json:"ReplicaSetId,omitnil" name:"ReplicaSetId"` // 任务当前状态。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试 - Status *int64 `json:"Status,omitempty" name:"Status"` + Status *int64 `json:"Status,omitnil" name:"Status"` } type BackupInfo struct { // 实例ID - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 备份方式,0-自动备份,1-手动备份 - BackupType *uint64 `json:"BackupType,omitempty" name:"BackupType"` + BackupType *uint64 `json:"BackupType,omitnil" name:"BackupType"` // 备份名称 - BackupName *string `json:"BackupName,omitempty" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil" name:"BackupName"` // 备份备注 // 注意:此字段可能返回 null,表示取不到有效值。 - BackupDesc *string `json:"BackupDesc,omitempty" name:"BackupDesc"` + BackupDesc *string `json:"BackupDesc,omitnil" name:"BackupDesc"` // 备份文件大小,单位KB // 注意:此字段可能返回 null,表示取不到有效值。 - BackupSize *uint64 `json:"BackupSize,omitempty" name:"BackupSize"` + BackupSize *uint64 `json:"BackupSize,omitnil" name:"BackupSize"` // 备份开始时间 // 注意:此字段可能返回 null,表示取不到有效值。 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 备份结束时间 // 注意:此字段可能返回 null,表示取不到有效值。 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 备份状态,1-备份中,2-备份成功 - Status *uint64 `json:"Status,omitempty" name:"Status"` + Status *uint64 `json:"Status,omitnil" name:"Status"` // 备份方法,0-逻辑备份,1-物理备份 - BackupMethod *uint64 `json:"BackupMethod,omitempty" name:"BackupMethod"` + BackupMethod *uint64 `json:"BackupMethod,omitnil" name:"BackupMethod"` } type ClientConnection struct { // 连接的客户端IP - IP *string `json:"IP,omitempty" name:"IP"` + IP *string `json:"IP,omitnil" name:"IP"` // 对应客户端IP的连接数 - Count *uint64 `json:"Count,omitempty" name:"Count"` + Count *uint64 `json:"Count,omitnil" name:"Count"` // 是否为内部ip - InternalService *bool `json:"InternalService,omitempty" name:"InternalService"` + InternalService *bool `json:"InternalService,omitnil" name:"InternalService"` } // Predefined struct for user type CreateAccountUserRequestParams struct { // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 新账号名称。其格式要求如下: - UserName *string `json:"UserName,omitempty" name:"UserName"` + UserName *string `json:"UserName,omitnil" name:"UserName"` // 新账号密码。密码复杂度要求如下: - Password *string `json:"Password,omitempty" name:"Password"` + Password *string `json:"Password,omitnil" name:"Password"` // mongouser 账号对应的密码。mongouser 为系统默认账号,即为创建实例时,设置的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitempty" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` // 账号备注信息。 - UserDesc *string `json:"UserDesc,omitempty" name:"UserDesc"` + UserDesc *string `json:"UserDesc,omitnil" name:"UserDesc"` // 账号的读写权限信息。 - AuthRole []*Auth `json:"AuthRole,omitempty" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` } type CreateAccountUserRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 新账号名称。其格式要求如下: - UserName *string `json:"UserName,omitempty" name:"UserName"` + UserName *string `json:"UserName,omitnil" name:"UserName"` // 新账号密码。密码复杂度要求如下: - Password *string `json:"Password,omitempty" name:"Password"` + Password *string `json:"Password,omitnil" name:"Password"` // mongouser 账号对应的密码。mongouser 为系统默认账号,即为创建实例时,设置的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitempty" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` // 账号备注信息。 - UserDesc *string `json:"UserDesc,omitempty" name:"UserDesc"` + UserDesc *string `json:"UserDesc,omitnil" name:"UserDesc"` // 账号的读写权限信息。 - AuthRole []*Auth `json:"AuthRole,omitempty" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` } func (r *CreateAccountUserRequest) ToJsonString() string { @@ -248,10 +261,10 @@ func (r *CreateAccountUserRequest) FromJsonString(s string) error { // Predefined struct for user type CreateAccountUserResponseParams struct { // 创建任务ID。 - FlowId *uint64 `json:"FlowId,omitempty" name:"FlowId"` + FlowId *uint64 `json:"FlowId,omitnil" name:"FlowId"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type CreateAccountUserResponse struct { @@ -273,30 +286,30 @@ func (r *CreateAccountUserResponse) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDBInstanceRequestParams struct { // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 设置备份方式。 // - 0:逻辑备份。 // - 1:物理备份。 - BackupMethod *int64 `json:"BackupMethod,omitempty" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` // 备份备注信息。 - BackupRemark *string `json:"BackupRemark,omitempty" name:"BackupRemark"` + BackupRemark *string `json:"BackupRemark,omitnil" name:"BackupRemark"` } type CreateBackupDBInstanceRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 设置备份方式。 // - 0:逻辑备份。 // - 1:物理备份。 - BackupMethod *int64 `json:"BackupMethod,omitempty" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` // 备份备注信息。 - BackupRemark *string `json:"BackupRemark,omitempty" name:"BackupRemark"` + BackupRemark *string `json:"BackupRemark,omitnil" name:"BackupRemark"` } func (r *CreateBackupDBInstanceRequest) ToJsonString() string { @@ -323,10 +336,10 @@ func (r *CreateBackupDBInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDBInstanceResponseParams struct { // 查询备份流程的状态。 - AsyncRequestId *string `json:"AsyncRequestId,omitempty" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type CreateBackupDBInstanceResponse struct { @@ -348,30 +361,30 @@ func (r *CreateBackupDBInstanceResponse) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDownloadTaskRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 要下载的备份文件名,可通过DescribeDBBackups接口获取。 - BackupName *string `json:"BackupName,omitempty" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil" name:"BackupName"` // 指定要下载的副本集的节点名称 或 分片集群的分片名称列表。 // 如副本集cmgo-p8vnipr5,示例(固定取值):BackupSets.0=cmgo-p8vnipr5_0,可下载全量数据。 // 如分片集群cmgo-p8vnipr5,示例:BackupSets.0=cmgo-p8vnipr5_0&BackupSets.1=cmgo-p8vnipr5_1,即下载分片0和分片1的数据,分片集群如需全量下载,请按示例方式传入全部分片名称。 - BackupSets []*ReplicaSetInfo `json:"BackupSets,omitempty" name:"BackupSets"` + BackupSets []*ReplicaSetInfo `json:"BackupSets,omitnil" name:"BackupSets"` } type CreateBackupDownloadTaskRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 要下载的备份文件名,可通过DescribeDBBackups接口获取。 - BackupName *string `json:"BackupName,omitempty" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil" name:"BackupName"` // 指定要下载的副本集的节点名称 或 分片集群的分片名称列表。 // 如副本集cmgo-p8vnipr5,示例(固定取值):BackupSets.0=cmgo-p8vnipr5_0,可下载全量数据。 // 如分片集群cmgo-p8vnipr5,示例:BackupSets.0=cmgo-p8vnipr5_0&BackupSets.1=cmgo-p8vnipr5_1,即下载分片0和分片1的数据,分片集群如需全量下载,请按示例方式传入全部分片名称。 - BackupSets []*ReplicaSetInfo `json:"BackupSets,omitempty" name:"BackupSets"` + BackupSets []*ReplicaSetInfo `json:"BackupSets,omitnil" name:"BackupSets"` } func (r *CreateBackupDownloadTaskRequest) ToJsonString() string { @@ -398,10 +411,10 @@ func (r *CreateBackupDownloadTaskRequest) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDownloadTaskResponseParams struct { // 下载任务状态 - Tasks []*BackupDownloadTaskStatus `json:"Tasks,omitempty" name:"Tasks"` + Tasks []*BackupDownloadTaskStatus `json:"Tasks,omitnil" name:"Tasks"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type CreateBackupDownloadTaskResponse struct { @@ -423,222 +436,210 @@ func (r *CreateBackupDownloadTaskResponse) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceHourRequestParams struct { // 实例内存大小,单位:GB。 - Memory *uint64 `json:"Memory,omitempty" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil" name:"Memory"` // 实例硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitempty" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil" name:"Volume"` // 指副本集数量。 // - 创建副本集实例,该参数只能为1。 // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitempty" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - NodeNum *uint64 `json:"NodeNum,omitempty" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` // 指版本信息。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本。 // - MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本。 // - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 // - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 - MongoVersion *string `json:"MongoVersion,omitempty" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆。 - MachineCode *string `json:"MachineCode,omitempty" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` // 实例数量,最小值1,最大值为10。 - GoodsNum *uint64 `json:"GoodsNum,omitempty" name:"GoodsNum"` + GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` // 可用区信息,输入格式如:ap-guangzhou-2。 // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 - Zone *string `json:"Zone,omitempty" name:"Zone"` + Zone *string `json:"Zone,omitnil" name:"Zone"` // 实例架构类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 - ClusterType *string `json:"ClusterType,omitempty" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` - // 私有网络ID,如果不设置该参数,则默认选择基础网络。 - VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + // 私有网络ID。如果不设置该参数,则默认选择基础网络。 + VpcId *string `json:"VpcId,omitnil" name:"VpcId"` // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 - SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` - // 实例密码。 - // - 不设置该参数,则默认密码格式为:实例ID+@+主账户uin。例如:实例 ID 为cmgo-higv73ed,UIN 为100000001,则默认密码为:cmgo-higv73ed@100000001。 - // - 自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 - Password *string `json:"Password,omitempty" name:"Password"` + // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 + Password *string `json:"Password,omitnil" name:"Password"` // 项目ID。若不设置该参数,则为默认项目。 - ProjectId *int64 `json:"ProjectId,omitempty" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` // 实例标签信息。 - Tags []*TagInfo `json:"Tags,omitempty" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` // 实例类型。 // - 1:正式实例。 // - 3:只读实例。 // - 4:灾备实例。 - Clone *int64 `json:"Clone,omitempty" name:"Clone"` + Clone *int64 `json:"Clone,omitnil" name:"Clone"` // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 - Father *string `json:"Father,omitempty" name:"Father"` + Father *string `json:"Father,omitnil" name:"Father"` // 安全组。 - SecurityGroup []*string `json:"SecurityGroup,omitempty" name:"SecurityGroup"` + SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` // 克隆实例回档时间。 // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 // - 回档时间范围:仅能回档7天内时间点的数据。 - RestoreTime *string `json:"RestoreTime,omitempty" name:"RestoreTime"` + RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 - InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 // - 不支持4.2及以上版本。 // - 不支持只读灾备实例。 // - 不能选择基础网络。 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitempty" name:"AvailabilityZoneList"` + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` - // Mongos CPU 核数。 - // - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 - // - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 - MongosCpu *uint64 `json:"MongosCpu,omitempty" name:"MongosCpu"` + // Mongos CPU 核数。购买分片集群时,必须填写。 + MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` - // Mongos 内存大小。 - // - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 - // - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 - MongosMemory *uint64 `json:"MongosMemory,omitempty" name:"MongosMemory"` + // Mongos 内存大小。购买分片集群时,必须填写。 + // + MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` - // Mongos 数量。 - // - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 - // - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitempty" name:"MongosNodeNum"` + // Mongos 数量。购买分片集群时,必须填写。 + // + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` // 只读节点数量,最大不超过7个。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitempty" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 - HiddenZone *string `json:"HiddenZone,omitempty" name:"HiddenZone"` + HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` } type CreateDBInstanceHourRequest struct { *tchttp.BaseRequest // 实例内存大小,单位:GB。 - Memory *uint64 `json:"Memory,omitempty" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil" name:"Memory"` // 实例硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitempty" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil" name:"Volume"` // 指副本集数量。 // - 创建副本集实例,该参数只能为1。 // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitempty" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - NodeNum *uint64 `json:"NodeNum,omitempty" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` // 指版本信息。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本。 // - MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本。 // - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 // - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 - MongoVersion *string `json:"MongoVersion,omitempty" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆。 - MachineCode *string `json:"MachineCode,omitempty" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` // 实例数量,最小值1,最大值为10。 - GoodsNum *uint64 `json:"GoodsNum,omitempty" name:"GoodsNum"` + GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` // 可用区信息,输入格式如:ap-guangzhou-2。 // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 - Zone *string `json:"Zone,omitempty" name:"Zone"` + Zone *string `json:"Zone,omitnil" name:"Zone"` // 实例架构类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 - ClusterType *string `json:"ClusterType,omitempty" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` - // 私有网络ID,如果不设置该参数,则默认选择基础网络。 - VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + // 私有网络ID。如果不设置该参数,则默认选择基础网络。 + VpcId *string `json:"VpcId,omitnil" name:"VpcId"` // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 - SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` - // 实例密码。 - // - 不设置该参数,则默认密码格式为:实例ID+@+主账户uin。例如:实例 ID 为cmgo-higv73ed,UIN 为100000001,则默认密码为:cmgo-higv73ed@100000001。 - // - 自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 - Password *string `json:"Password,omitempty" name:"Password"` + // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 + Password *string `json:"Password,omitnil" name:"Password"` // 项目ID。若不设置该参数,则为默认项目。 - ProjectId *int64 `json:"ProjectId,omitempty" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` // 实例标签信息。 - Tags []*TagInfo `json:"Tags,omitempty" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` // 实例类型。 // - 1:正式实例。 // - 3:只读实例。 // - 4:灾备实例。 - Clone *int64 `json:"Clone,omitempty" name:"Clone"` + Clone *int64 `json:"Clone,omitnil" name:"Clone"` // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 - Father *string `json:"Father,omitempty" name:"Father"` + Father *string `json:"Father,omitnil" name:"Father"` // 安全组。 - SecurityGroup []*string `json:"SecurityGroup,omitempty" name:"SecurityGroup"` + SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` // 克隆实例回档时间。 // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 // - 回档时间范围:仅能回档7天内时间点的数据。 - RestoreTime *string `json:"RestoreTime,omitempty" name:"RestoreTime"` + RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 - InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 // - 不支持4.2及以上版本。 // - 不支持只读灾备实例。 // - 不能选择基础网络。 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitempty" name:"AvailabilityZoneList"` + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` - // Mongos CPU 核数。 - // - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 - // - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 - MongosCpu *uint64 `json:"MongosCpu,omitempty" name:"MongosCpu"` + // Mongos CPU 核数。购买分片集群时,必须填写。 + MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` - // Mongos 内存大小。 - // - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 - // - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 - MongosMemory *uint64 `json:"MongosMemory,omitempty" name:"MongosMemory"` + // Mongos 内存大小。购买分片集群时,必须填写。 + // + MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` - // Mongos 数量。 - // - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 - // - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitempty" name:"MongosNodeNum"` + // Mongos 数量。购买分片集群时,必须填写。 + // + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` // 只读节点数量,最大不超过7个。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitempty" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 - HiddenZone *string `json:"HiddenZone,omitempty" name:"HiddenZone"` + HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` } func (r *CreateDBInstanceHourRequest) ToJsonString() string { @@ -688,13 +689,13 @@ func (r *CreateDBInstanceHourRequest) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceHourResponseParams struct { // 订单ID。 - DealId *string `json:"DealId,omitempty" name:"DealId"` + DealId *string `json:"DealId,omitnil" name:"DealId"` // 创建的实例ID列表。 - InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type CreateDBInstanceHourResponse struct { @@ -715,183 +716,233 @@ func (r *CreateDBInstanceHourResponse) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceRequestParams struct { - // 每个副本集内节点个数,具体参照查询云数据库的售卖规格返回参数 - NodeNum *uint64 `json:"NodeNum,omitempty" name:"NodeNum"` + // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` - // 实例内存大小,单位:GB - Memory *uint64 `json:"Memory,omitempty" name:"Memory"` + // 实例内存大小,单位:GB。 + Memory *uint64 `json:"Memory,omitnil" name:"Memory"` - // 实例硬盘大小,单位:GB - Volume *uint64 `json:"Volume,omitempty" name:"Volume"` + // 实例硬盘大小,单位:GB。 + Volume *uint64 `json:"Volume,omitnil" name:"Volume"` - // 版本号,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。参数与版本对应关系是MONGO_3_WT:MongoDB 3.2 WiredTiger存储引擎版本,MONGO_3_ROCKS:MongoDB 3.2 RocksDB存储引擎版本,MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本,MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本,MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本 - MongoVersion *string `json:"MongoVersion,omitempty" name:"MongoVersion"` + // 指版本信息。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + // - MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本。 + // - MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本。 + // - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 + // - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 + MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` - // 实例数量, 最小值1,最大值为10 - GoodsNum *uint64 `json:"GoodsNum,omitempty" name:"GoodsNum"` + // 实例数量, 最小值1,最大值为10。 + GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` - // 实例所属区域名称,格式如:ap-guangzhou-2。注:此参数填写的是主可用区,如果选择多可用区部署,Zone必须是AvailabilityZoneList中的一个 - Zone *string `json:"Zone,omitempty" name:"Zone"` + // 可用区信息,输入格式如:ap-guangzhou-2。 + // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 + Zone *string `json:"Zone,omitnil" name:"Zone"` - // 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36] - Period *uint64 `json:"Period,omitempty" name:"Period"` + // 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36]。 + Period *uint64 `json:"Period,omitnil" name:"Period"` - // 机器类型,HIO:高IO型;HIO10G:高IO万兆型;STDS5:标准型 - MachineCode *string `json:"MachineCode,omitempty" name:"MachineCode"` + // 机器类型。 + // - HIO:高IO型。 + // - HIO10G:高IO万兆。 + MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` - // 实例类型,REPLSET-副本集,SHARD-分片集群,STANDALONE-单节点 - ClusterType *string `json:"ClusterType,omitempty" name:"ClusterType"` + // 实例架构类型。 + // - REPLSET:副本集。 + // - SHARD:分片集群。 + ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` - // 副本集个数,创建副本集实例时,该参数必须设置为1;创建分片实例时,具体参照查询云数据库的售卖规格返回参数;若为单节点实例,该参数设置为0 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitempty" name:"ReplicateSetNum"` + // 指副本集数量。 + // - 创建副本集实例,该参数只能为1。 + // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` - // 项目ID,不设置为默认项目 - ProjectId *int64 `json:"ProjectId,omitempty" name:"ProjectId"` + // 项目ID。若不设置该参数,则为默认项目。 + ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` - // 私有网络 ID,如果不传则默认选择基础网络,请使用 查询私有网络列表 - VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + // 私有网络ID。如果不设置该参数,则默认选择基础网络。 + VpcId *string `json:"VpcId,omitnil" name:"VpcId"` - // 私有网络下的子网 ID,如果设置了 UniqVpcId,则 UniqSubnetId 必填,请使用 查询子网列表 - SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 + SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` - // 实例密码,不设置该参数则默认密码规则为 实例ID+"@"+主账户uin。举例实例id为cmgo-higv73ed,uin为100000001,则默认密码为"cmgo-higv73ed@100000001"。 自定义密码格式为8-32个字符长度,至少包含字母、数字和字符(!@#%^*()_)中的两种 - Password *string `json:"Password,omitempty" name:"Password"` + // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 + Password *string `json:"Password,omitnil" name:"Password"` - // 实例标签信息 - Tags []*TagInfo `json:"Tags,omitempty" name:"Tags"` + // 实例标签信息。 + Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` - // 自动续费标记,可选值为:0 - 不自动续费;1 - 自动续费。默认为不自动续费 - AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitempty" name:"AutoRenewFlag"` + // 自动续费标记。 + // - 0:不自动续费。默认为不自动续费。 + // - 1:自动续费。 + AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitnil" name:"AutoRenewFlag"` - // 是否自动选择代金券,可选值为:1 - 是;0 - 否; 默认为0 - AutoVoucher *uint64 `json:"AutoVoucher,omitempty" name:"AutoVoucher"` + // 是否自动选择代金券。 + // - 1:是。 + // - 0:否。默认为0。 + AutoVoucher *uint64 `json:"AutoVoucher,omitnil" name:"AutoVoucher"` - // 1:正式实例,2:临时实例,3:只读实例,4:灾备实例,5:克隆实例 - Clone *int64 `json:"Clone,omitempty" name:"Clone"` + // 实例类型。 + // - 1:正式实例。 + // - 3:只读实例。 + // - 4:灾备实例。 + Clone *int64 `json:"Clone,omitnil" name:"Clone"` - // 若是只读,灾备实例或克隆实例,Father必须填写,即主实例ID - Father *string `json:"Father,omitempty" name:"Father"` + // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 + Father *string `json:"Father,omitnil" name:"Father"` - // 安全组 - SecurityGroup []*string `json:"SecurityGroup,omitempty" name:"SecurityGroup"` + // 安全组。 + SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` - // 克隆实例回档时间。若是克隆实例,则必须填写,格式:2021-08-13 16:30:00。注:只能回档7天内的时间点 - RestoreTime *string `json:"RestoreTime,omitempty" name:"RestoreTime"` + // 克隆实例回档时间。 + // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 + // - 回档时间范围:仅能回档7天内时间点的数据。 + RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` - // 实例名称。注:名称只支持长度为60个字符的中文、英文、数字、下划线_、分隔符- - InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` + // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 + InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` - // 多可用区部署的节点列表,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。注:1、多可用区部署节点只能部署在3个不同可用区;2、为了保障跨可用区切换,不支持将集群的大多数节点部署在同一个可用区(如3节点集群不支持2个节点部署在同一个区);3、不支持4.2及以上版本;4、不支持只读灾备实例;5、不能选择基础网络 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitempty" name:"AvailabilityZoneList"` + // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 + // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 + // - 不支持4.2及以上版本。 + // - 不支持只读灾备实例。 + // - 不能选择基础网络。 + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` - // mongos cpu数量,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果 - MongosCpu *uint64 `json:"MongosCpu,omitempty" name:"MongosCpu"` + // Mongos CPU 核数,购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` - // mongos 内存大小,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果 - MongosMemory *uint64 `json:"MongosMemory,omitempty" name:"MongosMemory"` + // Mongos 内存大小。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` - // mongos 数量,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。注:为了保障高可用,最低需要购买3个mongos,上限为32个 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitempty" name:"MongosNodeNum"` + // Mongos 数量。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。为了保障高可用,取值范围为[3,32]。 + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` - // 只读节点数量,最大不超过7个 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitempty" name:"ReadonlyNodeNum"` + // 只读节点数量,取值范围[0,5]。 + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` - // 只读节点部署可用区 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` + // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` - // Hidden节点所在的可用区,跨可用区实例必传 - HiddenZone *string `json:"HiddenZone,omitempty" name:"HiddenZone"` + // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 + HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` } type CreateDBInstanceRequest struct { *tchttp.BaseRequest - // 每个副本集内节点个数,具体参照查询云数据库的售卖规格返回参数 - NodeNum *uint64 `json:"NodeNum,omitempty" name:"NodeNum"` + // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` - // 实例内存大小,单位:GB - Memory *uint64 `json:"Memory,omitempty" name:"Memory"` + // 实例内存大小,单位:GB。 + Memory *uint64 `json:"Memory,omitnil" name:"Memory"` - // 实例硬盘大小,单位:GB - Volume *uint64 `json:"Volume,omitempty" name:"Volume"` + // 实例硬盘大小,单位:GB。 + Volume *uint64 `json:"Volume,omitnil" name:"Volume"` - // 版本号,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。参数与版本对应关系是MONGO_3_WT:MongoDB 3.2 WiredTiger存储引擎版本,MONGO_3_ROCKS:MongoDB 3.2 RocksDB存储引擎版本,MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本,MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本,MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本 - MongoVersion *string `json:"MongoVersion,omitempty" name:"MongoVersion"` + // 指版本信息。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + // - MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本。 + // - MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本。 + // - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 + // - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 + MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` - // 实例数量, 最小值1,最大值为10 - GoodsNum *uint64 `json:"GoodsNum,omitempty" name:"GoodsNum"` + // 实例数量, 最小值1,最大值为10。 + GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` - // 实例所属区域名称,格式如:ap-guangzhou-2。注:此参数填写的是主可用区,如果选择多可用区部署,Zone必须是AvailabilityZoneList中的一个 - Zone *string `json:"Zone,omitempty" name:"Zone"` + // 可用区信息,输入格式如:ap-guangzhou-2。 + // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 + Zone *string `json:"Zone,omitnil" name:"Zone"` - // 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36] - Period *uint64 `json:"Period,omitempty" name:"Period"` + // 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36]。 + Period *uint64 `json:"Period,omitnil" name:"Period"` - // 机器类型,HIO:高IO型;HIO10G:高IO万兆型;STDS5:标准型 - MachineCode *string `json:"MachineCode,omitempty" name:"MachineCode"` + // 机器类型。 + // - HIO:高IO型。 + // - HIO10G:高IO万兆。 + MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` - // 实例类型,REPLSET-副本集,SHARD-分片集群,STANDALONE-单节点 - ClusterType *string `json:"ClusterType,omitempty" name:"ClusterType"` + // 实例架构类型。 + // - REPLSET:副本集。 + // - SHARD:分片集群。 + ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` - // 副本集个数,创建副本集实例时,该参数必须设置为1;创建分片实例时,具体参照查询云数据库的售卖规格返回参数;若为单节点实例,该参数设置为0 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitempty" name:"ReplicateSetNum"` + // 指副本集数量。 + // - 创建副本集实例,该参数只能为1。 + // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` - // 项目ID,不设置为默认项目 - ProjectId *int64 `json:"ProjectId,omitempty" name:"ProjectId"` + // 项目ID。若不设置该参数,则为默认项目。 + ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` - // 私有网络 ID,如果不传则默认选择基础网络,请使用 查询私有网络列表 - VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + // 私有网络ID。如果不设置该参数,则默认选择基础网络。 + VpcId *string `json:"VpcId,omitnil" name:"VpcId"` - // 私有网络下的子网 ID,如果设置了 UniqVpcId,则 UniqSubnetId 必填,请使用 查询子网列表 - SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 + SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` - // 实例密码,不设置该参数则默认密码规则为 实例ID+"@"+主账户uin。举例实例id为cmgo-higv73ed,uin为100000001,则默认密码为"cmgo-higv73ed@100000001"。 自定义密码格式为8-32个字符长度,至少包含字母、数字和字符(!@#%^*()_)中的两种 - Password *string `json:"Password,omitempty" name:"Password"` + // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 + Password *string `json:"Password,omitnil" name:"Password"` - // 实例标签信息 - Tags []*TagInfo `json:"Tags,omitempty" name:"Tags"` + // 实例标签信息。 + Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` - // 自动续费标记,可选值为:0 - 不自动续费;1 - 自动续费。默认为不自动续费 - AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitempty" name:"AutoRenewFlag"` + // 自动续费标记。 + // - 0:不自动续费。默认为不自动续费。 + // - 1:自动续费。 + AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitnil" name:"AutoRenewFlag"` - // 是否自动选择代金券,可选值为:1 - 是;0 - 否; 默认为0 - AutoVoucher *uint64 `json:"AutoVoucher,omitempty" name:"AutoVoucher"` + // 是否自动选择代金券。 + // - 1:是。 + // - 0:否。默认为0。 + AutoVoucher *uint64 `json:"AutoVoucher,omitnil" name:"AutoVoucher"` - // 1:正式实例,2:临时实例,3:只读实例,4:灾备实例,5:克隆实例 - Clone *int64 `json:"Clone,omitempty" name:"Clone"` + // 实例类型。 + // - 1:正式实例。 + // - 3:只读实例。 + // - 4:灾备实例。 + Clone *int64 `json:"Clone,omitnil" name:"Clone"` - // 若是只读,灾备实例或克隆实例,Father必须填写,即主实例ID - Father *string `json:"Father,omitempty" name:"Father"` + // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 + Father *string `json:"Father,omitnil" name:"Father"` - // 安全组 - SecurityGroup []*string `json:"SecurityGroup,omitempty" name:"SecurityGroup"` + // 安全组。 + SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` - // 克隆实例回档时间。若是克隆实例,则必须填写,格式:2021-08-13 16:30:00。注:只能回档7天内的时间点 - RestoreTime *string `json:"RestoreTime,omitempty" name:"RestoreTime"` + // 克隆实例回档时间。 + // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 + // - 回档时间范围:仅能回档7天内时间点的数据。 + RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` - // 实例名称。注:名称只支持长度为60个字符的中文、英文、数字、下划线_、分隔符- - InstanceName *string `json:"InstanceName,omitempty" name:"InstanceName"` + // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 + InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` - // 多可用区部署的节点列表,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。注:1、多可用区部署节点只能部署在3个不同可用区;2、为了保障跨可用区切换,不支持将集群的大多数节点部署在同一个可用区(如3节点集群不支持2个节点部署在同一个区);3、不支持4.2及以上版本;4、不支持只读灾备实例;5、不能选择基础网络 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitempty" name:"AvailabilityZoneList"` + // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 + // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 + // - 不支持4.2及以上版本。 + // - 不支持只读灾备实例。 + // - 不能选择基础网络。 + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` - // mongos cpu数量,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果 - MongosCpu *uint64 `json:"MongosCpu,omitempty" name:"MongosCpu"` + // Mongos CPU 核数,购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` - // mongos 内存大小,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果 - MongosMemory *uint64 `json:"MongosMemory,omitempty" name:"MongosMemory"` + // Mongos 内存大小。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 + MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` - // mongos 数量,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。注:为了保障高可用,最低需要购买3个mongos,上限为32个 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitempty" name:"MongosNodeNum"` + // Mongos 数量。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。为了保障高可用,取值范围为[3,32]。 + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` - // 只读节点数量,最大不超过7个 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitempty" name:"ReadonlyNodeNum"` + // 只读节点数量,取值范围[0,5]。 + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` - // 只读节点部署可用区 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` + // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` - // Hidden节点所在的可用区,跨可用区实例必传 - HiddenZone *string `json:"HiddenZone,omitempty" name:"HiddenZone"` + // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 + HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` } func (r *CreateDBInstanceRequest) ToJsonString() string { @@ -944,13 +995,13 @@ func (r *CreateDBInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceResponseParams struct { // 订单ID - DealId *string `json:"DealId,omitempty" name:"DealId"` + DealId *string `json:"DealId,omitnil" name:"DealId"` // 创建的实例ID列表 - InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type CreateDBInstanceResponse struct { @@ -972,82 +1023,82 @@ func (r *CreateDBInstanceResponse) FromJsonString(s string) error { type CurrentOp struct { // 操作序号 // 注意:此字段可能返回 null,表示取不到有效值。 - OpId *int64 `json:"OpId,omitempty" name:"OpId"` + OpId *int64 `json:"OpId,omitnil" name:"OpId"` // 操作所在的命名空间,形式如db.collection // 注意:此字段可能返回 null,表示取不到有效值。 - Ns *string `json:"Ns,omitempty" name:"Ns"` + Ns *string `json:"Ns,omitnil" name:"Ns"` // 操作执行语句 // 注意:此字段可能返回 null,表示取不到有效值。 - Query *string `json:"Query,omitempty" name:"Query"` + Query *string `json:"Query,omitnil" name:"Query"` // 操作类型,可能的取值:aggregate、count、delete、distinct、find、findAndModify、getMore、insert、mapReduce、update和command // 注意:此字段可能返回 null,表示取不到有效值。 - Op *string `json:"Op,omitempty" name:"Op"` + Op *string `json:"Op,omitnil" name:"Op"` // 操作所在的分片名称 - ReplicaSetName *string `json:"ReplicaSetName,omitempty" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` // 筛选条件,节点状态,可能的取值为:Primary、Secondary // 注意:此字段可能返回 null,表示取不到有效值。 - State *string `json:"State,omitempty" name:"State"` + State *string `json:"State,omitnil" name:"State"` // 操作详细信息 // 注意:此字段可能返回 null,表示取不到有效值。 - Operation *string `json:"Operation,omitempty" name:"Operation"` + Operation *string `json:"Operation,omitnil" name:"Operation"` // 操作所在的节点名称 - NodeName *string `json:"NodeName,omitempty" name:"NodeName"` + NodeName *string `json:"NodeName,omitnil" name:"NodeName"` // 操作已执行时间(ms) // 注意:此字段可能返回 null,表示取不到有效值。 - MicrosecsRunning *uint64 `json:"MicrosecsRunning,omitempty" name:"MicrosecsRunning"` + MicrosecsRunning *uint64 `json:"MicrosecsRunning,omitnil" name:"MicrosecsRunning"` } type DBInstanceInfo struct { // 实例ID - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 地域信息 - Region *string `json:"Region,omitempty" name:"Region"` + Region *string `json:"Region,omitnil" name:"Region"` } type DBInstancePrice struct { // 单价 // 注意:此字段可能返回 null,表示取不到有效值。 - UnitPrice *float64 `json:"UnitPrice,omitempty" name:"UnitPrice"` + UnitPrice *float64 `json:"UnitPrice,omitnil" name:"UnitPrice"` // 原价 - OriginalPrice *float64 `json:"OriginalPrice,omitempty" name:"OriginalPrice"` + OriginalPrice *float64 `json:"OriginalPrice,omitnil" name:"OriginalPrice"` - // 折扣加 - DiscountPrice *float64 `json:"DiscountPrice,omitempty" name:"DiscountPrice"` + // 折扣价 + DiscountPrice *float64 `json:"DiscountPrice,omitnil" name:"DiscountPrice"` } // Predefined struct for user type DeleteAccountUserRequestParams struct { // 指定待删除账号的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 配置待删除的账号名。 - UserName *string `json:"UserName,omitempty" name:"UserName"` + UserName *string `json:"UserName,omitnil" name:"UserName"` // 配置 mongouser 对应的密码。mongouser为系统默认账号,输入其对应的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitempty" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` } type DeleteAccountUserRequest struct { *tchttp.BaseRequest // 指定待删除账号的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 配置待删除的账号名。 - UserName *string `json:"UserName,omitempty" name:"UserName"` + UserName *string `json:"UserName,omitnil" name:"UserName"` // 配置 mongouser 对应的密码。mongouser为系统默认账号,输入其对应的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitempty" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` } func (r *DeleteAccountUserRequest) ToJsonString() string { @@ -1074,10 +1125,10 @@ func (r *DeleteAccountUserRequest) FromJsonString(s string) error { // Predefined struct for user type DeleteAccountUserResponseParams struct { // 账户删除任务ID。 - FlowId *int64 `json:"FlowId,omitempty" name:"FlowId"` + FlowId *int64 `json:"FlowId,omitnil" name:"FlowId"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DeleteAccountUserResponse struct { @@ -1099,14 +1150,14 @@ func (r *DeleteAccountUserResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeAccountUsersRequestParams struct { // 指定待获取账号的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } type DescribeAccountUsersRequest struct { *tchttp.BaseRequest // 指定待获取账号的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } func (r *DescribeAccountUsersRequest) ToJsonString() string { @@ -1131,10 +1182,10 @@ func (r *DescribeAccountUsersRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeAccountUsersResponseParams struct { // 实例账号列表。 - Users []*UserInfo `json:"Users,omitempty" name:"Users"` + Users []*UserInfo `json:"Users,omitnil" name:"Users"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeAccountUsersResponse struct { @@ -1156,14 +1207,14 @@ func (r *DescribeAccountUsersResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeAsyncRequestInfoRequestParams struct { // 异步请求Id,涉及到异步流程的接口返回,如CreateBackupDBInstance - AsyncRequestId *string `json:"AsyncRequestId,omitempty" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` } type DescribeAsyncRequestInfoRequest struct { *tchttp.BaseRequest // 异步请求Id,涉及到异步流程的接口返回,如CreateBackupDBInstance - AsyncRequestId *string `json:"AsyncRequestId,omitempty" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` } func (r *DescribeAsyncRequestInfoRequest) ToJsonString() string { @@ -1188,10 +1239,10 @@ func (r *DescribeAsyncRequestInfoRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeAsyncRequestInfoResponseParams struct { // 状态。返回参数有:initial-初始化、running-运行中、paused-任务执行失败,已暂停、undoed-任务执行失败,已回滚、failed-任务执行失败, 已终止、success-成功 - Status *string `json:"Status,omitempty" name:"Status"` + Status *string `json:"Status,omitnil" name:"Status"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeAsyncRequestInfoResponse struct { @@ -1213,62 +1264,62 @@ func (r *DescribeAsyncRequestInfoResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeBackupDownloadTaskRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 备份文件名,用来过滤指定文件的下载任务 - BackupName *string `json:"BackupName,omitempty" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil" name:"BackupName"` // 指定查询时间范围内的任务,StartTime指定开始时间,不填默认不限制开始时间 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 指定查询时间范围内的任务,EndTime指定截止时间,不填默认不限制截止时间 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 此次查询返回的条数,取值范围为1-100,默认为20 - Limit *int64 `json:"Limit,omitempty" name:"Limit"` + Limit *int64 `json:"Limit,omitnil" name:"Limit"` // 指定此次查询返回的页数,默认为0 - Offset *int64 `json:"Offset,omitempty" name:"Offset"` + Offset *int64 `json:"Offset,omitnil" name:"Offset"` // 排序字段,取值为createTime,finishTime两种,默认为createTime - OrderBy *string `json:"OrderBy,omitempty" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` // 排序方式,取值为asc,desc两种,默认desc - OrderByType *string `json:"OrderByType,omitempty" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` // 根据任务状态过滤。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试。不填默认返回所有类型 - Status []*int64 `json:"Status,omitempty" name:"Status"` + Status []*int64 `json:"Status,omitnil" name:"Status"` } type DescribeBackupDownloadTaskRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 备份文件名,用来过滤指定文件的下载任务 - BackupName *string `json:"BackupName,omitempty" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil" name:"BackupName"` // 指定查询时间范围内的任务,StartTime指定开始时间,不填默认不限制开始时间 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 指定查询时间范围内的任务,EndTime指定截止时间,不填默认不限制截止时间 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 此次查询返回的条数,取值范围为1-100,默认为20 - Limit *int64 `json:"Limit,omitempty" name:"Limit"` + Limit *int64 `json:"Limit,omitnil" name:"Limit"` // 指定此次查询返回的页数,默认为0 - Offset *int64 `json:"Offset,omitempty" name:"Offset"` + Offset *int64 `json:"Offset,omitnil" name:"Offset"` // 排序字段,取值为createTime,finishTime两种,默认为createTime - OrderBy *string `json:"OrderBy,omitempty" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` // 排序方式,取值为asc,desc两种,默认desc - OrderByType *string `json:"OrderByType,omitempty" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` // 根据任务状态过滤。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试。不填默认返回所有类型 - Status []*int64 `json:"Status,omitempty" name:"Status"` + Status []*int64 `json:"Status,omitnil" name:"Status"` } func (r *DescribeBackupDownloadTaskRequest) ToJsonString() string { @@ -1301,13 +1352,13 @@ func (r *DescribeBackupDownloadTaskRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeBackupDownloadTaskResponseParams struct { // 满足查询条件的所有条数 - TotalCount *int64 `json:"TotalCount,omitempty" name:"TotalCount"` + TotalCount *int64 `json:"TotalCount,omitnil" name:"TotalCount"` // 下载任务列表 - Tasks []*BackupDownloadTask `json:"Tasks,omitempty" name:"Tasks"` + Tasks []*BackupDownloadTask `json:"Tasks,omitnil" name:"Tasks"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeBackupDownloadTaskResponse struct { @@ -1329,26 +1380,26 @@ func (r *DescribeBackupDownloadTaskResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeClientConnectionsRequestParams struct { // 指定待查询的实例ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 单次请求返回的数量。最小值为1,最大值为1000,默认值为1000。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 偏移量,默认值为0。Offset=Limit*(页码-1)。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` } type DescribeClientConnectionsRequest struct { *tchttp.BaseRequest // 指定待查询的实例ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 单次请求返回的数量。最小值为1,最大值为1000,默认值为1000。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 偏移量,默认值为0。Offset=Limit*(页码-1)。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` } func (r *DescribeClientConnectionsRequest) ToJsonString() string { @@ -1375,13 +1426,13 @@ func (r *DescribeClientConnectionsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeClientConnectionsResponseParams struct { // 客户端连接信息,包括客户端 IP 和对应 IP 的连接数量。 - Clients []*ClientConnection `json:"Clients,omitempty" name:"Clients"` + Clients []*ClientConnection `json:"Clients,omitnil" name:"Clients"` // 满足条件的记录总条数,可用于分页查询。 - TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeClientConnectionsResponse struct { @@ -1403,70 +1454,70 @@ func (r *DescribeClientConnectionsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeCurrentOpRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 筛选条件,操作所属的命名空间namespace,格式为db.collection - Ns *string `json:"Ns,omitempty" name:"Ns"` + Ns *string `json:"Ns,omitnil" name:"Ns"` // 筛选条件,操作已经执行的时间(单位:毫秒),结果将返回超过设置时间的操作,默认值为0,取值范围为[0, 3600000] - MillisecondRunning *uint64 `json:"MillisecondRunning,omitempty" name:"MillisecondRunning"` + MillisecondRunning *uint64 `json:"MillisecondRunning,omitnil" name:"MillisecondRunning"` // 筛选条件,操作类型,可能的取值:none,update,insert,query,command,getmore,remove和killcursors - Op *string `json:"Op,omitempty" name:"Op"` + Op *string `json:"Op,omitnil" name:"Op"` // 筛选条件,分片名称 - ReplicaSetName *string `json:"ReplicaSetName,omitempty" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` // 筛选条件,节点状态,可能的取值为:primary // secondary - State *string `json:"State,omitempty" name:"State"` + State *string `json:"State,omitnil" name:"State"` // 单次请求返回的数量,默认值为100,取值范围为[0,100] - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 偏移量,默认值为0,取值范围为[0,10000] - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 返回结果集排序的字段,目前支持:"MicrosecsRunning"/"microsecsrunning",默认为升序排序 - OrderBy *string `json:"OrderBy,omitempty" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` // 返回结果集排序方式,可能的取值:"ASC"/"asc"或"DESC"/"desc" - OrderByType *string `json:"OrderByType,omitempty" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` } type DescribeCurrentOpRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 筛选条件,操作所属的命名空间namespace,格式为db.collection - Ns *string `json:"Ns,omitempty" name:"Ns"` + Ns *string `json:"Ns,omitnil" name:"Ns"` // 筛选条件,操作已经执行的时间(单位:毫秒),结果将返回超过设置时间的操作,默认值为0,取值范围为[0, 3600000] - MillisecondRunning *uint64 `json:"MillisecondRunning,omitempty" name:"MillisecondRunning"` + MillisecondRunning *uint64 `json:"MillisecondRunning,omitnil" name:"MillisecondRunning"` // 筛选条件,操作类型,可能的取值:none,update,insert,query,command,getmore,remove和killcursors - Op *string `json:"Op,omitempty" name:"Op"` + Op *string `json:"Op,omitnil" name:"Op"` // 筛选条件,分片名称 - ReplicaSetName *string `json:"ReplicaSetName,omitempty" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` // 筛选条件,节点状态,可能的取值为:primary // secondary - State *string `json:"State,omitempty" name:"State"` + State *string `json:"State,omitnil" name:"State"` // 单次请求返回的数量,默认值为100,取值范围为[0,100] - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 偏移量,默认值为0,取值范围为[0,10000] - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 返回结果集排序的字段,目前支持:"MicrosecsRunning"/"microsecsrunning",默认为升序排序 - OrderBy *string `json:"OrderBy,omitempty" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` // 返回结果集排序方式,可能的取值:"ASC"/"asc"或"DESC"/"desc" - OrderByType *string `json:"OrderByType,omitempty" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` } func (r *DescribeCurrentOpRequest) ToJsonString() string { @@ -1500,13 +1551,13 @@ func (r *DescribeCurrentOpRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeCurrentOpResponseParams struct { // 符合查询条件的操作总数 - TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` // 当前操作列表 - CurrentOps []*CurrentOp `json:"CurrentOps,omitempty" name:"CurrentOps"` + CurrentOps []*CurrentOp `json:"CurrentOps,omitnil" name:"CurrentOps"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeCurrentOpResponse struct { @@ -1528,32 +1579,32 @@ func (r *DescribeCurrentOpResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeDBBackupsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 备份方式,当前支持:0-逻辑备份,1-物理备份,2-所有备份。默认为逻辑备份。 - BackupMethod *int64 `json:"BackupMethod,omitempty" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` // 分页大小,最大值为100,不设置默认查询所有。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 分页偏移量,最小值为0,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` } type DescribeDBBackupsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 备份方式,当前支持:0-逻辑备份,1-物理备份,2-所有备份。默认为逻辑备份。 - BackupMethod *int64 `json:"BackupMethod,omitempty" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` // 分页大小,最大值为100,不设置默认查询所有。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 分页偏移量,最小值为0,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` } func (r *DescribeDBBackupsRequest) ToJsonString() string { @@ -1581,13 +1632,13 @@ func (r *DescribeDBBackupsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeDBBackupsResponseParams struct { // 备份列表 - BackupList []*BackupInfo `json:"BackupList,omitempty" name:"BackupList"` + BackupList []*BackupInfo `json:"BackupList,omitnil" name:"BackupList"` // 备份总数 - TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeDBBackupsResponse struct { @@ -1609,14 +1660,14 @@ func (r *DescribeDBBackupsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstanceDealRequestParams struct { // 订单ID,通过CreateDBInstance等接口返回 - DealId *string `json:"DealId,omitempty" name:"DealId"` + DealId *string `json:"DealId,omitnil" name:"DealId"` } type DescribeDBInstanceDealRequest struct { *tchttp.BaseRequest // 订单ID,通过CreateDBInstance等接口返回 - DealId *string `json:"DealId,omitempty" name:"DealId"` + DealId *string `json:"DealId,omitnil" name:"DealId"` } func (r *DescribeDBInstanceDealRequest) ToJsonString() string { @@ -1641,19 +1692,19 @@ func (r *DescribeDBInstanceDealRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstanceDealResponseParams struct { // 订单状态,1:未支付,2:已支付,3:发货中,4:发货成功,5:发货失败,6:退款,7:订单关闭,8:超时未支付关闭。 - Status *int64 `json:"Status,omitempty" name:"Status"` + Status *int64 `json:"Status,omitnil" name:"Status"` // 订单原价。 - OriginalPrice *float64 `json:"OriginalPrice,omitempty" name:"OriginalPrice"` + OriginalPrice *float64 `json:"OriginalPrice,omitnil" name:"OriginalPrice"` // 订单折扣价格。 - DiscountPrice *float64 `json:"DiscountPrice,omitempty" name:"DiscountPrice"` + DiscountPrice *float64 `json:"DiscountPrice,omitnil" name:"DiscountPrice"` // 订单行为,purchase:新购,renew:续费,upgrade:升配,downgrade:降配,refund:退货退款。 - Action *string `json:"Action,omitempty" name:"Action"` + Action *string `json:"Action,omitnil" name:"Action"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeDBInstanceDealResponse struct { @@ -1675,54 +1726,54 @@ func (r *DescribeDBInstanceDealResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstanceNodePropertyRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 节点ID。 - NodeIds []*string `json:"NodeIds,omitempty" name:"NodeIds"` + NodeIds []*string `json:"NodeIds,omitnil" name:"NodeIds"` // 节点角色。可选值包括: // - Roles []*string `json:"Roles,omitempty" name:"Roles"` + Roles []*string `json:"Roles,omitnil" name:"Roles"` // 该参数指定节点是否为Hidden节点,默认为false。 - OnlyHidden *bool `json:"OnlyHidden,omitempty" name:"OnlyHidden"` + OnlyHidden *bool `json:"OnlyHidden,omitnil" name:"OnlyHidden"` // 该参数指定选举新主节点的优先级。其取值范围为[0,100],数值越高,优先级越高。 - Priority *int64 `json:"Priority,omitempty" name:"Priority"` + Priority *int64 `json:"Priority,omitnil" name:"Priority"` // 该参数指定节点投票权。 // - Votes *int64 `json:"Votes,omitempty" name:"Votes"` + Votes *int64 `json:"Votes,omitnil" name:"Votes"` // 节点标签。 - Tags []*NodeTag `json:"Tags,omitempty" name:"Tags"` + Tags []*NodeTag `json:"Tags,omitnil" name:"Tags"` } type DescribeDBInstanceNodePropertyRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 节点ID。 - NodeIds []*string `json:"NodeIds,omitempty" name:"NodeIds"` + NodeIds []*string `json:"NodeIds,omitnil" name:"NodeIds"` // 节点角色。可选值包括: // - Roles []*string `json:"Roles,omitempty" name:"Roles"` + Roles []*string `json:"Roles,omitnil" name:"Roles"` // 该参数指定节点是否为Hidden节点,默认为false。 - OnlyHidden *bool `json:"OnlyHidden,omitempty" name:"OnlyHidden"` + OnlyHidden *bool `json:"OnlyHidden,omitnil" name:"OnlyHidden"` // 该参数指定选举新主节点的优先级。其取值范围为[0,100],数值越高,优先级越高。 - Priority *int64 `json:"Priority,omitempty" name:"Priority"` + Priority *int64 `json:"Priority,omitnil" name:"Priority"` // 该参数指定节点投票权。 // - Votes *int64 `json:"Votes,omitempty" name:"Votes"` + Votes *int64 `json:"Votes,omitnil" name:"Votes"` // 节点标签。 - Tags []*NodeTag `json:"Tags,omitempty" name:"Tags"` + Tags []*NodeTag `json:"Tags,omitnil" name:"Tags"` } func (r *DescribeDBInstanceNodePropertyRequest) ToJsonString() string { @@ -1754,13 +1805,13 @@ func (r *DescribeDBInstanceNodePropertyRequest) FromJsonString(s string) error { type DescribeDBInstanceNodePropertyResponseParams struct { // Mongos节点属性。 // 注意:此字段可能返回 null,表示取不到有效值。 - Mongos []*NodeProperty `json:"Mongos,omitempty" name:"Mongos"` + Mongos []*NodeProperty `json:"Mongos,omitnil" name:"Mongos"` // 副本集节点信息。 - ReplicateSets []*ReplicateSetInfo `json:"ReplicateSets,omitempty" name:"ReplicateSets"` + ReplicateSets []*ReplicateSetInfo `json:"ReplicateSets,omitnil" name:"ReplicateSets"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeDBInstanceNodePropertyResponse struct { @@ -1782,104 +1833,104 @@ func (r *DescribeDBInstanceNodePropertyResponse) FromJsonString(s string) error // Predefined struct for user type DescribeDBInstancesRequestParams struct { // 实例 ID 列表。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` // 实例类型。取值范围如下: - InstanceType *int64 `json:"InstanceType,omitempty" name:"InstanceType"` + InstanceType *int64 `json:"InstanceType,omitnil" name:"InstanceType"` // 集群类型,取值范围如下: - ClusterType *int64 `json:"ClusterType,omitempty" name:"ClusterType"` + ClusterType *int64 `json:"ClusterType,omitnil" name:"ClusterType"` // 实例状态,取值范围如下所示: - Status []*int64 `json:"Status,omitempty" name:"Status"` + Status []*int64 `json:"Status,omitnil" name:"Status"` // 私有网络的 ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其 ID。 - VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil" name:"VpcId"` // 私有网络的子网ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其子网 ID。 - SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` // 付费类型,取值范围如下: - PayMode *int64 `json:"PayMode,omitempty" name:"PayMode"` + PayMode *int64 `json:"PayMode,omitnil" name:"PayMode"` // 单次请求返回的数量。默认值为20,取值范围为[1,100]。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 偏移量,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 配置返回结果排序依据的字段。目前支持依据"ProjectId"、"InstanceName"、"CreateTime"排序。 - OrderBy *string `json:"OrderBy,omitempty" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` // 配置返回结果的排序方式。 // - ASC:升序。 // - DESC:降序。 - OrderByType *string `json:"OrderByType,omitempty" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` // 项目 ID。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb),在右上角的账户信息下拉菜单中,选择项目管理查询项目。 - ProjectIds []*uint64 `json:"ProjectIds,omitempty" name:"ProjectIds"` + ProjectIds []*uint64 `json:"ProjectIds,omitnil" name:"ProjectIds"` // 配置查询搜索的关键词。支持配置为实例ID、实例名称或者内网 IP 地址。 - SearchKey *string `json:"SearchKey,omitempty" name:"SearchKey"` + SearchKey *string `json:"SearchKey,omitnil" name:"SearchKey"` // 标签信息,包含标签键与标签值。 - Tags []*TagInfo `json:"Tags,omitempty" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` } type DescribeDBInstancesRequest struct { *tchttp.BaseRequest // 实例 ID 列表。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceIds []*string `json:"InstanceIds,omitempty" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` // 实例类型。取值范围如下: - InstanceType *int64 `json:"InstanceType,omitempty" name:"InstanceType"` + InstanceType *int64 `json:"InstanceType,omitnil" name:"InstanceType"` // 集群类型,取值范围如下: - ClusterType *int64 `json:"ClusterType,omitempty" name:"ClusterType"` + ClusterType *int64 `json:"ClusterType,omitnil" name:"ClusterType"` // 实例状态,取值范围如下所示: - Status []*int64 `json:"Status,omitempty" name:"Status"` + Status []*int64 `json:"Status,omitnil" name:"Status"` // 私有网络的 ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其 ID。 - VpcId *string `json:"VpcId,omitempty" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil" name:"VpcId"` // 私有网络的子网ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其子网 ID。 - SubnetId *string `json:"SubnetId,omitempty" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` // 付费类型,取值范围如下: - PayMode *int64 `json:"PayMode,omitempty" name:"PayMode"` + PayMode *int64 `json:"PayMode,omitnil" name:"PayMode"` // 单次请求返回的数量。默认值为20,取值范围为[1,100]。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 偏移量,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 配置返回结果排序依据的字段。目前支持依据"ProjectId"、"InstanceName"、"CreateTime"排序。 - OrderBy *string `json:"OrderBy,omitempty" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` // 配置返回结果的排序方式。 // - ASC:升序。 // - DESC:降序。 - OrderByType *string `json:"OrderByType,omitempty" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` // 项目 ID。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb),在右上角的账户信息下拉菜单中,选择项目管理查询项目。 - ProjectIds []*uint64 `json:"ProjectIds,omitempty" name:"ProjectIds"` + ProjectIds []*uint64 `json:"ProjectIds,omitnil" name:"ProjectIds"` // 配置查询搜索的关键词。支持配置为实例ID、实例名称或者内网 IP 地址。 - SearchKey *string `json:"SearchKey,omitempty" name:"SearchKey"` + SearchKey *string `json:"SearchKey,omitnil" name:"SearchKey"` // 标签信息,包含标签键与标签值。 - Tags []*TagInfo `json:"Tags,omitempty" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` } func (r *DescribeDBInstancesRequest) ToJsonString() string { @@ -1917,13 +1968,13 @@ func (r *DescribeDBInstancesRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstancesResponseParams struct { // 符合查询条件的实例总数。 - TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` // 实例详细信息列表。 - InstanceDetails []*InstanceDetail `json:"InstanceDetails,omitempty" name:"InstanceDetails"` + InstanceDetails []*InstanceDetail `json:"InstanceDetails,omitnil" name:"InstanceDetails"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeDBInstancesResponse struct { @@ -1945,14 +1996,14 @@ func (r *DescribeDBInstancesResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeInstanceParamsRequestParams struct { // 指定待查询参数列表的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } type DescribeInstanceParamsRequest struct { *tchttp.BaseRequest // 指定待查询参数列表的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } func (r *DescribeInstanceParamsRequest) ToJsonString() string { @@ -1977,22 +2028,22 @@ func (r *DescribeInstanceParamsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeInstanceParamsResponseParams struct { // 参数值为枚举类型参数集合。 - InstanceEnumParam []*InstanceEnumParam `json:"InstanceEnumParam,omitempty" name:"InstanceEnumParam"` + InstanceEnumParam []*InstanceEnumParam `json:"InstanceEnumParam,omitnil" name:"InstanceEnumParam"` // 参数值为 Integer 类型参数集合。 - InstanceIntegerParam []*InstanceIntegerParam `json:"InstanceIntegerParam,omitempty" name:"InstanceIntegerParam"` + InstanceIntegerParam []*InstanceIntegerParam `json:"InstanceIntegerParam,omitnil" name:"InstanceIntegerParam"` // 参数值为 Text 类型的参数集合。 - InstanceTextParam []*InstanceTextParam `json:"InstanceTextParam,omitempty" name:"InstanceTextParam"` + InstanceTextParam []*InstanceTextParam `json:"InstanceTextParam,omitnil" name:"InstanceTextParam"` // 参数值为混合类型的参数集合。 - InstanceMultiParam []*InstanceMultiParam `json:"InstanceMultiParam,omitempty" name:"InstanceMultiParam"` + InstanceMultiParam []*InstanceMultiParam `json:"InstanceMultiParam,omitnil" name:"InstanceMultiParam"` // 当前实例支持修改的参数个数统计 如0 - TotalCount *uint64 `json:"TotalCount,omitempty" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeInstanceParamsResponse struct { @@ -2014,14 +2065,14 @@ func (r *DescribeInstanceParamsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSecurityGroupRequestParams struct { // 实例 ID。例如:cmgo-p8vn****。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } type DescribeSecurityGroupRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-p8vn****。 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } func (r *DescribeSecurityGroupRequest) ToJsonString() string { @@ -2046,10 +2097,10 @@ func (r *DescribeSecurityGroupRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSecurityGroupResponseParams struct { // 实例绑定的安全组信息。 - Groups []*SecurityGroup `json:"Groups,omitempty" name:"Groups"` + Groups []*SecurityGroup `json:"Groups,omitnil" name:"Groups"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeSecurityGroupResponse struct { @@ -2071,50 +2122,50 @@ func (r *DescribeSecurityGroupResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogPatternsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitempty" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 慢日志返回格式,可设置为json,不传默认返回原生慢日志格式。 - Format *string `json:"Format,omitempty" name:"Format"` + Format *string `json:"Format,omitnil" name:"Format"` } type DescribeSlowLogPatternsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitempty" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 慢日志返回格式,可设置为json,不传默认返回原生慢日志格式。 - Format *string `json:"Format,omitempty" name:"Format"` + Format *string `json:"Format,omitnil" name:"Format"` } func (r *DescribeSlowLogPatternsRequest) ToJsonString() string { @@ -2145,13 +2196,13 @@ func (r *DescribeSlowLogPatternsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogPatternsResponseParams struct { // 慢日志统计信息总数 - Count *uint64 `json:"Count,omitempty" name:"Count"` + Count *uint64 `json:"Count,omitnil" name:"Count"` // 慢日志统计信息 - SlowLogPatterns []*SlowLogPattern `json:"SlowLogPatterns,omitempty" name:"SlowLogPatterns"` + SlowLogPatterns []*SlowLogPattern `json:"SlowLogPatterns,omitnil" name:"SlowLogPatterns"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeSlowLogPatternsResponse struct { @@ -2173,50 +2224,50 @@ func (r *DescribeSlowLogPatternsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitempty" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 慢日志返回格式。默认返回原生慢日志格式,4.4及以上版本可设置为json。 - Format *string `json:"Format,omitempty" name:"Format"` + Format *string `json:"Format,omitnil" name:"Format"` } type DescribeSlowLogsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitempty" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitempty" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitempty" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitempty" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitempty" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil" name:"Limit"` // 慢日志返回格式。默认返回原生慢日志格式,4.4及以上版本可设置为json。 - Format *string `json:"Format,omitempty" name:"Format"` + Format *string `json:"Format,omitnil" name:"Format"` } func (r *DescribeSlowLogsRequest) ToJsonString() string { @@ -2247,14 +2298,14 @@ func (r *DescribeSlowLogsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogsResponseParams struct { // 慢日志总数 - Count *uint64 `json:"Count,omitempty" name:"Count"` + Count *uint64 `json:"Count,omitnil" name:"Count"` // 慢日志详情 // 注意:此字段可能返回 null,表示取不到有效值。 - SlowLogs []*string `json:"SlowLogs,omitempty" name:"SlowLogs"` + SlowLogs []*string `json:"SlowLogs,omitnil" name:"SlowLogs"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeSlowLogsResponse struct { @@ -2276,14 +2327,14 @@ func (r *DescribeSlowLogsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSpecInfoRequestParams struct { // 待查询可用区 - Zone *string `json:"Zone,omitempty" name:"Zone"` + Zone *string `json:"Zone,omitnil" name:"Zone"` } type DescribeSpecInfoRequest struct { *tchttp.BaseRequest // 待查询可用区 - Zone *string `json:"Zone,omitempty" name:"Zone"` + Zone *string `json:"Zone,omitnil" name:"Zone"` } func (r *DescribeSpecInfoRequest) ToJsonString() string { @@ -2308,10 +2359,10 @@ func (r *DescribeSpecInfoRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSpecInfoResponseParams struct { // 实例售卖规格信息列表 - SpecInfoList []*SpecificationInfo `json:"SpecInfoList,omitempty" name:"SpecInfoList"` + SpecInfoList []*SpecificationInfo `json:"SpecInfoList,omitnil" name:"SpecInfoList"` // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type DescribeSpecInfoResponse struct { @@ -2333,14 +2384,14 @@ func (r *DescribeSpecInfoResponse) FromJsonString(s string) error { // Predefined struct for user type FlushInstanceRouterConfigRequestParams struct { // 实例ID - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } type FlushInstanceRouterConfigRequest struct { *tchttp.BaseRequest // 实例ID - InstanceId *string `json:"InstanceId,omitempty" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` } func (r *FlushInstanceRouterConfigRequest) ToJsonString() string { @@ -2365,7 +2416,7 @@ func (r *FlushInstanceRouterConfigRequest) FromJsonString(s string) error { // Predefined struct for user type FlushInstanceRouterConfigResponseParams struct { // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitempty" name:"RequestId"` + RequestId *string `json:"RequestId,omitnil" name:"RequestId"` } type FlushInstanceRouterConfigResponse struct { @@ -2387,110 +2438,158 @@ func (r *FlushInstanceRouterConfigResponse) FromJsonString(s string) error { // Predefined struct for user type InquirePriceCreateDBInstancesRequestParams struct { // 实例所属区域及可用区信息。格式:ap-guangzhou-2。 - Zone *string `json:"Zone,omitempty" name:"Zone"` + Zone *string `json:"Zone,omitnil" name:"Zone"` - // 每个分片的主从节点数量。
取值范围:请通过接口DescribeSpecInfo查询,其返回的数据结构SpecItems中的参数MinNodeNum与MaxNodeNum分别对应其最小值与最大值。 - NodeNum *int64 `json:"NodeNum,omitempty" name:"NodeNum"` + // 每个分片的主从节点数量。 + // 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinNodeNum与MaxNodeNum分别对应其最小值与最大值。 + NodeNum *int64 `json:"NodeNum,omitnil" name:"NodeNum"` - // 实例内存大小。 - Memory *int64 `json:"Memory,omitempty" name:"Memory"` + // 实例内存大小。 + // - 单位:GB。 + // - 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数CPU与Memory分别对应CPU核数与内存规格。 + Memory *int64 `json:"Memory,omitnil" name:"Memory"` - // 实例硬盘大小。