diff --git a/.changelog/2692.txt b/.changelog/2692.txt new file mode 100644 index 0000000000..aed256357a --- /dev/null +++ b/.changelog/2692.txt @@ -0,0 +1,7 @@ +```release-note:new-resource +tencentcloud_mongodb_instance_transparent_data_encryption +``` + +```release-note:new-resource +tencentcloud_mongodb_instance_backup_rule +``` diff --git a/go.mod b/go.mod index c9a925ceae..c2bcb8c343 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.828 + github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.949 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.853 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.910 diff --git a/go.sum b/go.sum index 5a5abdab07..7d764b9386 100644 --- a/go.sum +++ b/go.sum @@ -983,6 +983,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mariadb v1.0.672 h1:sR3 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mariadb v1.0.672/go.mod h1:o3rBKhtfIJfw4BG22M0CQVLQAc0WqIsbyRI/EW52Ka0= 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/mongodb v1.0.949 h1:GZGGul+VBoU6Ont/8/S5Ot0wXVrSYBDtk79tFSdvWQ0= +github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.949/go.mod h1:75i/x1XqkqqqOgEBj31PdpnSeehsscgI5aj6aNgcsXE= 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/mps v1.0.853 h1:abGpWsAtEuF2QIYKm2m9/hv9OqyHwWNLsd5+67z86BE= @@ -1200,6 +1202,7 @@ golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRu golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/lint v0.0.0-20201208152925-83fdc39ff7b5/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20210508222113-6edffad5e616/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= diff --git a/tencentcloud/provider.go b/tencentcloud/provider.go index 1d70f214c7..fb25cf25cc 100644 --- a/tencentcloud/provider.go +++ b/tencentcloud/provider.go @@ -1217,6 +1217,8 @@ func Provider() *schema.Provider { "tencentcloud_mongodb_instance_account": mongodb.ResourceTencentCloudMongodbInstanceAccount(), "tencentcloud_mongodb_instance_backup": mongodb.ResourceTencentCloudMongodbInstanceBackup(), "tencentcloud_mongodb_instance_backup_download_task": mongodb.ResourceTencentCloudMongodbInstanceBackupDownloadTask(), + "tencentcloud_mongodb_instance_transparent_data_encryption": mongodb.ResourceTencentCloudMongodbInstanceTransparentDataEncryption(), + "tencentcloud_mongodb_instance_backup_rule": mongodb.ResourceTencentCloudMongodbInstanceBackupRule(), "tencentcloud_dayu_cc_http_policy": dayu.ResourceTencentCloudDayuCCHttpPolicy(), "tencentcloud_dayu_cc_https_policy": dayu.ResourceTencentCloudDayuCCHttpsPolicy(), "tencentcloud_dayu_ddos_policy": dayu.ResourceTencentCloudDayuDdosPolicy(), diff --git a/tencentcloud/provider.md b/tencentcloud/provider.md index ed5594657a..22a71d9c37 100644 --- a/tencentcloud/provider.md +++ b/tencentcloud/provider.md @@ -707,6 +707,8 @@ TencentDB for MongoDB(mongodb) tencentcloud_mongodb_standby_instance tencentcloud_mongodb_instance_account tencentcloud_mongodb_instance_backup + tencentcloud_mongodb_instance_transparent_data_encryption + tencentcloud_mongodb_instance_backup_rule TencentDB for MySQL(cdb) Data Source diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule.go b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule.go new file mode 100644 index 0000000000..fcaee9e6e2 --- /dev/null +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule.go @@ -0,0 +1,128 @@ +package mongodb + +import ( + "log" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + mongodb "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725" + tccommon "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/common" + "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper" + "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/ratelimit" +) + +func ResourceTencentCloudMongodbInstanceBackupRule() *schema.Resource { + return &schema.Resource{ + Create: resourceTencentCloudMongodbInstanceBackupRuleCreate, + Read: resourceTencentCloudMongodbInstanceBackupRuleRead, + Update: resourceTencentCloudMongodbInstanceBackupRuleUpdate, + Delete: resourceTencentCloudMongodbInstanceBackupRuleDelete, + Importer: &schema.ResourceImporter{ + State: schema.ImportStatePassthrough, + }, + Schema: map[string]*schema.Schema{ + "instance_id": { + Required: true, + ForceNew: true, + Type: schema.TypeString, + Description: "Instance id.", + }, + + "backup_method": { + Required: true, + Type: schema.TypeInt, + Description: "Set automatic backup method. Valid values:\n" + + "- 0: Logical backup;\n" + + "- 1: Physical backup;\n" + + "- 3: Snapshot backup (supported only in cloud disk version).", + }, + + "backup_time": { + Required: true, + Type: schema.TypeInt, + Description: "Set the start time for automatic backup. The value range is: [0,23]. For example, setting this parameter to 2 means that backup starts at 02:00.", + }, + + "backup_retention_period": { + Optional: true, + Computed: true, + Type: schema.TypeInt, + Description: "Specify the number of days to save backup data. The default is 7 days, and the support settings are 7, 30, 90, 180, 365.", + }, + }, + } +} + +func resourceTencentCloudMongodbInstanceBackupRuleCreate(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_backup_rule.create")() + defer tccommon.InconsistentCheck(d, meta)() + + logId := tccommon.GetLogId(tccommon.ContextNil) + var ( + request = mongodb.NewSetBackupRulesRequest() + ) + instanceId := d.Get("instance_id").(string) + request.InstanceId = helper.String(instanceId) + + if v, _ := d.GetOk("backup_method"); v != nil { + request.BackupMethod = helper.IntUint64(v.(int)) + } + + if v, _ := d.GetOk("backup_time"); v != nil { + request.BackupTime = helper.IntUint64(v.(int)) + } + + if v, ok := d.GetOkExists("backup_retention_period"); ok { + request.BackupRetentionPeriod = helper.IntUint64(v.(int)) + } + + err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { + result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseMongodbClient().SetBackupRules(request) + if e != nil { + return tccommon.RetryError(e) + } else { + log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), result.ToJsonString()) + } + return nil + }) + if err != nil { + log.Printf("[CRITAL]%s operate mongodb backupRule failed, reason:%+v", logId, err) + return err + } + + d.SetId(instanceId) + + return resourceTencentCloudMongodbInstanceBackupRuleRead(d, meta) +} + +func resourceTencentCloudMongodbInstanceBackupRuleRead(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_backup_rule.read")() + defer tccommon.InconsistentCheck(d, meta)() + + request := mongodb.NewDescribeBackupRulesRequest() + request.InstanceId = helper.String(d.Id()) + ratelimit.Check(request.GetAction()) + response, err := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseMongodbClient().DescribeBackupRules(request) + if err != nil { + return err + } + _ = d.Set("instance_id", d.Id()) + _ = d.Set("backup_method", response.Response.BackupMethod) + _ = d.Set("backup_time", response.Response.BackupTime) + _ = d.Set("backup_retention_period", response.Response.BackupSaveTime) + return nil +} + +func resourceTencentCloudMongodbInstanceBackupRuleUpdate(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_transparent_data_encryption.update")() + defer tccommon.InconsistentCheck(d, meta)() + + return resourceTencentCloudMongodbInstanceBackupRuleCreate(d, meta) +} + +func resourceTencentCloudMongodbInstanceBackupRuleDelete(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_backup_rule.delete")() + defer tccommon.InconsistentCheck(d, meta)() + + return nil +} diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule.md b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule.md new file mode 100644 index 0000000000..7562f58619 --- /dev/null +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule.md @@ -0,0 +1,19 @@ +Provides a resource to create mongodb backup rule + +Example Usage + +```hcl +resource "tencentcloud_mongodb_backup_rule" "backup_rule" { + instance_id = "cmgo-xxxxxx" + backup_method = 0 + backup_time = 10 +} +``` + +Import + +mongodb backup_rule can be imported using the id, e.g. + +``` +terraform import tencentcloud_mongodb_backup_rule.backup_rule ${instanceId} +``` \ No newline at end of file diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule_test.go b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule_test.go new file mode 100644 index 0000000000..9ed4e351aa --- /dev/null +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_backup_rule_test.go @@ -0,0 +1,109 @@ +package mongodb_test + +import ( + "testing" + + tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" +) + +func TestAccTencentCloudMongodbInstanceBackupRuleResource_basic(t *testing.T) { + t.Parallel() + resource.Test(t, resource.TestCase{ + PreCheck: func() { + tcacctest.AccPreCheck(t) + }, + Providers: tcacctest.AccProviders, + Steps: []resource.TestStep{ + { + Config: testAccMongodbInstanceBackupRule, + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttrSet("tencentcloud_mongodb_instance_backup_rule.backup_rule", "id"), + resource.TestCheckResourceAttrSet("tencentcloud_mongodb_instance_backup_rule.backup_rule", "instance_id"), + resource.TestCheckResourceAttrSet("tencentcloud_mongodb_instance_backup_rule.backup_rule", "backup_method"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance_backup_rule.backup_rule", "backup_time", "10"), + resource.TestCheckResourceAttrSet("tencentcloud_mongodb_instance_backup_rule.backup_rule", "backup_retention_period"), + ), + }, + { + Config: testAccMongodbInstanceBackupRuleUpdate, + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance_backup_rule.backup_rule", "backup_time", "14"), + ), + }, + { + ResourceName: "tencentcloud_mongodb_instance_backup_rule.backup_rule", + ImportState: true, + }, + }, + }) +} + +const testAccMongodbInstanceBackupRule = tcacctest.DefaultMongoDBSpec + ` +resource "tencentcloud_vpc" "vpc" { + name = "mongodb-instance-vpc" + cidr_block = "10.0.0.0/16" + } + +resource "tencentcloud_subnet" "subnet" { + vpc_id = tencentcloud_vpc.vpc.id + name = "mongodb-instance-subnet" + cidr_block = "10.0.0.0/16" + availability_zone = "ap-guangzhou-3" +} + +resource "tencentcloud_mongodb_instance" "mongodb" { + instance_name = "tf-mongodb-encryption-test" + memory = local.memory + volume = local.volume + 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 = "test1234" + vpc_id = tencentcloud_vpc.vpc.id + subnet_id = tencentcloud_subnet.subnet.id +} + +resource "tencentcloud_mongodb_instance_backup_rule" "backup_rule" { + instance_id = tencentcloud_mongodb_instance.mongodb.id + backup_method = 0 + backup_time = 10 +} +` + +const testAccMongodbInstanceBackupRuleUpdate = tcacctest.DefaultMongoDBSpec + ` +resource "tencentcloud_vpc" "vpc" { + name = "mongodb-instance-vpc" + cidr_block = "10.0.0.0/16" + } + +resource "tencentcloud_subnet" "subnet" { + vpc_id = tencentcloud_vpc.vpc.id + name = "mongodb-instance-subnet" + cidr_block = "10.0.0.0/16" + availability_zone = "ap-guangzhou-3" +} + +resource "tencentcloud_mongodb_instance" "mongodb" { + instance_name = "tf-mongodb-encryption-test" + memory = local.memory + volume = local.volume + 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 = "test1234" + vpc_id = tencentcloud_vpc.vpc.id + subnet_id = tencentcloud_subnet.subnet.id +} + +resource "tencentcloud_mongodb_instance_backup_rule" "backup_rule" { + instance_id = tencentcloud_mongodb_instance.mongodb.id + backup_method = 0 + backup_time = 14 +} +` diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption.go b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption.go new file mode 100644 index 0000000000..166acb6e1d --- /dev/null +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption.go @@ -0,0 +1,196 @@ +package mongodb + +import ( + "context" + "fmt" + "log" + "strconv" + + tccommon "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/common" + "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/ratelimit" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + mongodb "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725" + + "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper" +) + +func ResourceTencentCloudMongodbInstanceTransparentDataEncryption() *schema.Resource { + return &schema.Resource{ + Create: resourceTencentCloudMongodbInstanceTransparentDataEncryptionCreate, + Read: resourceTencentCloudMongodbInstanceTransparentDataEncryptionRead, + Update: resourceTencentCloudMongodbInstanceTransparentDataEncryptionUpdate, + Delete: resourceTencentCloudMongodbInstanceTransparentDataEncryptionDelete, + Importer: &schema.ResourceImporter{ + State: schema.ImportStatePassthrough, + }, + Schema: map[string]*schema.Schema{ + "instance_id": { + Required: true, + ForceNew: true, + Type: schema.TypeString, + Description: "Instance ID, for example: cmgo-p8vn ***. Currently supported general versions include: 4.4 and 5.0, but the cloud disk version is not currently supported.", + }, + + "kms_region": { + Required: true, + Type: schema.TypeString, + Description: "The region where the Key Management Service (KMS) serves, such as ap-shanghai.", + }, + + "key_id": { + Optional: true, + Type: schema.TypeString, + Description: "Key ID. If this parameter is not set and the specific key ID is not specified, Tencent Cloud will automatically generate the key and this key will be beyond the control of Terraform.", + }, + "transparent_data_encryption_status": { + Computed: true, + Type: schema.TypeString, + Description: "Represents whether transparent encryption is turned on. Valid values:\n" + + "- close: Not opened;\n" + + "- open: It has been opened.", + }, + "key_info_list": { + Computed: true, + Type: schema.TypeList, + Description: "List of bound keys.", + Elem: &schema.Resource{ + Schema: map[string]*schema.Schema{ + "key_id": { + Type: schema.TypeString, + Computed: true, + Description: "Master Key ID.", + }, + "key_name": { + Type: schema.TypeString, + Computed: true, + Description: "Master key name.", + }, + "create_time": { + Type: schema.TypeString, + Computed: true, + Description: "Instance and key binding time.", + }, + "status": { + Type: schema.TypeString, + Computed: true, + Description: "Key status.", + }, + "key_usage": { + Type: schema.TypeString, + Computed: true, + Description: "Purpose of the key.", + }, + "key_origin": { + Type: schema.TypeString, + Computed: true, + Description: "Key origin.", + }, + }, + }, + }, + }, + } +} + +func resourceTencentCloudMongodbInstanceTransparentDataEncryptionCreate(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_transparent_data_encryption.create")() + defer tccommon.InconsistentCheck(d, meta)() + + logId := tccommon.GetLogId(tccommon.ContextNil) + + var ( + request = mongodb.NewEnableTransparentDataEncryptionRequest() + response = mongodb.NewEnableTransparentDataEncryptionResponse() + ) + instanceId := d.Get("instance_id").(string) + request.InstanceId = helper.String(instanceId) + request.KmsRegion = helper.String(d.Get("kms_region").(string)) + + if v, ok := d.GetOk("key_id"); ok { + request.KeyId = helper.String(v.(string)) + } + + err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError { + result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseMongodbClient().EnableTransparentDataEncryption(request) + if e != nil { + return tccommon.RetryError(e) + } else { + log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), result.ToJsonString()) + } + response = result + return nil + }) + if err != nil { + log.Printf("[CRITAL]%s enable transparent data encryption failed, reason:%+v", logId, err) + return nil + } + + flowId := *response.Response.FlowId + flowIdString := strconv.FormatInt(flowId, 10) + + ctx := context.WithValue(context.TODO(), tccommon.LogIdKey, logId) + + service := MongodbService{client: meta.(tccommon.ProviderMeta).GetAPIV3Conn()} + + timeout := d.Timeout(schema.TimeoutCreate) + if response != nil && response.Response != nil { + if err = service.DescribeAsyncRequestInfo(ctx, flowIdString, timeout); err != nil { + return err + } + } + + d.SetId(instanceId) + + return resourceTencentCloudMongodbInstanceTransparentDataEncryptionRead(d, meta) +} + +func resourceTencentCloudMongodbInstanceTransparentDataEncryptionRead(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_transparent_data_encryption.read")() + defer tccommon.InconsistentCheck(d, meta)() + request := mongodb.NewDescribeTransparentDataEncryptionStatusRequest() + request.InstanceId = helper.String(d.Id()) + ratelimit.Check(request.GetAction()) + response, err := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseMongodbClient().DescribeTransparentDataEncryptionStatus(request) + if err != nil { + return err + } + _ = d.Set("transparent_data_encryption_status", response.Response.TransparentDataEncryptionStatus) + if response.Response != nil && len(response.Response.KeyInfoList) > 0 { + kmsInfoList := make([]map[string]interface{}, 0) + for _, kmsInfoDetail := range response.Response.KeyInfoList { + kmsInfoDetailMap := make(map[string]interface{}) + kmsInfoDetailMap["key_id"] = kmsInfoDetail.KeyId + kmsInfoDetailMap["key_name"] = kmsInfoDetail.KeyName + kmsInfoDetailMap["create_time"] = kmsInfoDetail.CreateTime + kmsInfoDetailMap["status"] = kmsInfoDetail.Status + kmsInfoDetailMap["key_usage"] = kmsInfoDetail.KeyUsage + kmsInfoDetailMap["key_origin"] = kmsInfoDetail.KeyOrigin + kmsInfoList = append(kmsInfoList, kmsInfoDetailMap) + } + _ = d.Set("key_info_list", kmsInfoList) + } + + return nil +} + +func resourceTencentCloudMongodbInstanceTransparentDataEncryptionUpdate(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_transparent_data_encryption.update")() + defer tccommon.InconsistentCheck(d, meta)() + + immutableFields := []string{"instance_id", "kms_region", "key_id"} + for _, f := range immutableFields { + if d.HasChange(f) { + return fmt.Errorf("cannot update argument `%s`", f) + } + } + return resourceTencentCloudMongodbInstanceTransparentDataEncryptionRead(d, meta) +} + +func resourceTencentCloudMongodbInstanceTransparentDataEncryptionDelete(d *schema.ResourceData, meta interface{}) error { + defer tccommon.LogElapsed("resource.tencentcloud_mongodb_instance_transparent_data_encryption.delete")() + defer tccommon.InconsistentCheck(d, meta)() + + return nil +} diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption.md b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption.md new file mode 100644 index 0000000000..9fdbd47720 --- /dev/null +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption.md @@ -0,0 +1,18 @@ +Provides a resource to enable mongodb transparent data encryption + +Example Usage + +```hcl +resource "tencentcloud_mongodb_instance_transparent_data_encryption" "encryption" { + instance_id = "cmgo-xxxxxx" + kms_region = "ap-guangzhou" +} +``` + +Import + +mongodb transparent data encryption can be imported using the id, e.g. + +``` +terraform import tencentcloud_mongodb_instance_transparent_data_encryption.encryption ${instanceId} +``` \ No newline at end of file diff --git a/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption_test.go b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption_test.go new file mode 100644 index 0000000000..39144a4b1f --- /dev/null +++ b/tencentcloud/services/mongodb/resource_tc_mongodb_instance_transparent_data_encryption_test.go @@ -0,0 +1,66 @@ +package mongodb_test + +import ( + "testing" + + tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest" + + "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource" +) + +func TestAccTencentCloudMongodbInstanceTransparentDataEncryptionResource_basic(t *testing.T) { + t.Parallel() + resource.Test(t, resource.TestCase{ + PreCheck: func() { + tcacctest.AccPreCheck(t) + }, + Providers: tcacctest.AccProviders, + Steps: []resource.TestStep{ + { + Config: testAccMongodbInstanceTransparentDataEncryption, + Check: resource.ComposeTestCheckFunc( + resource.TestCheckResourceAttrSet("tencentcloud_mongodb_instance_transparent_data_encryption.encryption", "id"), + resource.TestCheckResourceAttr("tencentcloud_mongodb_instance_transparent_data_encryption.encryption", "transparent_data_encryption_status", "open"), + resource.TestCheckResourceAttrSet("tencentcloud_mongodb_instance_transparent_data_encryption.encryption", "key_info_list.#"), + ), + }, + { + ResourceName: "tencentcloud_mongodb_instance_transparent_data_encryption.encryption", + ImportState: true, + }, + }, + }) +} + +const testAccMongodbInstanceTransparentDataEncryption = tcacctest.DefaultMongoDBSpec + ` +resource "tencentcloud_vpc" "vpc" { + name = "mongodb-instance-vpc" + cidr_block = "10.0.0.0/16" + } + +resource "tencentcloud_subnet" "subnet" { + vpc_id = tencentcloud_vpc.vpc.id + name = "mongodb-instance-subnet" + cidr_block = "10.0.0.0/16" + availability_zone = "ap-guangzhou-3" +} + +resource "tencentcloud_mongodb_instance" "mongodb" { + instance_name = "tf-mongodb-encryption-test" + memory = local.memory + volume = local.volume + 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 = "test1234" + vpc_id = tencentcloud_vpc.vpc.id + subnet_id = tencentcloud_subnet.subnet.id +} + +resource "tencentcloud_mongodb_instance_transparent_data_encryption" "encryption" { + instance_id = tencentcloud_mongodb_instance.mongodb.id + kms_region = "ap-guangzhou" +} +` 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 32de80c67e..d8eb1972d6 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 30fc55fb2f..69f55da8cb 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 @@ -685,6 +685,57 @@ func (c *Client) DescribeBackupDownloadTaskWithContext(ctx context.Context, requ return } +func NewDescribeBackupRulesRequest() (request *DescribeBackupRulesRequest) { + request = &DescribeBackupRulesRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "DescribeBackupRules") + + + return +} + +func NewDescribeBackupRulesResponse() (response *DescribeBackupRulesResponse) { + response = &DescribeBackupRulesResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// DescribeBackupRules +// 本接口(DescribeBackupRules)用于获取实例自动备份配置信息。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" +func (c *Client) DescribeBackupRules(request *DescribeBackupRulesRequest) (response *DescribeBackupRulesResponse, err error) { + return c.DescribeBackupRulesWithContext(context.Background(), request) +} + +// DescribeBackupRules +// 本接口(DescribeBackupRules)用于获取实例自动备份配置信息。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" +func (c *Client) DescribeBackupRulesWithContext(ctx context.Context, request *DescribeBackupRulesRequest) (response *DescribeBackupRulesResponse, err error) { + if request == nil { + request = NewDescribeBackupRulesRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeBackupRules require credential") + } + + request.SetContext(ctx) + + response = NewDescribeBackupRulesResponse() + err = c.Send(request, response) + return +} + func NewDescribeClientConnectionsRequest() (request *DescribeClientConnectionsRequest) { request = &DescribeClientConnectionsRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1314,6 +1365,177 @@ func (c *Client) DescribeSpecInfoWithContext(ctx context.Context, request *Descr return } +func NewDescribeTransparentDataEncryptionStatusRequest() (request *DescribeTransparentDataEncryptionStatusRequest) { + request = &DescribeTransparentDataEncryptionStatusRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "DescribeTransparentDataEncryptionStatus") + + + return +} + +func NewDescribeTransparentDataEncryptionStatusResponse() (response *DescribeTransparentDataEncryptionStatusResponse) { + response = &DescribeTransparentDataEncryptionStatusResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// DescribeTransparentDataEncryptionStatus +// 获取实例透明加密的开启状态 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +func (c *Client) DescribeTransparentDataEncryptionStatus(request *DescribeTransparentDataEncryptionStatusRequest) (response *DescribeTransparentDataEncryptionStatusResponse, err error) { + return c.DescribeTransparentDataEncryptionStatusWithContext(context.Background(), request) +} + +// DescribeTransparentDataEncryptionStatus +// 获取实例透明加密的开启状态 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +func (c *Client) DescribeTransparentDataEncryptionStatusWithContext(ctx context.Context, request *DescribeTransparentDataEncryptionStatusRequest) (response *DescribeTransparentDataEncryptionStatusResponse, err error) { + if request == nil { + request = NewDescribeTransparentDataEncryptionStatusRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("DescribeTransparentDataEncryptionStatus require credential") + } + + request.SetContext(ctx) + + response = NewDescribeTransparentDataEncryptionStatusResponse() + err = c.Send(request, response) + return +} + +func NewEnableTransparentDataEncryptionRequest() (request *EnableTransparentDataEncryptionRequest) { + request = &EnableTransparentDataEncryptionRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "EnableTransparentDataEncryption") + + + return +} + +func NewEnableTransparentDataEncryptionResponse() (response *EnableTransparentDataEncryptionResponse) { + response = &EnableTransparentDataEncryptionResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// EnableTransparentDataEncryption +// 本接口(EnableTransparentDataEncryption)用于开启云数据库 MongoDB 的透明加密能力。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +func (c *Client) EnableTransparentDataEncryption(request *EnableTransparentDataEncryptionRequest) (response *EnableTransparentDataEncryptionResponse, err error) { + return c.EnableTransparentDataEncryptionWithContext(context.Background(), request) +} + +// EnableTransparentDataEncryption +// 本接口(EnableTransparentDataEncryption)用于开启云数据库 MongoDB 的透明加密能力。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +func (c *Client) EnableTransparentDataEncryptionWithContext(ctx context.Context, request *EnableTransparentDataEncryptionRequest) (response *EnableTransparentDataEncryptionResponse, err error) { + if request == nil { + request = NewEnableTransparentDataEncryptionRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("EnableTransparentDataEncryption require credential") + } + + request.SetContext(ctx) + + response = NewEnableTransparentDataEncryptionResponse() + err = c.Send(request, response) + return +} + +func NewFlashBackDBInstanceRequest() (request *FlashBackDBInstanceRequest) { + request = &FlashBackDBInstanceRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "FlashBackDBInstance") + + + return +} + +func NewFlashBackDBInstanceResponse() (response *FlashBackDBInstanceResponse) { + response = &FlashBackDBInstanceResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// FlashBackDBInstance +// 该接口用于发起按 Key 闪回任务,依据数据的闪回 Key(默认为 id)对数据进行极速回档,快速恢复业务。 +// +// **说明:按 Key 闪回于2023年09月11日正式进行公测,在此期间,该接口仅对公测用户开放。** +// +// 可能返回的错误码: +// FAILEDOPERATION_FLASHBACKBYKEYNOTOPEN = "FailedOperation.FlashbackByKeyNotOpen" +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER = "InvalidParameter" +// INVALIDPARAMETER_PARAMETERSNIL = "InvalidParameter.ParametersNil" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +// UNSUPPORTEDOPERATION_KERNELVERSIONNOTSUPPORT = "UnsupportedOperation.KernelVersionNotSupport" +// UNSUPPORTEDOPERATION_VERSIONNOTSUPPORT = "UnsupportedOperation.VersionNotSupport" +func (c *Client) FlashBackDBInstance(request *FlashBackDBInstanceRequest) (response *FlashBackDBInstanceResponse, err error) { + return c.FlashBackDBInstanceWithContext(context.Background(), request) +} + +// FlashBackDBInstance +// 该接口用于发起按 Key 闪回任务,依据数据的闪回 Key(默认为 id)对数据进行极速回档,快速恢复业务。 +// +// **说明:按 Key 闪回于2023年09月11日正式进行公测,在此期间,该接口仅对公测用户开放。** +// +// 可能返回的错误码: +// FAILEDOPERATION_FLASHBACKBYKEYNOTOPEN = "FailedOperation.FlashbackByKeyNotOpen" +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER = "InvalidParameter" +// INVALIDPARAMETER_PARAMETERSNIL = "InvalidParameter.ParametersNil" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +// UNSUPPORTEDOPERATION_KERNELVERSIONNOTSUPPORT = "UnsupportedOperation.KernelVersionNotSupport" +// UNSUPPORTEDOPERATION_VERSIONNOTSUPPORT = "UnsupportedOperation.VersionNotSupport" +func (c *Client) FlashBackDBInstanceWithContext(ctx context.Context, request *FlashBackDBInstanceRequest) (response *FlashBackDBInstanceResponse, err error) { + if request == nil { + request = NewFlashBackDBInstanceRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("FlashBackDBInstance require credential") + } + + request.SetContext(ctx) + + response = NewFlashBackDBInstanceResponse() + err = c.Send(request, response) + return +} + func NewFlushInstanceRouterConfigRequest() (request *FlushInstanceRouterConfigRequest) { request = &FlushInstanceRouterConfigRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -1678,9 +1900,10 @@ func NewModifyDBInstanceNetworkAddressResponse() (response *ModifyDBInstanceNetw } // ModifyDBInstanceNetworkAddress -// 本接口(ModifyDBInstanceNetworkAddress)用于修改云数据库实例的网络信息,可进行基础网络转VPC网络和VPC网络之间的变换。 +// 本接口(ModifyDBInstanceNetworkAddress)用于修改云数据库实例的网络信息,支持基础网络切换为私有网络、私有网络切换私有网络。 // // 可能返回的错误码: +// FAILEDOPERATION_NOTALLOWMODIFYADDRAFTEROPENWANSERVICE = "FailedOperation.NotAllowModifyAddrAfterOpenWanService" // INTERNALERROR = "InternalError" // INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" // INVALIDPARAMETER = "InvalidParameter" @@ -1692,9 +1915,10 @@ func (c *Client) ModifyDBInstanceNetworkAddress(request *ModifyDBInstanceNetwork } // ModifyDBInstanceNetworkAddress -// 本接口(ModifyDBInstanceNetworkAddress)用于修改云数据库实例的网络信息,可进行基础网络转VPC网络和VPC网络之间的变换。 +// 本接口(ModifyDBInstanceNetworkAddress)用于修改云数据库实例的网络信息,支持基础网络切换为私有网络、私有网络切换私有网络。 // // 可能返回的错误码: +// FAILEDOPERATION_NOTALLOWMODIFYADDRAFTEROPENWANSERVICE = "FailedOperation.NotAllowModifyAddrAfterOpenWanService" // INTERNALERROR = "InternalError" // INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" // INVALIDPARAMETER = "InvalidParameter" @@ -1843,6 +2067,69 @@ func (c *Client) ModifyDBInstanceSpecWithContext(ctx context.Context, request *M return } +func NewModifyInstanceParamsRequest() (request *ModifyInstanceParamsRequest) { + request = &ModifyInstanceParamsRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "ModifyInstanceParams") + + + return +} + +func NewModifyInstanceParamsResponse() (response *ModifyInstanceParamsResponse) { + response = &ModifyInstanceParamsResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// ModifyInstanceParams +// 本接口(ModifyInstanceParams)用于修改mongoDB实例的参数配置。 +// +// 可能返回的错误码: +// FAILEDOPERATION = "FailedOperation" +// FAILEDOPERATION_OPERATIONNOTALLOWEDININSTANCELOCKING = "FailedOperation.OperationNotAllowedInInstanceLocking" +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER_MODIFYMONGODBPARAMS = "InvalidParameter.ModifyMongodbParams" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" +// INVALIDPARAMETERVALUE_MODIFYMONGODBPARAMS = "InvalidParameterValue.ModifyMongodbParams" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +// RESOURCENOTFOUND = "ResourceNotFound" +func (c *Client) ModifyInstanceParams(request *ModifyInstanceParamsRequest) (response *ModifyInstanceParamsResponse, err error) { + return c.ModifyInstanceParamsWithContext(context.Background(), request) +} + +// ModifyInstanceParams +// 本接口(ModifyInstanceParams)用于修改mongoDB实例的参数配置。 +// +// 可能返回的错误码: +// FAILEDOPERATION = "FailedOperation" +// FAILEDOPERATION_OPERATIONNOTALLOWEDININSTANCELOCKING = "FailedOperation.OperationNotAllowedInInstanceLocking" +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER_MODIFYMONGODBPARAMS = "InvalidParameter.ModifyMongodbParams" +// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" +// INVALIDPARAMETERVALUE_MODIFYMONGODBPARAMS = "InvalidParameterValue.ModifyMongodbParams" +// INVALIDPARAMETERVALUE_NOTFOUNDINSTANCE = "InvalidParameterValue.NotFoundInstance" +// RESOURCENOTFOUND = "ResourceNotFound" +func (c *Client) ModifyInstanceParamsWithContext(ctx context.Context, request *ModifyInstanceParamsRequest) (response *ModifyInstanceParamsResponse, err error) { + if request == nil { + request = NewModifyInstanceParamsRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("ModifyInstanceParams require credential") + } + + request.SetContext(ctx) + + response = NewModifyInstanceParamsResponse() + err = c.Send(request, response) + return +} + func NewOfflineIsolatedDBInstanceRequest() (request *OfflineIsolatedDBInstanceRequest) { request = &OfflineIsolatedDBInstanceRequest{ BaseRequest: &tchttp.BaseRequest{}, @@ -2132,6 +2419,112 @@ func (c *Client) SetAccountUserPrivilegeWithContext(ctx context.Context, request return } +func NewSetBackupRulesRequest() (request *SetBackupRulesRequest) { + request = &SetBackupRulesRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "SetBackupRules") + + + return +} + +func NewSetBackupRulesResponse() (response *SetBackupRulesResponse) { + response = &SetBackupRulesResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// SetBackupRules +// 本接口(SetBackupRules)用于设置 MongoDB 云数据库的自动备份规则。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER = "InvalidParameter" +// INVALIDPARAMETERVALUE_CHECKAPPIDFAILED = "InvalidParameterValue.CheckAppIdFailed" +func (c *Client) SetBackupRules(request *SetBackupRulesRequest) (response *SetBackupRulesResponse, err error) { + return c.SetBackupRulesWithContext(context.Background(), request) +} + +// SetBackupRules +// 本接口(SetBackupRules)用于设置 MongoDB 云数据库的自动备份规则。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INVALIDPARAMETER = "InvalidParameter" +// INVALIDPARAMETERVALUE_CHECKAPPIDFAILED = "InvalidParameterValue.CheckAppIdFailed" +func (c *Client) SetBackupRulesWithContext(ctx context.Context, request *SetBackupRulesRequest) (response *SetBackupRulesResponse, err error) { + if request == nil { + request = NewSetBackupRulesRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("SetBackupRules require credential") + } + + request.SetContext(ctx) + + response = NewSetBackupRulesResponse() + err = c.Send(request, response) + return +} + +func NewSetInstanceMaintenanceRequest() (request *SetInstanceMaintenanceRequest) { + request = &SetInstanceMaintenanceRequest{ + BaseRequest: &tchttp.BaseRequest{}, + } + + request.Init().WithApiInfo("mongodb", APIVersion, "SetInstanceMaintenance") + + + return +} + +func NewSetInstanceMaintenanceResponse() (response *SetInstanceMaintenanceResponse) { + response = &SetInstanceMaintenanceResponse{ + BaseResponse: &tchttp.BaseResponse{}, + } + return + +} + +// SetInstanceMaintenance +// 本接口(SetInstanceMaintenance ) 用于设置实例维护时间窗。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" +// INVALIDPARAMETER = "InvalidParameter" +func (c *Client) SetInstanceMaintenance(request *SetInstanceMaintenanceRequest) (response *SetInstanceMaintenanceResponse, err error) { + return c.SetInstanceMaintenanceWithContext(context.Background(), request) +} + +// SetInstanceMaintenance +// 本接口(SetInstanceMaintenance ) 用于设置实例维护时间窗。 +// +// 可能返回的错误码: +// INTERNALERROR = "InternalError" +// INTERNALERROR_CHECKAPPIDFAILED = "InternalError.CheckAppIdFailed" +// INVALIDPARAMETER = "InvalidParameter" +func (c *Client) SetInstanceMaintenanceWithContext(ctx context.Context, request *SetInstanceMaintenanceRequest) (response *SetInstanceMaintenanceResponse, err error) { + if request == nil { + request = NewSetInstanceMaintenanceRequest() + } + + if c.GetCredential() == nil { + return nil, errors.New("SetInstanceMaintenance require credential") + } + + request.SetContext(ctx) + + response = NewSetInstanceMaintenanceResponse() + err = c.Send(request, response) + return +} + func NewTerminateDBInstancesRequest() (request *TerminateDBInstancesRequest) { request = &TerminateDBInstancesRequest{ BaseRequest: &tchttp.BaseRequest{}, diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/errors.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/errors.go index af4c02703d..81e47e396a 100644 --- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/errors.go +++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725/errors.go @@ -23,9 +23,18 @@ const ( // 操作失败。 FAILEDOPERATION = "FailedOperation" + // 按key回档未开启 + FAILEDOPERATION_FLASHBACKBYKEYNOTOPEN = "FailedOperation.FlashbackByKeyNotOpen" + // 内核响应超时。 FAILEDOPERATION_KERNELRESPONSETIMEOUT = "FailedOperation.KernelResponseTimeout" + // 当前实例已开启外网访问。 + FAILEDOPERATION_NOTALLOWMODIFYADDRAFTEROPENWANSERVICE = "FailedOperation.NotAllowModifyAddrAfterOpenWanService" + + // 实例锁定中不允许操作。 + FAILEDOPERATION_OPERATIONNOTALLOWEDININSTANCELOCKING = "FailedOperation.OperationNotAllowedInInstanceLocking" + // 内部错误。 INTERNALERROR = "InternalError" @@ -47,7 +56,13 @@ const ( // 无效Vip信息。 INVALIDPARAMETER_INVALIDVIP = "InvalidParameter.InvalidVip" - // 当前子帐号无权执行该操作。 + // 参数名有误 + INVALIDPARAMETER_MODIFYMONGODBPARAMS = "InvalidParameter.ModifyMongodbParams" + + // 接口参数为空。 + INVALIDPARAMETER_PARAMETERSNIL = "InvalidParameter.ParametersNil" + + // 当前子账号无权执行该操作。 INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied" // 可用区已关闭售卖。 @@ -92,6 +107,9 @@ const ( // 内存和磁盘必须同时升配或降配。 INVALIDPARAMETERVALUE_MODIFYMODEERROR = "InvalidParameterValue.ModifyModeError" + // 参数值有误。 + INVALIDPARAMETERVALUE_MODIFYMONGODBPARAMS = "InvalidParameterValue.ModifyMongodbParams" + // 实例版本错误。 INVALIDPARAMETERVALUE_MONGOVERSIONERROR = "InvalidParameterValue.MongoVersionError" @@ -188,6 +206,9 @@ const ( // 操作不支持。 UNSUPPORTEDOPERATION = "UnsupportedOperation" + // 内核版本不支持。 + UNSUPPORTEDOPERATION_KERNELVERSIONNOTSUPPORT = "UnsupportedOperation.KernelVersionNotSupport" + // 当前版本不支持该操作。 UNSUPPORTEDOPERATION_VERSIONNOTSUPPORT = "UnsupportedOperation.VersionNotSupport" ) 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 7e580dea26..9e3effe781 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 @@ -25,31 +25,31 @@ type AddNodeList struct { // - SECONDARY:Mongod 节点。 // - READONLY:只读节点。 // - MONGOS:Mongos 节点。 - Role *string `json:"Role,omitnil" name:"Role"` + Role *string `json:"Role,omitnil,omitempty" name:"Role"` // 节点所对应的可用区。 // - 单可用区,所有节点在同一可用区。 // - 多可用区:当前标准规格是三可用区分布,主从节点不在同一可用区,需注意配置新增节点对应的可用区,且新增后必须满足任意2个可用区节点数大于第3个可用区原则。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` } // Predefined struct for user type AssignProjectRequestParams struct { // 实例ID列表,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 项目ID,用户已创建项目的唯一ID,非自定义 - ProjectId *uint64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *uint64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` } type AssignProjectRequest struct { *tchttp.BaseRequest // 实例ID列表,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 项目ID,用户已创建项目的唯一ID,非自定义 - ProjectId *uint64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *uint64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` } func (r *AssignProjectRequest) ToJsonString() string { @@ -75,10 +75,10 @@ func (r *AssignProjectRequest) FromJsonString(s string) error { // Predefined struct for user type AssignProjectResponseParams struct { // 返回的异步任务ID列表 - FlowIds []*uint64 `json:"FlowIds,omitnil" name:"FlowIds"` + FlowIds []*uint64 `json:"FlowIds,omitnil,omitempty" name:"FlowIds"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type AssignProjectResponse struct { @@ -99,139 +99,149 @@ func (r *AssignProjectResponse) FromJsonString(s string) error { type Auth struct { // 当前账号具有的权限信息。 - Mask *int64 `json:"Mask,omitnil" name:"Mask"` + Mask *int64 `json:"Mask,omitnil,omitempty" name:"Mask"` // 指具有当前账号权限的数据库名。 // - NameSpace *string `json:"NameSpace,omitnil" name:"NameSpace"` + NameSpace *string `json:"NameSpace,omitnil,omitempty" name:"NameSpace"` } type BackupDownloadTask struct { // 任务创建时间 - CreateTime *string `json:"CreateTime,omitnil" name:"CreateTime"` + CreateTime *string `json:"CreateTime,omitnil,omitempty" name:"CreateTime"` // 备份文件名 - BackupName *string `json:"BackupName,omitnil" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil,omitempty" name:"BackupName"` // 分片名称 - ReplicaSetId *string `json:"ReplicaSetId,omitnil" name:"ReplicaSetId"` + ReplicaSetId *string `json:"ReplicaSetId,omitnil,omitempty" name:"ReplicaSetId"` // 备份数据大小,单位为字节 - BackupSize *int64 `json:"BackupSize,omitnil" name:"BackupSize"` + BackupSize *int64 `json:"BackupSize,omitnil,omitempty" name:"BackupSize"` // 任务状态。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试 - Status *int64 `json:"Status,omitnil" name:"Status"` + Status *int64 `json:"Status,omitnil,omitempty" name:"Status"` // 任务进度百分比 - Percent *int64 `json:"Percent,omitnil" name:"Percent"` + Percent *int64 `json:"Percent,omitnil,omitempty" name:"Percent"` // 耗时,单位为秒 - TimeSpend *int64 `json:"TimeSpend,omitnil" name:"TimeSpend"` + TimeSpend *int64 `json:"TimeSpend,omitnil,omitempty" name:"TimeSpend"` // 备份数据下载链接 - Url *string `json:"Url,omitnil" name:"Url"` + Url *string `json:"Url,omitnil,omitempty" name:"Url"` // 备份文件备份类型,0-逻辑备份,1-物理备份 - BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` // 发起备份时指定的备注信息 // 注意:此字段可能返回 null,表示取不到有效值。 - BackupDesc *string `json:"BackupDesc,omitnil" name:"BackupDesc"` + BackupDesc *string `json:"BackupDesc,omitnil,omitempty" name:"BackupDesc"` } type BackupDownloadTaskStatus struct { // 分片名 - ReplicaSetId *string `json:"ReplicaSetId,omitnil" name:"ReplicaSetId"` + ReplicaSetId *string `json:"ReplicaSetId,omitnil,omitempty" name:"ReplicaSetId"` // 任务当前状态。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试 - Status *int64 `json:"Status,omitnil" name:"Status"` + Status *int64 `json:"Status,omitnil,omitempty" name:"Status"` } type BackupInfo struct { // 实例ID - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 备份方式,0-自动备份,1-手动备份 - BackupType *uint64 `json:"BackupType,omitnil" name:"BackupType"` + BackupType *uint64 `json:"BackupType,omitnil,omitempty" name:"BackupType"` // 备份名称 - BackupName *string `json:"BackupName,omitnil" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil,omitempty" name:"BackupName"` // 备份备注 // 注意:此字段可能返回 null,表示取不到有效值。 - BackupDesc *string `json:"BackupDesc,omitnil" name:"BackupDesc"` + BackupDesc *string `json:"BackupDesc,omitnil,omitempty" name:"BackupDesc"` // 备份文件大小,单位KB // 注意:此字段可能返回 null,表示取不到有效值。 - BackupSize *uint64 `json:"BackupSize,omitnil" name:"BackupSize"` + BackupSize *uint64 `json:"BackupSize,omitnil,omitempty" name:"BackupSize"` // 备份开始时间 // 注意:此字段可能返回 null,表示取不到有效值。 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 备份结束时间 // 注意:此字段可能返回 null,表示取不到有效值。 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 备份状态,1-备份中,2-备份成功 - Status *uint64 `json:"Status,omitnil" name:"Status"` + Status *uint64 `json:"Status,omitnil,omitempty" name:"Status"` // 备份方法,0-逻辑备份,1-物理备份 - BackupMethod *uint64 `json:"BackupMethod,omitnil" name:"BackupMethod"` + BackupMethod *uint64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` + + // 备份记录id + BackId *int64 `json:"BackId,omitnil,omitempty" name:"BackId"` + + // 备份删除时间 + DeleteTime *string `json:"DeleteTime,omitnil,omitempty" name:"DeleteTime"` + + // 异地备份地域 + // 注意:此字段可能返回 null,表示取不到有效值。 + BackupRegion *string `json:"BackupRegion,omitnil,omitempty" name:"BackupRegion"` } type ClientConnection struct { // 连接的客户端IP - IP *string `json:"IP,omitnil" name:"IP"` + IP *string `json:"IP,omitnil,omitempty" name:"IP"` // 对应客户端IP的连接数 - Count *uint64 `json:"Count,omitnil" name:"Count"` + Count *uint64 `json:"Count,omitnil,omitempty" name:"Count"` // 是否为内部ip - InternalService *bool `json:"InternalService,omitnil" name:"InternalService"` + InternalService *bool `json:"InternalService,omitnil,omitempty" name:"InternalService"` } // Predefined struct for user type CreateAccountUserRequestParams struct { // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 新账号名称。其格式要求如下: - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 新账号密码。密码复杂度要求如下: - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` // mongouser 账号对应的密码。mongouser 为系统默认账号,即为创建实例时,设置的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil,omitempty" name:"MongoUserPassword"` // 账号备注信息。 - UserDesc *string `json:"UserDesc,omitnil" name:"UserDesc"` + UserDesc *string `json:"UserDesc,omitnil,omitempty" name:"UserDesc"` // 账号的读写权限信息。 - AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil,omitempty" name:"AuthRole"` } type CreateAccountUserRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 新账号名称。其格式要求如下: - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 新账号密码。密码复杂度要求如下: - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` // mongouser 账号对应的密码。mongouser 为系统默认账号,即为创建实例时,设置的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil,omitempty" name:"MongoUserPassword"` // 账号备注信息。 - UserDesc *string `json:"UserDesc,omitnil" name:"UserDesc"` + UserDesc *string `json:"UserDesc,omitnil,omitempty" name:"UserDesc"` // 账号的读写权限信息。 - AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil,omitempty" name:"AuthRole"` } func (r *CreateAccountUserRequest) ToJsonString() string { @@ -261,10 +271,10 @@ func (r *CreateAccountUserRequest) FromJsonString(s string) error { // Predefined struct for user type CreateAccountUserResponseParams struct { // 创建任务ID。 - FlowId *uint64 `json:"FlowId,omitnil" name:"FlowId"` + FlowId *uint64 `json:"FlowId,omitnil,omitempty" name:"FlowId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type CreateAccountUserResponse struct { @@ -286,30 +296,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,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 设置备份方式。 // - 0:逻辑备份。 // - 1:物理备份。 - BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` // 备份备注信息。 - BackupRemark *string `json:"BackupRemark,omitnil" name:"BackupRemark"` + BackupRemark *string `json:"BackupRemark,omitnil,omitempty" name:"BackupRemark"` } type CreateBackupDBInstanceRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 设置备份方式。 // - 0:逻辑备份。 // - 1:物理备份。 - BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` // 备份备注信息。 - BackupRemark *string `json:"BackupRemark,omitnil" name:"BackupRemark"` + BackupRemark *string `json:"BackupRemark,omitnil,omitempty" name:"BackupRemark"` } func (r *CreateBackupDBInstanceRequest) ToJsonString() string { @@ -336,10 +346,10 @@ func (r *CreateBackupDBInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDBInstanceResponseParams struct { // 查询备份流程的状态。 - AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil,omitempty" name:"AsyncRequestId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type CreateBackupDBInstanceResponse struct { @@ -361,30 +371,30 @@ func (r *CreateBackupDBInstanceResponse) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDownloadTaskRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 要下载的备份文件名,可通过DescribeDBBackups接口获取。 - BackupName *string `json:"BackupName,omitnil" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil,omitempty" 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,omitnil" name:"BackupSets"` + BackupSets []*ReplicaSetInfo `json:"BackupSets,omitnil,omitempty" name:"BackupSets"` } type CreateBackupDownloadTaskRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 要下载的备份文件名,可通过DescribeDBBackups接口获取。 - BackupName *string `json:"BackupName,omitnil" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil,omitempty" 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,omitnil" name:"BackupSets"` + BackupSets []*ReplicaSetInfo `json:"BackupSets,omitnil,omitempty" name:"BackupSets"` } func (r *CreateBackupDownloadTaskRequest) ToJsonString() string { @@ -411,10 +421,10 @@ func (r *CreateBackupDownloadTaskRequest) FromJsonString(s string) error { // Predefined struct for user type CreateBackupDownloadTaskResponseParams struct { // 下载任务状态 - Tasks []*BackupDownloadTaskStatus `json:"Tasks,omitnil" name:"Tasks"` + Tasks []*BackupDownloadTaskStatus `json:"Tasks,omitnil,omitempty" name:"Tasks"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type CreateBackupDownloadTaskResponse struct { @@ -436,210 +446,210 @@ func (r *CreateBackupDownloadTaskResponse) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceHourRequestParams struct { // 实例内存大小,单位:GB。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 指副本集数量。 // - 创建副本集实例,该参数只能为1。 // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil,omitempty" 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,omitnil" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆。 - MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil,omitempty" name:"MachineCode"` // 实例数量,最小值1,最大值为10。 - GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` + GoodsNum *uint64 `json:"GoodsNum,omitnil,omitempty" name:"GoodsNum"` // 可用区信息,输入格式如:ap-guangzhou-2。 // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 实例架构类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 - ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 私有网络ID。如果不设置该参数,则默认选择基础网络。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` // 项目ID。若不设置该参数,则为默认项目。 - ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` // 实例标签信息。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` // 实例类型。 // - 1:正式实例。 // - 3:只读实例。 // - 4:灾备实例。 - Clone *int64 `json:"Clone,omitnil" name:"Clone"` + Clone *int64 `json:"Clone,omitnil,omitempty" name:"Clone"` // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 - Father *string `json:"Father,omitnil" name:"Father"` + Father *string `json:"Father,omitnil,omitempty" name:"Father"` // 安全组。 - SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` + SecurityGroup []*string `json:"SecurityGroup,omitnil,omitempty" name:"SecurityGroup"` // 克隆实例回档时间。 // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 // - 回档时间范围:仅能回档7天内时间点的数据。 - RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` + RestoreTime *string `json:"RestoreTime,omitnil,omitempty" name:"RestoreTime"` // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 - InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil,omitempty" name:"InstanceName"` // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 // - 不支持4.2及以上版本。 // - 不支持只读灾备实例。 // - 不能选择基础网络。 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil,omitempty" name:"AvailabilityZoneList"` // Mongos CPU 核数。购买分片集群时,必须填写。 - MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` + MongosCpu *uint64 `json:"MongosCpu,omitnil,omitempty" name:"MongosCpu"` // Mongos 内存大小。购买分片集群时,必须填写。 // - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // Mongos 数量。购买分片集群时,必须填写。 // - MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil,omitempty" name:"MongosNodeNum"` // 只读节点数量,最大不超过7个。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil,omitempty" name:"ReadonlyNodeNum"` // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 - HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` + HiddenZone *string `json:"HiddenZone,omitnil,omitempty" name:"HiddenZone"` } type CreateDBInstanceHourRequest struct { *tchttp.BaseRequest // 实例内存大小,单位:GB。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 指副本集数量。 // - 创建副本集实例,该参数只能为1。 // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil,omitempty" 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,omitnil" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆。 - MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil,omitempty" name:"MachineCode"` // 实例数量,最小值1,最大值为10。 - GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` + GoodsNum *uint64 `json:"GoodsNum,omitnil,omitempty" name:"GoodsNum"` // 可用区信息,输入格式如:ap-guangzhou-2。 // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 实例架构类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 - ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 私有网络ID。如果不设置该参数,则默认选择基础网络。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` // 项目ID。若不设置该参数,则为默认项目。 - ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` // 实例标签信息。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` // 实例类型。 // - 1:正式实例。 // - 3:只读实例。 // - 4:灾备实例。 - Clone *int64 `json:"Clone,omitnil" name:"Clone"` + Clone *int64 `json:"Clone,omitnil,omitempty" name:"Clone"` // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 - Father *string `json:"Father,omitnil" name:"Father"` + Father *string `json:"Father,omitnil,omitempty" name:"Father"` // 安全组。 - SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` + SecurityGroup []*string `json:"SecurityGroup,omitnil,omitempty" name:"SecurityGroup"` // 克隆实例回档时间。 // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 // - 回档时间范围:仅能回档7天内时间点的数据。 - RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` + RestoreTime *string `json:"RestoreTime,omitnil,omitempty" name:"RestoreTime"` // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 - InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil,omitempty" name:"InstanceName"` // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 // - 不支持4.2及以上版本。 // - 不支持只读灾备实例。 // - 不能选择基础网络。 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil,omitempty" name:"AvailabilityZoneList"` // Mongos CPU 核数。购买分片集群时,必须填写。 - MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` + MongosCpu *uint64 `json:"MongosCpu,omitnil,omitempty" name:"MongosCpu"` // Mongos 内存大小。购买分片集群时,必须填写。 // - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // Mongos 数量。购买分片集群时,必须填写。 // - MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil,omitempty" name:"MongosNodeNum"` // 只读节点数量,最大不超过7个。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil,omitempty" name:"ReadonlyNodeNum"` // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 - HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` + HiddenZone *string `json:"HiddenZone,omitnil,omitempty" name:"HiddenZone"` } func (r *CreateDBInstanceHourRequest) ToJsonString() string { @@ -689,13 +699,13 @@ func (r *CreateDBInstanceHourRequest) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceHourResponseParams struct { // 订单ID。 - DealId *string `json:"DealId,omitnil" name:"DealId"` + DealId *string `json:"DealId,omitnil,omitempty" name:"DealId"` // 创建的实例ID列表。 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type CreateDBInstanceHourResponse struct { @@ -717,232 +727,232 @@ func (r *CreateDBInstanceHourResponse) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceRequestParams struct { // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例内存大小,单位:GB。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 指版本信息。具体售卖规格,请通过接口 [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"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 实例数量, 最小值1,最大值为10。 - GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` + GoodsNum *uint64 `json:"GoodsNum,omitnil,omitempty" name:"GoodsNum"` // 可用区信息,输入格式如:ap-guangzhou-2。 // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36]。 - Period *uint64 `json:"Period,omitnil" name:"Period"` + Period *uint64 `json:"Period,omitnil,omitempty" name:"Period"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆。 - MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil,omitempty" name:"MachineCode"` // 实例架构类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 - ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 指副本集数量。 // - 创建副本集实例,该参数只能为1。 // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` // 项目ID。若不设置该参数,则为默认项目。 - ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` // 私有网络ID。如果不设置该参数,则默认选择基础网络。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` // 实例标签信息。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` // 自动续费标记。 // - 0:不自动续费。默认为不自动续费。 // - 1:自动续费。 - AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitnil" name:"AutoRenewFlag"` + AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitnil,omitempty" name:"AutoRenewFlag"` // 是否自动选择代金券。 // - 1:是。 // - 0:否。默认为0。 - AutoVoucher *uint64 `json:"AutoVoucher,omitnil" name:"AutoVoucher"` + AutoVoucher *uint64 `json:"AutoVoucher,omitnil,omitempty" name:"AutoVoucher"` // 实例类型。 // - 1:正式实例。 // - 3:只读实例。 // - 4:灾备实例。 - Clone *int64 `json:"Clone,omitnil" name:"Clone"` + Clone *int64 `json:"Clone,omitnil,omitempty" name:"Clone"` // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 - Father *string `json:"Father,omitnil" name:"Father"` + Father *string `json:"Father,omitnil,omitempty" name:"Father"` // 安全组。 - SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` + SecurityGroup []*string `json:"SecurityGroup,omitnil,omitempty" name:"SecurityGroup"` // 克隆实例回档时间。 // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 // - 回档时间范围:仅能回档7天内时间点的数据。 - RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` + RestoreTime *string `json:"RestoreTime,omitnil,omitempty" name:"RestoreTime"` // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 - InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil,omitempty" name:"InstanceName"` // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 // - 不支持4.2及以上版本。 // - 不支持只读灾备实例。 // - 不能选择基础网络。 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil,omitempty" name:"AvailabilityZoneList"` // Mongos CPU 核数,购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` + MongosCpu *uint64 `json:"MongosCpu,omitnil,omitempty" name:"MongosCpu"` // Mongos 内存大小。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // Mongos 数量。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。为了保障高可用,取值范围为[3,32]。 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil,omitempty" name:"MongosNodeNum"` // 只读节点数量,取值范围[0,5]。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil,omitempty" name:"ReadonlyNodeNum"` // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 - HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` + HiddenZone *string `json:"HiddenZone,omitnil,omitempty" name:"HiddenZone"` } type CreateDBInstanceRequest struct { *tchttp.BaseRequest // 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例内存大小,单位:GB。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 指版本信息。具体售卖规格,请通过接口 [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"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 实例数量, 最小值1,最大值为10。 - GoodsNum *uint64 `json:"GoodsNum,omitnil" name:"GoodsNum"` + GoodsNum *uint64 `json:"GoodsNum,omitnil,omitempty" name:"GoodsNum"` // 可用区信息,输入格式如:ap-guangzhou-2。 // - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 // - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36]。 - Period *uint64 `json:"Period,omitnil" name:"Period"` + Period *uint64 `json:"Period,omitnil,omitempty" name:"Period"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆。 - MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil,omitempty" name:"MachineCode"` // 实例架构类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 - ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 指副本集数量。 // - 创建副本集实例,该参数只能为1。 // - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` // 项目ID。若不设置该参数,则为默认项目。 - ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` // 私有网络ID。如果不设置该参数,则默认选择基础网络。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 实例密码。自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` // 实例标签信息。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` // 自动续费标记。 // - 0:不自动续费。默认为不自动续费。 // - 1:自动续费。 - AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitnil" name:"AutoRenewFlag"` + AutoRenewFlag *uint64 `json:"AutoRenewFlag,omitnil,omitempty" name:"AutoRenewFlag"` // 是否自动选择代金券。 // - 1:是。 // - 0:否。默认为0。 - AutoVoucher *uint64 `json:"AutoVoucher,omitnil" name:"AutoVoucher"` + AutoVoucher *uint64 `json:"AutoVoucher,omitnil,omitempty" name:"AutoVoucher"` // 实例类型。 // - 1:正式实例。 // - 3:只读实例。 // - 4:灾备实例。 - Clone *int64 `json:"Clone,omitnil" name:"Clone"` + Clone *int64 `json:"Clone,omitnil,omitempty" name:"Clone"` // 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 - Father *string `json:"Father,omitnil" name:"Father"` + Father *string `json:"Father,omitnil,omitempty" name:"Father"` // 安全组。 - SecurityGroup []*string `json:"SecurityGroup,omitnil" name:"SecurityGroup"` + SecurityGroup []*string `json:"SecurityGroup,omitnil,omitempty" name:"SecurityGroup"` // 克隆实例回档时间。 // - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 // - 回档时间范围:仅能回档7天内时间点的数据。 - RestoreTime *string `json:"RestoreTime,omitnil" name:"RestoreTime"` + RestoreTime *string `json:"RestoreTime,omitnil,omitempty" name:"RestoreTime"` // 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 - InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil,omitempty" name:"InstanceName"` // 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 // - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 // - 不支持4.2及以上版本。 // - 不支持只读灾备实例。 // - 不能选择基础网络。 - AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil" name:"AvailabilityZoneList"` + AvailabilityZoneList []*string `json:"AvailabilityZoneList,omitnil,omitempty" name:"AvailabilityZoneList"` // Mongos CPU 核数,购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` + MongosCpu *uint64 `json:"MongosCpu,omitnil,omitempty" name:"MongosCpu"` // Mongos 内存大小。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // Mongos 数量。购买MongoDB 4.2 及以上WiredTiger存储引擎版本的分片集群时,必须填写。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。为了保障高可用,取值范围为[3,32]。 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil,omitempty" name:"MongosNodeNum"` // 只读节点数量,取值范围[0,5]。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil,omitempty" name:"ReadonlyNodeNum"` // 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 - ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil" name:"ReadonlyNodeAvailabilityZoneList"` + ReadonlyNodeAvailabilityZoneList []*string `json:"ReadonlyNodeAvailabilityZoneList,omitnil,omitempty" name:"ReadonlyNodeAvailabilityZoneList"` // Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 - HiddenZone *string `json:"HiddenZone,omitnil" name:"HiddenZone"` + HiddenZone *string `json:"HiddenZone,omitnil,omitempty" name:"HiddenZone"` } func (r *CreateDBInstanceRequest) ToJsonString() string { @@ -995,13 +1005,13 @@ func (r *CreateDBInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type CreateDBInstanceResponseParams struct { // 订单ID - DealId *string `json:"DealId,omitnil" name:"DealId"` + DealId *string `json:"DealId,omitnil,omitempty" name:"DealId"` // 创建的实例ID列表 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type CreateDBInstanceResponse struct { @@ -1023,82 +1033,82 @@ func (r *CreateDBInstanceResponse) FromJsonString(s string) error { type CurrentOp struct { // 操作序号 // 注意:此字段可能返回 null,表示取不到有效值。 - OpId *int64 `json:"OpId,omitnil" name:"OpId"` + OpId *int64 `json:"OpId,omitnil,omitempty" name:"OpId"` // 操作所在的命名空间,形式如db.collection // 注意:此字段可能返回 null,表示取不到有效值。 - Ns *string `json:"Ns,omitnil" name:"Ns"` + Ns *string `json:"Ns,omitnil,omitempty" name:"Ns"` // 操作执行语句 // 注意:此字段可能返回 null,表示取不到有效值。 - Query *string `json:"Query,omitnil" name:"Query"` + Query *string `json:"Query,omitnil,omitempty" name:"Query"` // 操作类型,可能的取值:aggregate、count、delete、distinct、find、findAndModify、getMore、insert、mapReduce、update和command // 注意:此字段可能返回 null,表示取不到有效值。 - Op *string `json:"Op,omitnil" name:"Op"` + Op *string `json:"Op,omitnil,omitempty" name:"Op"` // 操作所在的分片名称 - ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil,omitempty" name:"ReplicaSetName"` // 筛选条件,节点状态,可能的取值为:Primary、Secondary // 注意:此字段可能返回 null,表示取不到有效值。 - State *string `json:"State,omitnil" name:"State"` + State *string `json:"State,omitnil,omitempty" name:"State"` // 操作详细信息 // 注意:此字段可能返回 null,表示取不到有效值。 - Operation *string `json:"Operation,omitnil" name:"Operation"` + Operation *string `json:"Operation,omitnil,omitempty" name:"Operation"` // 操作所在的节点名称 - NodeName *string `json:"NodeName,omitnil" name:"NodeName"` + NodeName *string `json:"NodeName,omitnil,omitempty" name:"NodeName"` // 操作已执行时间(ms) // 注意:此字段可能返回 null,表示取不到有效值。 - MicrosecsRunning *uint64 `json:"MicrosecsRunning,omitnil" name:"MicrosecsRunning"` + MicrosecsRunning *uint64 `json:"MicrosecsRunning,omitnil,omitempty" name:"MicrosecsRunning"` } type DBInstanceInfo struct { // 实例ID - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 地域信息 - Region *string `json:"Region,omitnil" name:"Region"` + Region *string `json:"Region,omitnil,omitempty" name:"Region"` } type DBInstancePrice struct { // 单价 // 注意:此字段可能返回 null,表示取不到有效值。 - UnitPrice *float64 `json:"UnitPrice,omitnil" name:"UnitPrice"` + UnitPrice *float64 `json:"UnitPrice,omitnil,omitempty" name:"UnitPrice"` // 原价 - OriginalPrice *float64 `json:"OriginalPrice,omitnil" name:"OriginalPrice"` + OriginalPrice *float64 `json:"OriginalPrice,omitnil,omitempty" name:"OriginalPrice"` // 折扣价 - DiscountPrice *float64 `json:"DiscountPrice,omitnil" name:"DiscountPrice"` + DiscountPrice *float64 `json:"DiscountPrice,omitnil,omitempty" name:"DiscountPrice"` } // Predefined struct for user type DeleteAccountUserRequestParams struct { // 指定待删除账号的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 配置待删除的账号名。 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 配置 mongouser 对应的密码。mongouser为系统默认账号,输入其对应的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil,omitempty" name:"MongoUserPassword"` } type DeleteAccountUserRequest struct { *tchttp.BaseRequest // 指定待删除账号的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 配置待删除的账号名。 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 配置 mongouser 对应的密码。mongouser为系统默认账号,输入其对应的密码。 - MongoUserPassword *string `json:"MongoUserPassword,omitnil" name:"MongoUserPassword"` + MongoUserPassword *string `json:"MongoUserPassword,omitnil,omitempty" name:"MongoUserPassword"` } func (r *DeleteAccountUserRequest) ToJsonString() string { @@ -1125,10 +1135,10 @@ func (r *DeleteAccountUserRequest) FromJsonString(s string) error { // Predefined struct for user type DeleteAccountUserResponseParams struct { // 账户删除任务ID。 - FlowId *int64 `json:"FlowId,omitnil" name:"FlowId"` + FlowId *int64 `json:"FlowId,omitnil,omitempty" name:"FlowId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DeleteAccountUserResponse struct { @@ -1150,14 +1160,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,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type DescribeAccountUsersRequest struct { *tchttp.BaseRequest // 指定待获取账号的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *DescribeAccountUsersRequest) ToJsonString() string { @@ -1182,10 +1192,10 @@ func (r *DescribeAccountUsersRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeAccountUsersResponseParams struct { // 实例账号列表。 - Users []*UserInfo `json:"Users,omitnil" name:"Users"` + Users []*UserInfo `json:"Users,omitnil,omitempty" name:"Users"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeAccountUsersResponse struct { @@ -1207,14 +1217,14 @@ func (r *DescribeAccountUsersResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeAsyncRequestInfoRequestParams struct { // 异步请求Id,涉及到异步流程的接口返回,如CreateBackupDBInstance - AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil,omitempty" name:"AsyncRequestId"` } type DescribeAsyncRequestInfoRequest struct { *tchttp.BaseRequest // 异步请求Id,涉及到异步流程的接口返回,如CreateBackupDBInstance - AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil,omitempty" name:"AsyncRequestId"` } func (r *DescribeAsyncRequestInfoRequest) ToJsonString() string { @@ -1239,10 +1249,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,omitnil" name:"Status"` + Status *string `json:"Status,omitnil,omitempty" name:"Status"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeAsyncRequestInfoResponse struct { @@ -1264,62 +1274,62 @@ func (r *DescribeAsyncRequestInfoResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeBackupDownloadTaskRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 备份文件名,用来过滤指定文件的下载任务 - BackupName *string `json:"BackupName,omitnil" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil,omitempty" name:"BackupName"` // 指定查询时间范围内的任务,StartTime指定开始时间,不填默认不限制开始时间 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 指定查询时间范围内的任务,EndTime指定截止时间,不填默认不限制截止时间 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 此次查询返回的条数,取值范围为1-100,默认为20 - Limit *int64 `json:"Limit,omitnil" name:"Limit"` + Limit *int64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 指定此次查询返回的页数,默认为0 - Offset *int64 `json:"Offset,omitnil" name:"Offset"` + Offset *int64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 排序字段,取值为createTime,finishTime两种,默认为createTime - OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil,omitempty" name:"OrderBy"` // 排序方式,取值为asc,desc两种,默认desc - OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil,omitempty" name:"OrderByType"` // 根据任务状态过滤。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试。不填默认返回所有类型 - Status []*int64 `json:"Status,omitnil" name:"Status"` + Status []*int64 `json:"Status,omitnil,omitempty" name:"Status"` } type DescribeBackupDownloadTaskRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 备份文件名,用来过滤指定文件的下载任务 - BackupName *string `json:"BackupName,omitnil" name:"BackupName"` + BackupName *string `json:"BackupName,omitnil,omitempty" name:"BackupName"` // 指定查询时间范围内的任务,StartTime指定开始时间,不填默认不限制开始时间 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 指定查询时间范围内的任务,EndTime指定截止时间,不填默认不限制截止时间 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 此次查询返回的条数,取值范围为1-100,默认为20 - Limit *int64 `json:"Limit,omitnil" name:"Limit"` + Limit *int64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 指定此次查询返回的页数,默认为0 - Offset *int64 `json:"Offset,omitnil" name:"Offset"` + Offset *int64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 排序字段,取值为createTime,finishTime两种,默认为createTime - OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil,omitempty" name:"OrderBy"` // 排序方式,取值为asc,desc两种,默认desc - OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil,omitempty" name:"OrderByType"` // 根据任务状态过滤。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试。不填默认返回所有类型 - Status []*int64 `json:"Status,omitnil" name:"Status"` + Status []*int64 `json:"Status,omitnil,omitempty" name:"Status"` } func (r *DescribeBackupDownloadTaskRequest) ToJsonString() string { @@ -1352,13 +1362,13 @@ func (r *DescribeBackupDownloadTaskRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeBackupDownloadTaskResponseParams struct { // 满足查询条件的所有条数 - TotalCount *int64 `json:"TotalCount,omitnil" name:"TotalCount"` + TotalCount *int64 `json:"TotalCount,omitnil,omitempty" name:"TotalCount"` // 下载任务列表 - Tasks []*BackupDownloadTask `json:"Tasks,omitnil" name:"Tasks"` + Tasks []*BackupDownloadTask `json:"Tasks,omitnil,omitempty" name:"Tasks"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeBackupDownloadTaskResponse struct { @@ -1377,29 +1387,94 @@ func (r *DescribeBackupDownloadTaskResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +// Predefined struct for user +type DescribeBackupRulesRequestParams struct { + // 指定实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` +} + +type DescribeBackupRulesRequest struct { + *tchttp.BaseRequest + + // 指定实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` +} + +func (r *DescribeBackupRulesRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DescribeBackupRulesRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "DescribeBackupRulesRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type DescribeBackupRulesResponseParams struct { + // 备份数据保留期限。单位为:天。 + BackupSaveTime *uint64 `json:"BackupSaveTime,omitnil,omitempty" name:"BackupSaveTime"` + + // 自动备份开始时间。 + BackupTime *uint64 `json:"BackupTime,omitnil,omitempty" name:"BackupTime"` + + // 备份方式。 + // - 0:逻辑备份。 + // - 1:物理备份。 + BackupMethod *uint64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type DescribeBackupRulesResponse struct { + *tchttp.BaseResponse + Response *DescribeBackupRulesResponseParams `json:"Response"` +} + +func (r *DescribeBackupRulesResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DescribeBackupRulesResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + // Predefined struct for user type DescribeClientConnectionsRequestParams struct { // 指定待查询的实例ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 单次请求返回的数量。最小值为1,最大值为1000,默认值为1000。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 偏移量,默认值为0。Offset=Limit*(页码-1)。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` } type DescribeClientConnectionsRequest struct { *tchttp.BaseRequest // 指定待查询的实例ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 单次请求返回的数量。最小值为1,最大值为1000,默认值为1000。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 偏移量,默认值为0。Offset=Limit*(页码-1)。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` } func (r *DescribeClientConnectionsRequest) ToJsonString() string { @@ -1426,13 +1501,13 @@ func (r *DescribeClientConnectionsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeClientConnectionsResponseParams struct { // 客户端连接信息,包括客户端 IP 和对应 IP 的连接数量。 - Clients []*ClientConnection `json:"Clients,omitnil" name:"Clients"` + Clients []*ClientConnection `json:"Clients,omitnil,omitempty" name:"Clients"` // 满足条件的记录总条数,可用于分页查询。 - TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil,omitempty" name:"TotalCount"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeClientConnectionsResponse struct { @@ -1454,70 +1529,70 @@ func (r *DescribeClientConnectionsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeCurrentOpRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 筛选条件,操作所属的命名空间namespace,格式为db.collection - Ns *string `json:"Ns,omitnil" name:"Ns"` + Ns *string `json:"Ns,omitnil,omitempty" name:"Ns"` // 筛选条件,操作已经执行的时间(单位:毫秒),结果将返回超过设置时间的操作,默认值为0,取值范围为[0, 3600000] - MillisecondRunning *uint64 `json:"MillisecondRunning,omitnil" name:"MillisecondRunning"` + MillisecondRunning *uint64 `json:"MillisecondRunning,omitnil,omitempty" name:"MillisecondRunning"` // 筛选条件,操作类型,可能的取值:none,update,insert,query,command,getmore,remove和killcursors - Op *string `json:"Op,omitnil" name:"Op"` + Op *string `json:"Op,omitnil,omitempty" name:"Op"` // 筛选条件,分片名称 - ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil,omitempty" name:"ReplicaSetName"` // 筛选条件,节点状态,可能的取值为:primary // secondary - State *string `json:"State,omitnil" name:"State"` + State *string `json:"State,omitnil,omitempty" name:"State"` // 单次请求返回的数量,默认值为100,取值范围为[0,100] - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 偏移量,默认值为0,取值范围为[0,10000] - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 返回结果集排序的字段,目前支持:"MicrosecsRunning"/"microsecsrunning",默认为升序排序 - OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil,omitempty" name:"OrderBy"` // 返回结果集排序方式,可能的取值:"ASC"/"asc"或"DESC"/"desc" - OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil,omitempty" name:"OrderByType"` } type DescribeCurrentOpRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 筛选条件,操作所属的命名空间namespace,格式为db.collection - Ns *string `json:"Ns,omitnil" name:"Ns"` + Ns *string `json:"Ns,omitnil,omitempty" name:"Ns"` // 筛选条件,操作已经执行的时间(单位:毫秒),结果将返回超过设置时间的操作,默认值为0,取值范围为[0, 3600000] - MillisecondRunning *uint64 `json:"MillisecondRunning,omitnil" name:"MillisecondRunning"` + MillisecondRunning *uint64 `json:"MillisecondRunning,omitnil,omitempty" name:"MillisecondRunning"` // 筛选条件,操作类型,可能的取值:none,update,insert,query,command,getmore,remove和killcursors - Op *string `json:"Op,omitnil" name:"Op"` + Op *string `json:"Op,omitnil,omitempty" name:"Op"` // 筛选条件,分片名称 - ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil,omitempty" name:"ReplicaSetName"` // 筛选条件,节点状态,可能的取值为:primary // secondary - State *string `json:"State,omitnil" name:"State"` + State *string `json:"State,omitnil,omitempty" name:"State"` // 单次请求返回的数量,默认值为100,取值范围为[0,100] - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 偏移量,默认值为0,取值范围为[0,10000] - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 返回结果集排序的字段,目前支持:"MicrosecsRunning"/"microsecsrunning",默认为升序排序 - OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil,omitempty" name:"OrderBy"` // 返回结果集排序方式,可能的取值:"ASC"/"asc"或"DESC"/"desc" - OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil,omitempty" name:"OrderByType"` } func (r *DescribeCurrentOpRequest) ToJsonString() string { @@ -1551,13 +1626,13 @@ func (r *DescribeCurrentOpRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeCurrentOpResponseParams struct { // 符合查询条件的操作总数 - TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil,omitempty" name:"TotalCount"` // 当前操作列表 - CurrentOps []*CurrentOp `json:"CurrentOps,omitnil" name:"CurrentOps"` + CurrentOps []*CurrentOp `json:"CurrentOps,omitnil,omitempty" name:"CurrentOps"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeCurrentOpResponse struct { @@ -1579,32 +1654,32 @@ func (r *DescribeCurrentOpResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeDBBackupsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 备份方式,当前支持:0-逻辑备份,1-物理备份,2-所有备份。默认为逻辑备份。 - BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` // 分页大小,最大值为100,不设置默认查询所有。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 分页偏移量,最小值为0,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` } type DescribeDBBackupsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 备份方式,当前支持:0-逻辑备份,1-物理备份,2-所有备份。默认为逻辑备份。 - BackupMethod *int64 `json:"BackupMethod,omitnil" name:"BackupMethod"` + BackupMethod *int64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` // 分页大小,最大值为100,不设置默认查询所有。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 分页偏移量,最小值为0,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` } func (r *DescribeDBBackupsRequest) ToJsonString() string { @@ -1632,13 +1707,13 @@ func (r *DescribeDBBackupsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeDBBackupsResponseParams struct { // 备份列表 - BackupList []*BackupInfo `json:"BackupList,omitnil" name:"BackupList"` + BackupList []*BackupInfo `json:"BackupList,omitnil,omitempty" name:"BackupList"` // 备份总数 - TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil,omitempty" name:"TotalCount"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeDBBackupsResponse struct { @@ -1660,14 +1735,14 @@ func (r *DescribeDBBackupsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstanceDealRequestParams struct { // 订单ID,通过CreateDBInstance等接口返回 - DealId *string `json:"DealId,omitnil" name:"DealId"` + DealId *string `json:"DealId,omitnil,omitempty" name:"DealId"` } type DescribeDBInstanceDealRequest struct { *tchttp.BaseRequest // 订单ID,通过CreateDBInstance等接口返回 - DealId *string `json:"DealId,omitnil" name:"DealId"` + DealId *string `json:"DealId,omitnil,omitempty" name:"DealId"` } func (r *DescribeDBInstanceDealRequest) ToJsonString() string { @@ -1692,19 +1767,22 @@ 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,omitnil" name:"Status"` + Status *int64 `json:"Status,omitnil,omitempty" name:"Status"` // 订单原价。 - OriginalPrice *float64 `json:"OriginalPrice,omitnil" name:"OriginalPrice"` + OriginalPrice *float64 `json:"OriginalPrice,omitnil,omitempty" name:"OriginalPrice"` // 订单折扣价格。 - DiscountPrice *float64 `json:"DiscountPrice,omitnil" name:"DiscountPrice"` + DiscountPrice *float64 `json:"DiscountPrice,omitnil,omitempty" name:"DiscountPrice"` // 订单行为,purchase:新购,renew:续费,upgrade:升配,downgrade:降配,refund:退货退款。 - Action *string `json:"Action,omitnil" name:"Action"` + Action *string `json:"Action,omitnil,omitempty" name:"Action"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 当前订单的资源Id。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeDBInstanceDealResponse struct { @@ -1726,54 +1804,54 @@ func (r *DescribeDBInstanceDealResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstanceNodePropertyRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 节点ID。 - NodeIds []*string `json:"NodeIds,omitnil" name:"NodeIds"` + NodeIds []*string `json:"NodeIds,omitnil,omitempty" name:"NodeIds"` // 节点角色。可选值包括: // - Roles []*string `json:"Roles,omitnil" name:"Roles"` + Roles []*string `json:"Roles,omitnil,omitempty" name:"Roles"` // 该参数指定节点是否为Hidden节点,默认为false。 - OnlyHidden *bool `json:"OnlyHidden,omitnil" name:"OnlyHidden"` + OnlyHidden *bool `json:"OnlyHidden,omitnil,omitempty" name:"OnlyHidden"` // 该参数指定选举新主节点的优先级。其取值范围为[0,100],数值越高,优先级越高。 - Priority *int64 `json:"Priority,omitnil" name:"Priority"` + Priority *int64 `json:"Priority,omitnil,omitempty" name:"Priority"` // 该参数指定节点投票权。 // - Votes *int64 `json:"Votes,omitnil" name:"Votes"` + Votes *int64 `json:"Votes,omitnil,omitempty" name:"Votes"` // 节点标签。 - Tags []*NodeTag `json:"Tags,omitnil" name:"Tags"` + Tags []*NodeTag `json:"Tags,omitnil,omitempty" name:"Tags"` } type DescribeDBInstanceNodePropertyRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 节点ID。 - NodeIds []*string `json:"NodeIds,omitnil" name:"NodeIds"` + NodeIds []*string `json:"NodeIds,omitnil,omitempty" name:"NodeIds"` // 节点角色。可选值包括: // - Roles []*string `json:"Roles,omitnil" name:"Roles"` + Roles []*string `json:"Roles,omitnil,omitempty" name:"Roles"` // 该参数指定节点是否为Hidden节点,默认为false。 - OnlyHidden *bool `json:"OnlyHidden,omitnil" name:"OnlyHidden"` + OnlyHidden *bool `json:"OnlyHidden,omitnil,omitempty" name:"OnlyHidden"` // 该参数指定选举新主节点的优先级。其取值范围为[0,100],数值越高,优先级越高。 - Priority *int64 `json:"Priority,omitnil" name:"Priority"` + Priority *int64 `json:"Priority,omitnil,omitempty" name:"Priority"` // 该参数指定节点投票权。 // - Votes *int64 `json:"Votes,omitnil" name:"Votes"` + Votes *int64 `json:"Votes,omitnil,omitempty" name:"Votes"` // 节点标签。 - Tags []*NodeTag `json:"Tags,omitnil" name:"Tags"` + Tags []*NodeTag `json:"Tags,omitnil,omitempty" name:"Tags"` } func (r *DescribeDBInstanceNodePropertyRequest) ToJsonString() string { @@ -1805,13 +1883,13 @@ func (r *DescribeDBInstanceNodePropertyRequest) FromJsonString(s string) error { type DescribeDBInstanceNodePropertyResponseParams struct { // Mongos节点属性。 // 注意:此字段可能返回 null,表示取不到有效值。 - Mongos []*NodeProperty `json:"Mongos,omitnil" name:"Mongos"` + Mongos []*NodeProperty `json:"Mongos,omitnil,omitempty" name:"Mongos"` // 副本集节点信息。 - ReplicateSets []*ReplicateSetInfo `json:"ReplicateSets,omitnil" name:"ReplicateSets"` + ReplicateSets []*ReplicateSetInfo `json:"ReplicateSets,omitnil,omitempty" name:"ReplicateSets"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeDBInstanceNodePropertyResponse struct { @@ -1833,104 +1911,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,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 实例类型。取值范围如下: - InstanceType *int64 `json:"InstanceType,omitnil" name:"InstanceType"` + InstanceType *int64 `json:"InstanceType,omitnil,omitempty" name:"InstanceType"` // 集群类型,取值范围如下: - ClusterType *int64 `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *int64 `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 实例状态,取值范围如下所示: - Status []*int64 `json:"Status,omitnil" name:"Status"` + Status []*int64 `json:"Status,omitnil,omitempty" name:"Status"` // 私有网络的 ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其 ID。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络的子网ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其子网 ID。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 付费类型,取值范围如下: - PayMode *int64 `json:"PayMode,omitnil" name:"PayMode"` + PayMode *int64 `json:"PayMode,omitnil,omitempty" name:"PayMode"` // 单次请求返回的数量。默认值为20,取值范围为[1,100]。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 偏移量,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 配置返回结果排序依据的字段。目前支持依据"ProjectId"、"InstanceName"、"CreateTime"排序。 - OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil,omitempty" name:"OrderBy"` // 配置返回结果的排序方式。 // - ASC:升序。 // - DESC:降序。 - OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil,omitempty" name:"OrderByType"` // 项目 ID。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb),在右上角的账户信息下拉菜单中,选择项目管理查询项目。 - ProjectIds []*uint64 `json:"ProjectIds,omitnil" name:"ProjectIds"` + ProjectIds []*uint64 `json:"ProjectIds,omitnil,omitempty" name:"ProjectIds"` // 配置查询搜索的关键词。支持配置为实例ID、实例名称或者内网 IP 地址。 - SearchKey *string `json:"SearchKey,omitnil" name:"SearchKey"` + SearchKey *string `json:"SearchKey,omitnil,omitempty" name:"SearchKey"` // 标签信息,包含标签键与标签值。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` } type DescribeDBInstancesRequest struct { *tchttp.BaseRequest // 实例 ID 列表。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 实例类型。取值范围如下: - InstanceType *int64 `json:"InstanceType,omitnil" name:"InstanceType"` + InstanceType *int64 `json:"InstanceType,omitnil,omitempty" name:"InstanceType"` // 集群类型,取值范围如下: - ClusterType *int64 `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *int64 `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 实例状态,取值范围如下所示: - Status []*int64 `json:"Status,omitnil" name:"Status"` + Status []*int64 `json:"Status,omitnil,omitempty" name:"Status"` // 私有网络的 ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其 ID。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络的子网ID。 // - 基础网络则无需配置该参数。 // - 请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表中,单击私有网络名称,在**私有网络**页面获取其子网 ID。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 付费类型,取值范围如下: - PayMode *int64 `json:"PayMode,omitnil" name:"PayMode"` + PayMode *int64 `json:"PayMode,omitnil,omitempty" name:"PayMode"` // 单次请求返回的数量。默认值为20,取值范围为[1,100]。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 偏移量,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 配置返回结果排序依据的字段。目前支持依据"ProjectId"、"InstanceName"、"CreateTime"排序。 - OrderBy *string `json:"OrderBy,omitnil" name:"OrderBy"` + OrderBy *string `json:"OrderBy,omitnil,omitempty" name:"OrderBy"` // 配置返回结果的排序方式。 // - ASC:升序。 // - DESC:降序。 - OrderByType *string `json:"OrderByType,omitnil" name:"OrderByType"` + OrderByType *string `json:"OrderByType,omitnil,omitempty" name:"OrderByType"` // 项目 ID。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb),在右上角的账户信息下拉菜单中,选择项目管理查询项目。 - ProjectIds []*uint64 `json:"ProjectIds,omitnil" name:"ProjectIds"` + ProjectIds []*uint64 `json:"ProjectIds,omitnil,omitempty" name:"ProjectIds"` // 配置查询搜索的关键词。支持配置为实例ID、实例名称或者内网 IP 地址。 - SearchKey *string `json:"SearchKey,omitnil" name:"SearchKey"` + SearchKey *string `json:"SearchKey,omitnil,omitempty" name:"SearchKey"` // 标签信息,包含标签键与标签值。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` } func (r *DescribeDBInstancesRequest) ToJsonString() string { @@ -1968,13 +2046,13 @@ func (r *DescribeDBInstancesRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeDBInstancesResponseParams struct { // 符合查询条件的实例总数。 - TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` + TotalCount *uint64 `json:"TotalCount,omitnil,omitempty" name:"TotalCount"` // 实例详细信息列表。 - InstanceDetails []*InstanceDetail `json:"InstanceDetails,omitnil" name:"InstanceDetails"` + InstanceDetails []*InstanceDetail `json:"InstanceDetails,omitnil,omitempty" name:"InstanceDetails"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeDBInstancesResponse struct { @@ -1995,15 +2073,15 @@ 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,omitnil" name:"InstanceId"` + // 指定待查询参数列表的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type DescribeInstanceParamsRequest struct { *tchttp.BaseRequest - // 指定待查询参数列表的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + // 指定待查询参数列表的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *DescribeInstanceParamsRequest) ToJsonString() string { @@ -2027,23 +2105,23 @@ func (r *DescribeInstanceParamsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeInstanceParamsResponseParams struct { - // 参数值为枚举类型参数集合。 - InstanceEnumParam []*InstanceEnumParam `json:"InstanceEnumParam,omitnil" name:"InstanceEnumParam"` + // 参数值为枚举类型的参数集合。 + InstanceEnumParam []*InstanceEnumParam `json:"InstanceEnumParam,omitnil,omitempty" name:"InstanceEnumParam"` - // 参数值为 Integer 类型参数集合。 - InstanceIntegerParam []*InstanceIntegerParam `json:"InstanceIntegerParam,omitnil" name:"InstanceIntegerParam"` + // 参数值为 Integer 类型的参数集合。 + InstanceIntegerParam []*InstanceIntegerParam `json:"InstanceIntegerParam,omitnil,omitempty" name:"InstanceIntegerParam"` // 参数值为 Text 类型的参数集合。 - InstanceTextParam []*InstanceTextParam `json:"InstanceTextParam,omitnil" name:"InstanceTextParam"` + InstanceTextParam []*InstanceTextParam `json:"InstanceTextParam,omitnil,omitempty" name:"InstanceTextParam"` // 参数值为混合类型的参数集合。 - InstanceMultiParam []*InstanceMultiParam `json:"InstanceMultiParam,omitnil" name:"InstanceMultiParam"` + InstanceMultiParam []*InstanceMultiParam `json:"InstanceMultiParam,omitnil,omitempty" name:"InstanceMultiParam"` - // 当前实例支持修改的参数个数统计 如0 - TotalCount *uint64 `json:"TotalCount,omitnil" name:"TotalCount"` + // 当前实例支持修改的参数数量。 + TotalCount *uint64 `json:"TotalCount,omitnil,omitempty" name:"TotalCount"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeInstanceParamsResponse struct { @@ -2065,14 +2143,14 @@ func (r *DescribeInstanceParamsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSecurityGroupRequestParams struct { // 实例 ID。例如:cmgo-p8vn****。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type DescribeSecurityGroupRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-p8vn****。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *DescribeSecurityGroupRequest) ToJsonString() string { @@ -2097,10 +2175,10 @@ func (r *DescribeSecurityGroupRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSecurityGroupResponseParams struct { // 实例绑定的安全组信息。 - Groups []*SecurityGroup `json:"Groups,omitnil" name:"Groups"` + Groups []*SecurityGroup `json:"Groups,omitnil,omitempty" name:"Groups"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeSecurityGroupResponse struct { @@ -2122,50 +2200,50 @@ func (r *DescribeSecurityGroupResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogPatternsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil,omitempty" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 慢日志返回格式,可设置为json,不传默认返回原生慢日志格式。 - Format *string `json:"Format,omitnil" name:"Format"` + Format *string `json:"Format,omitnil,omitempty" name:"Format"` } type DescribeSlowLogPatternsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil,omitempty" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 慢日志返回格式,可设置为json,不传默认返回原生慢日志格式。 - Format *string `json:"Format,omitnil" name:"Format"` + Format *string `json:"Format,omitnil,omitempty" name:"Format"` } func (r *DescribeSlowLogPatternsRequest) ToJsonString() string { @@ -2196,13 +2274,13 @@ func (r *DescribeSlowLogPatternsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogPatternsResponseParams struct { // 慢日志统计信息总数 - Count *uint64 `json:"Count,omitnil" name:"Count"` + Count *uint64 `json:"Count,omitnil,omitempty" name:"Count"` // 慢日志统计信息 - SlowLogPatterns []*SlowLogPattern `json:"SlowLogPatterns,omitnil" name:"SlowLogPatterns"` + SlowLogPatterns []*SlowLogPattern `json:"SlowLogPatterns,omitnil,omitempty" name:"SlowLogPatterns"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeSlowLogPatternsResponse struct { @@ -2224,50 +2302,50 @@ func (r *DescribeSlowLogPatternsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil,omitempty" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 慢日志返回格式。默认返回原生慢日志格式,4.4及以上版本可设置为json。 - Format *string `json:"Format,omitnil" name:"Format"` + Format *string `json:"Format,omitnil,omitempty" name:"Format"` } type DescribeSlowLogsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - StartTime *string `json:"StartTime,omitnil" name:"StartTime"` + StartTime *string `json:"StartTime,omitnil,omitempty" name:"StartTime"` // 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 - EndTime *string `json:"EndTime,omitnil" name:"EndTime"` + EndTime *string `json:"EndTime,omitnil,omitempty" name:"EndTime"` // 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 - SlowMS *uint64 `json:"SlowMS,omitnil" name:"SlowMS"` + SlowMS *uint64 `json:"SlowMS,omitnil,omitempty" name:"SlowMS"` // 偏移量,最小值为0,最大值为10000,默认值为0。 - Offset *uint64 `json:"Offset,omitnil" name:"Offset"` + Offset *uint64 `json:"Offset,omitnil,omitempty" name:"Offset"` // 分页大小,最小值为1,最大值为100,默认值为20。 - Limit *uint64 `json:"Limit,omitnil" name:"Limit"` + Limit *uint64 `json:"Limit,omitnil,omitempty" name:"Limit"` // 慢日志返回格式。默认返回原生慢日志格式,4.4及以上版本可设置为json。 - Format *string `json:"Format,omitnil" name:"Format"` + Format *string `json:"Format,omitnil,omitempty" name:"Format"` } func (r *DescribeSlowLogsRequest) ToJsonString() string { @@ -2298,14 +2376,14 @@ func (r *DescribeSlowLogsRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSlowLogsResponseParams struct { // 慢日志总数 - Count *uint64 `json:"Count,omitnil" name:"Count"` + Count *uint64 `json:"Count,omitnil,omitempty" name:"Count"` // 慢日志详情 // 注意:此字段可能返回 null,表示取不到有效值。 - SlowLogs []*string `json:"SlowLogs,omitnil" name:"SlowLogs"` + SlowLogs []*string `json:"SlowLogs,omitnil,omitempty" name:"SlowLogs"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeSlowLogsResponse struct { @@ -2327,14 +2405,14 @@ func (r *DescribeSlowLogsResponse) FromJsonString(s string) error { // Predefined struct for user type DescribeSpecInfoRequestParams struct { // 待查询可用区 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` } type DescribeSpecInfoRequest struct { *tchttp.BaseRequest // 待查询可用区 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` } func (r *DescribeSpecInfoRequest) ToJsonString() string { @@ -2359,10 +2437,10 @@ func (r *DescribeSpecInfoRequest) FromJsonString(s string) error { // Predefined struct for user type DescribeSpecInfoResponseParams struct { // 实例售卖规格信息列表 - SpecInfoList []*SpecificationInfo `json:"SpecInfoList,omitnil" name:"SpecInfoList"` + SpecInfoList []*SpecificationInfo `json:"SpecInfoList,omitnil,omitempty" name:"SpecInfoList"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type DescribeSpecInfoResponse struct { @@ -2381,17 +2459,260 @@ func (r *DescribeSpecInfoResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +// Predefined struct for user +type DescribeTransparentDataEncryptionStatusRequestParams struct { + // 指定实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` +} + +type DescribeTransparentDataEncryptionStatusRequest struct { + *tchttp.BaseRequest + + // 指定实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` +} + +func (r *DescribeTransparentDataEncryptionStatusRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DescribeTransparentDataEncryptionStatusRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "DescribeTransparentDataEncryptionStatusRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type DescribeTransparentDataEncryptionStatusResponseParams struct { + // 表示是否开启了透明加密。 + // - close:未开启。 + // - open:已开启。 + TransparentDataEncryptionStatus *string `json:"TransparentDataEncryptionStatus,omitnil,omitempty" name:"TransparentDataEncryptionStatus"` + + // 已绑定的密钥列表,如未绑定,返回null。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyInfoList []*KMSInfoDetail `json:"KeyInfoList,omitnil,omitempty" name:"KeyInfoList"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type DescribeTransparentDataEncryptionStatusResponse struct { + *tchttp.BaseResponse + Response *DescribeTransparentDataEncryptionStatusResponseParams `json:"Response"` +} + +func (r *DescribeTransparentDataEncryptionStatusResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *DescribeTransparentDataEncryptionStatusResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type EnableTransparentDataEncryptionRequestParams struct { + // 实例 ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。目前支持通用版本包含:4.4、5.0,云盘版暂不支持。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // [密钥管理系统(Key Management Service,KMS)](https://cloud.tencent.com/document/product/573/18809)服务所在地域,例如 ap-shanghai。 + KmsRegion *string `json:"KmsRegion,omitnil,omitempty" name:"KmsRegion"` + + // 密钥 ID。若不设置该参数,不指定具体的密钥 ID,由腾讯云自动生成密钥。 + KeyId *string `json:"KeyId,omitnil,omitempty" name:"KeyId"` +} + +type EnableTransparentDataEncryptionRequest struct { + *tchttp.BaseRequest + + // 实例 ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。目前支持通用版本包含:4.4、5.0,云盘版暂不支持。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // [密钥管理系统(Key Management Service,KMS)](https://cloud.tencent.com/document/product/573/18809)服务所在地域,例如 ap-shanghai。 + KmsRegion *string `json:"KmsRegion,omitnil,omitempty" name:"KmsRegion"` + + // 密钥 ID。若不设置该参数,不指定具体的密钥 ID,由腾讯云自动生成密钥。 + KeyId *string `json:"KeyId,omitnil,omitempty" name:"KeyId"` +} + +func (r *EnableTransparentDataEncryptionRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *EnableTransparentDataEncryptionRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + delete(f, "KmsRegion") + delete(f, "KeyId") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "EnableTransparentDataEncryptionRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type EnableTransparentDataEncryptionResponseParams struct { + // 开启透明加密的异步流程id,用于查询流程状态。 + FlowId *int64 `json:"FlowId,omitnil,omitempty" name:"FlowId"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type EnableTransparentDataEncryptionResponse struct { + *tchttp.BaseResponse + Response *EnableTransparentDataEncryptionResponseParams `json:"Response"` +} + +func (r *EnableTransparentDataEncryptionResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *EnableTransparentDataEncryptionResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type FBKeyValue struct { + // 用于按key回档过滤的key + Key *string `json:"Key,omitnil,omitempty" name:"Key"` + + // 用于按key回档过滤的value + Value *string `json:"Value,omitnil,omitempty" name:"Value"` +} + +// Predefined struct for user +type FlashBackDBInstanceRequestParams struct { + // 开启按 Key 回档的实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 源数据想恢复到的时间。 + TargetFlashbackTime *string `json:"TargetFlashbackTime,omitnil,omitempty" name:"TargetFlashbackTime"` + + // 源数据所在的库表信息。 + TargetDatabases []*FlashbackDatabase `json:"TargetDatabases,omitnil,omitempty" name:"TargetDatabases"` + + // 数据最终写入的实例 ID。 + TargetInstanceId *string `json:"TargetInstanceId,omitnil,omitempty" name:"TargetInstanceId"` +} + +type FlashBackDBInstanceRequest struct { + *tchttp.BaseRequest + + // 开启按 Key 回档的实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 源数据想恢复到的时间。 + TargetFlashbackTime *string `json:"TargetFlashbackTime,omitnil,omitempty" name:"TargetFlashbackTime"` + + // 源数据所在的库表信息。 + TargetDatabases []*FlashbackDatabase `json:"TargetDatabases,omitnil,omitempty" name:"TargetDatabases"` + + // 数据最终写入的实例 ID。 + TargetInstanceId *string `json:"TargetInstanceId,omitnil,omitempty" name:"TargetInstanceId"` +} + +func (r *FlashBackDBInstanceRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *FlashBackDBInstanceRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + delete(f, "TargetFlashbackTime") + delete(f, "TargetDatabases") + delete(f, "TargetInstanceId") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "FlashBackDBInstanceRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type FlashBackDBInstanceResponseParams struct { + // 回档数据异步任务 ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + FlowId *int64 `json:"FlowId,omitnil,omitempty" name:"FlowId"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type FlashBackDBInstanceResponse struct { + *tchttp.BaseResponse + Response *FlashBackDBInstanceResponseParams `json:"Response"` +} + +func (r *FlashBackDBInstanceResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *FlashBackDBInstanceResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type FlashbackCollection struct { + // 按key回档指定的集合名 + CollectionName *string `json:"CollectionName,omitnil,omitempty" name:"CollectionName"` + + // 按key回档到的目标集合名 + TargetResultCollectionName *string `json:"TargetResultCollectionName,omitnil,omitempty" name:"TargetResultCollectionName"` + + // 上传到cos的文件的value所对应的key值 + FilterKey *string `json:"FilterKey,omitnil,omitempty" name:"FilterKey"` + + // 用于按key回档过滤的键值对 + KeyValues []*FBKeyValue `json:"KeyValues,omitnil,omitempty" name:"KeyValues"` +} + +type FlashbackDatabase struct { + // 按key回档源数据所在库 + DBName *string `json:"DBName,omitnil,omitempty" name:"DBName"` + + // 按key回档的集群数组 + Collections []*FlashbackCollection `json:"Collections,omitnil,omitempty" name:"Collections"` +} + // Predefined struct for user type FlushInstanceRouterConfigRequestParams struct { // 实例ID - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type FlushInstanceRouterConfigRequest struct { *tchttp.BaseRequest // 实例ID - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *FlushInstanceRouterConfigRequest) ToJsonString() string { @@ -2415,8 +2736,8 @@ func (r *FlushInstanceRouterConfigRequest) FromJsonString(s string) error { // Predefined struct for user type FlushInstanceRouterConfigResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type FlushInstanceRouterConfigResponse struct { @@ -2438,21 +2759,21 @@ func (r *FlushInstanceRouterConfigResponse) FromJsonString(s string) error { // Predefined struct for user type InquirePriceCreateDBInstancesRequestParams struct { // 实例所属区域及可用区信息。格式:ap-guangzhou-2。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 每个分片的主从节点数量。 // 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinNodeNum与MaxNodeNum分别对应其最小值与最大值。 - NodeNum *int64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *int64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例内存大小。 // - 单位:GB。 // - 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数CPU与Memory分别对应CPU核数与内存规格。 - Memory *int64 `json:"Memory,omitnil" name:"Memory"` + Memory *int64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例硬盘大小。 // - 单位:GB。 // - 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinStorage与MaxStorage分别对应其最小磁盘规格与最大磁盘规格。 - Volume *int64 `json:"Volume,omitnil" name:"Volume"` + Volume *int64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 实例版本信息。具体支持的版本,请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MongoVersionCode为实例所支持的版本信息。版本信息与版本号对应关系如下: // - MONGO_3_WT:MongoDB 3.2 WiredTiger存储引擎版本。 @@ -2462,76 +2783,75 @@ type InquirePriceCreateDBInstancesRequestParams struct { // - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 // - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 // - MONGO_50_WT:MongoDB 5.0 WiredTiger存储引擎版本。 - MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆型。 - MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil,omitempty" name:"MachineCode"` // 实例数量,取值范围为[1,10]。 - GoodsNum *int64 `json:"GoodsNum,omitnil" name:"GoodsNum"` + GoodsNum *int64 `json:"GoodsNum,omitnil,omitempty" name:"GoodsNum"` // 实例类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 // - STANDALONE:单节点。 - ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 副本集个数。 // - 创建副本集实例时,该参数固定设置为1。 // - 创建分片集群时,指分片数量,请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinReplicateSetNum与MaxReplicateSetNum分别对应其最小值与最大值。 // - 若为单节点实例,该参数固定设置为0。 - ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` - // 选择包年包月计费模式时,您需要设定购买实例的时长。即InstanceChargeType设定为PREPAID时,该参数必须配置。 - // - 单位:月。 - // - 可选值包括[1,2,3,4,5,6,7,8,9,10,11,12,24,36]。 - Period *int64 `json:"Period,omitnil" name:"Period"` + // - 选择包年包月计费模式,即 InstanceChargeType 设定为PREPAID时,需设定购买实例的时长。该参数取值可选:[1,2,3,4,5,6,7,8,9,10,11,12,24,36];单位:月。 + // -选择按量计费,即 InstanceChargeType 设定为 **POSTPAID_BY_HOUR** 时,该参数仅可配置为 1。 + Period *int64 `json:"Period,omitnil,omitempty" name:"Period"` // 实例付费方式。 // - PREPAID:包年包月计费。 // - POSTPAID_BY_HOUR:按量计费。 - InstanceChargeType *string `json:"InstanceChargeType,omitnil" name:"InstanceChargeType"` + InstanceChargeType *string `json:"InstanceChargeType,omitnil,omitempty" name:"InstanceChargeType"` // 分片实例询价必填参数,指 Mongos CPU核数,取值范围为[1,16]。 - MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` + MongosCpu *uint64 `json:"MongosCpu,omitnil,omitempty" name:"MongosCpu"` // 分片实例询价必填参数,指 Mongos 内存,取值范围为[2,32],单位:GB。 - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // 分片实例询价必填参数,指 Mongos 个数,取值范围为[3,32]。 - MongosNum *uint64 `json:"MongosNum,omitnil" name:"MongosNum"` + MongosNum *uint64 `json:"MongosNum,omitnil,omitempty" name:"MongosNum"` // 分片实例询价必填参数,指 ConfigServer CPU核数,取值为1,单位:GB。 - ConfigServerCpu *uint64 `json:"ConfigServerCpu,omitnil" name:"ConfigServerCpu"` + ConfigServerCpu *uint64 `json:"ConfigServerCpu,omitnil,omitempty" name:"ConfigServerCpu"` // 分片实例询价必填参数,指 ConfigServer 内存大小,取值为2,单位:GB。 - ConfigServerMemory *uint64 `json:"ConfigServerMemory,omitnil" name:"ConfigServerMemory"` + ConfigServerMemory *uint64 `json:"ConfigServerMemory,omitnil,omitempty" name:"ConfigServerMemory"` // 分片实例询价必填参数,指 ConfigServer 磁盘大小,取值为 20,单位:GB。 - ConfigServerVolume *uint64 `json:"ConfigServerVolume,omitnil" name:"ConfigServerVolume"` + ConfigServerVolume *uint64 `json:"ConfigServerVolume,omitnil,omitempty" name:"ConfigServerVolume"` } type InquirePriceCreateDBInstancesRequest struct { *tchttp.BaseRequest // 实例所属区域及可用区信息。格式:ap-guangzhou-2。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 每个分片的主从节点数量。 // 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinNodeNum与MaxNodeNum分别对应其最小值与最大值。 - NodeNum *int64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *int64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例内存大小。 // - 单位:GB。 // - 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数CPU与Memory分别对应CPU核数与内存规格。 - Memory *int64 `json:"Memory,omitnil" name:"Memory"` + Memory *int64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例硬盘大小。 // - 单位:GB。 // - 取值范围:请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinStorage与MaxStorage分别对应其最小磁盘规格与最大磁盘规格。 - Volume *int64 `json:"Volume,omitnil" name:"Volume"` + Volume *int64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 实例版本信息。具体支持的版本,请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MongoVersionCode为实例所支持的版本信息。版本信息与版本号对应关系如下: // - MONGO_3_WT:MongoDB 3.2 WiredTiger存储引擎版本。 @@ -2541,55 +2861,54 @@ type InquirePriceCreateDBInstancesRequest struct { // - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 // - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 // - MONGO_50_WT:MongoDB 5.0 WiredTiger存储引擎版本。 - MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 机器类型。 // - HIO:高IO型。 // - HIO10G:高IO万兆型。 - MachineCode *string `json:"MachineCode,omitnil" name:"MachineCode"` + MachineCode *string `json:"MachineCode,omitnil,omitempty" name:"MachineCode"` // 实例数量,取值范围为[1,10]。 - GoodsNum *int64 `json:"GoodsNum,omitnil" name:"GoodsNum"` + GoodsNum *int64 `json:"GoodsNum,omitnil,omitempty" name:"GoodsNum"` // 实例类型。 // - REPLSET:副本集。 // - SHARD:分片集群。 // - STANDALONE:单节点。 - ClusterType *string `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *string `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 副本集个数。 // - 创建副本集实例时,该参数固定设置为1。 // - 创建分片集群时,指分片数量,请通过接口[DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)查询,其返回的数据结构SpecItems中的参数MinReplicateSetNum与MaxReplicateSetNum分别对应其最小值与最大值。 // - 若为单节点实例,该参数固定设置为0。 - ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` - // 选择包年包月计费模式时,您需要设定购买实例的时长。即InstanceChargeType设定为PREPAID时,该参数必须配置。 - // - 单位:月。 - // - 可选值包括[1,2,3,4,5,6,7,8,9,10,11,12,24,36]。 - Period *int64 `json:"Period,omitnil" name:"Period"` + // - 选择包年包月计费模式,即 InstanceChargeType 设定为PREPAID时,需设定购买实例的时长。该参数取值可选:[1,2,3,4,5,6,7,8,9,10,11,12,24,36];单位:月。 + // -选择按量计费,即 InstanceChargeType 设定为 **POSTPAID_BY_HOUR** 时,该参数仅可配置为 1。 + Period *int64 `json:"Period,omitnil,omitempty" name:"Period"` // 实例付费方式。 // - PREPAID:包年包月计费。 // - POSTPAID_BY_HOUR:按量计费。 - InstanceChargeType *string `json:"InstanceChargeType,omitnil" name:"InstanceChargeType"` + InstanceChargeType *string `json:"InstanceChargeType,omitnil,omitempty" name:"InstanceChargeType"` // 分片实例询价必填参数,指 Mongos CPU核数,取值范围为[1,16]。 - MongosCpu *uint64 `json:"MongosCpu,omitnil" name:"MongosCpu"` + MongosCpu *uint64 `json:"MongosCpu,omitnil,omitempty" name:"MongosCpu"` // 分片实例询价必填参数,指 Mongos 内存,取值范围为[2,32],单位:GB。 - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // 分片实例询价必填参数,指 Mongos 个数,取值范围为[3,32]。 - MongosNum *uint64 `json:"MongosNum,omitnil" name:"MongosNum"` + MongosNum *uint64 `json:"MongosNum,omitnil,omitempty" name:"MongosNum"` // 分片实例询价必填参数,指 ConfigServer CPU核数,取值为1,单位:GB。 - ConfigServerCpu *uint64 `json:"ConfigServerCpu,omitnil" name:"ConfigServerCpu"` + ConfigServerCpu *uint64 `json:"ConfigServerCpu,omitnil,omitempty" name:"ConfigServerCpu"` // 分片实例询价必填参数,指 ConfigServer 内存大小,取值为2,单位:GB。 - ConfigServerMemory *uint64 `json:"ConfigServerMemory,omitnil" name:"ConfigServerMemory"` + ConfigServerMemory *uint64 `json:"ConfigServerMemory,omitnil,omitempty" name:"ConfigServerMemory"` // 分片实例询价必填参数,指 ConfigServer 磁盘大小,取值为 20,单位:GB。 - ConfigServerVolume *uint64 `json:"ConfigServerVolume,omitnil" name:"ConfigServerVolume"` + ConfigServerVolume *uint64 `json:"ConfigServerVolume,omitnil,omitempty" name:"ConfigServerVolume"` } func (r *InquirePriceCreateDBInstancesRequest) ToJsonString() string { @@ -2630,10 +2949,10 @@ func (r *InquirePriceCreateDBInstancesRequest) FromJsonString(s string) error { // Predefined struct for user type InquirePriceCreateDBInstancesResponseParams struct { // 价格 - Price *DBInstancePrice `json:"Price,omitnil" name:"Price"` + Price *DBInstancePrice `json:"Price,omitnil,omitempty" name:"Price"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type InquirePriceCreateDBInstancesResponse struct { @@ -2655,38 +2974,38 @@ func (r *InquirePriceCreateDBInstancesResponse) FromJsonString(s string) error { // Predefined struct for user type InquirePriceModifyDBInstanceSpecRequestParams struct { // 实例 ID,格式如:cmgo-p8vn****。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 变更配置后实例内存大小,单位:GB。 - Memory *int64 `json:"Memory,omitnil" name:"Memory"` + Memory *int64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 变更配置后实例磁盘大小,单位:GB。 - Volume *int64 `json:"Volume,omitnil" name:"Volume"` + Volume *int64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 实例节点数。默认为不变更节点数,暂不支持变更。 - NodeNum *int64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *int64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例分片数。默认为不变更分片数,暂不支持变更。 - ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` } type InquirePriceModifyDBInstanceSpecRequest struct { *tchttp.BaseRequest // 实例 ID,格式如:cmgo-p8vn****。与云数据库控制台页面中显示的实例ID相同。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 变更配置后实例内存大小,单位:GB。 - Memory *int64 `json:"Memory,omitnil" name:"Memory"` + Memory *int64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 变更配置后实例磁盘大小,单位:GB。 - Volume *int64 `json:"Volume,omitnil" name:"Volume"` + Volume *int64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 实例节点数。默认为不变更节点数,暂不支持变更。 - NodeNum *int64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *int64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例分片数。默认为不变更分片数,暂不支持变更。 - ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *int64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` } func (r *InquirePriceModifyDBInstanceSpecRequest) ToJsonString() string { @@ -2715,10 +3034,10 @@ func (r *InquirePriceModifyDBInstanceSpecRequest) FromJsonString(s string) error // Predefined struct for user type InquirePriceModifyDBInstanceSpecResponseParams struct { // 价格。 - Price *DBInstancePrice `json:"Price,omitnil" name:"Price"` + Price *DBInstancePrice `json:"Price,omitnil,omitempty" name:"Price"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type InquirePriceModifyDBInstanceSpecResponse struct { @@ -2740,20 +3059,20 @@ func (r *InquirePriceModifyDBInstanceSpecResponse) FromJsonString(s string) erro // Predefined struct for user type InquirePriceRenewDBInstancesRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同,接口单次最多只支持5个实例进行操作。 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 预付费模式(即包年包月)相关参数设置。通过该参数可以指定包年包月实例的续费时长、是否设置自动续费等属性。 - InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil" name:"InstanceChargePrepaid"` + InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil,omitempty" name:"InstanceChargePrepaid"` } type InquirePriceRenewDBInstancesRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同,接口单次最多只支持5个实例进行操作。 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 预付费模式(即包年包月)相关参数设置。通过该参数可以指定包年包月实例的续费时长、是否设置自动续费等属性。 - InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil" name:"InstanceChargePrepaid"` + InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil,omitempty" name:"InstanceChargePrepaid"` } func (r *InquirePriceRenewDBInstancesRequest) ToJsonString() string { @@ -2779,10 +3098,10 @@ func (r *InquirePriceRenewDBInstancesRequest) FromJsonString(s string) error { // Predefined struct for user type InquirePriceRenewDBInstancesResponseParams struct { // 价格 - Price *DBInstancePrice `json:"Price,omitnil" name:"Price"` + Price *DBInstancePrice `json:"Price,omitnil,omitempty" name:"Price"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type InquirePriceRenewDBInstancesResponse struct { @@ -2804,7 +3123,7 @@ func (r *InquirePriceRenewDBInstancesResponse) FromJsonString(s string) error { type InstanceChargePrepaid struct { // 购买实例的时长,单位:月。取值范围:1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36。默认为1。 // (InquirePriceRenewDBInstances,RenewDBInstances调用时必填) - Period *int64 `json:"Period,omitnil" name:"Period"` + Period *int64 `json:"Period,omitnil,omitempty" name:"Period"` // 自动续费标识。取值范围: // NOTIFY_AND_AUTO_RENEW:通知过期且自动续费 @@ -2813,292 +3132,296 @@ type InstanceChargePrepaid struct { // // 默认取值:NOTIFY_AND_MANUAL_RENEW。若该参数指定为NOTIFY_AND_AUTO_RENEW,在账户余额充足的情况下,实例到期后将按月自动续费。 // (InquirePriceRenewDBInstances,RenewDBInstances调用时必填) - RenewFlag *string `json:"RenewFlag,omitnil" name:"RenewFlag"` + RenewFlag *string `json:"RenewFlag,omitnil,omitempty" name:"RenewFlag"` } type InstanceDetail struct { // 实例ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 实例名称。 - InstanceName *string `json:"InstanceName,omitnil" name:"InstanceName"` + InstanceName *string `json:"InstanceName,omitnil,omitempty" name:"InstanceName"` // 付费类型,可能的返回值:1-包年包月;0-按量计费 - PayMode *uint64 `json:"PayMode,omitnil" name:"PayMode"` + PayMode *uint64 `json:"PayMode,omitnil,omitempty" name:"PayMode"` // 项目ID。 - ProjectId *uint64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *uint64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` // 集群类型,可能的返回值:0-副本集实例,1-分片实例。 - ClusterType *uint64 `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *uint64 `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 地域信息。 - Region *string `json:"Region,omitnil" name:"Region"` + Region *string `json:"Region,omitnil,omitempty" name:"Region"` // 可用区信息。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 网络类型,可能的返回值:0-基础网络,1-私有网络 - NetType *uint64 `json:"NetType,omitnil" name:"NetType"` + NetType *uint64 `json:"NetType,omitnil,omitempty" name:"NetType"` // 私有网络的ID。 - VpcId *string `json:"VpcId,omitnil" name:"VpcId"` + VpcId *string `json:"VpcId,omitnil,omitempty" name:"VpcId"` // 私有网络的子网ID。 - SubnetId *string `json:"SubnetId,omitnil" name:"SubnetId"` + SubnetId *string `json:"SubnetId,omitnil,omitempty" name:"SubnetId"` // 实例状态,可能的返回值:0-待初始化,1-流程处理中,2-运行中,-2-实例已过期。 - Status *int64 `json:"Status,omitnil" name:"Status"` + Status *int64 `json:"Status,omitnil,omitempty" name:"Status"` // 实例IP。 - Vip *string `json:"Vip,omitnil" name:"Vip"` + Vip *string `json:"Vip,omitnil,omitempty" name:"Vip"` // 端口号。 - Vport *uint64 `json:"Vport,omitnil" name:"Vport"` + Vport *uint64 `json:"Vport,omitnil,omitempty" name:"Vport"` // 实例创建时间。 - CreateTime *string `json:"CreateTime,omitnil" name:"CreateTime"` + CreateTime *string `json:"CreateTime,omitnil,omitempty" name:"CreateTime"` // 实例到期时间。 - DeadLine *string `json:"DeadLine,omitnil" name:"DeadLine"` + DeadLine *string `json:"DeadLine,omitnil,omitempty" name:"DeadLine"` // 实例版本信息。 - MongoVersion *string `json:"MongoVersion,omitnil" name:"MongoVersion"` + MongoVersion *string `json:"MongoVersion,omitnil,omitempty" name:"MongoVersion"` // 实例内存规格,单位为MB。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例磁盘规格,单位为MB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 实例CPU核心数。 - CpuNum *uint64 `json:"CpuNum,omitnil" name:"CpuNum"` + CpuNum *uint64 `json:"CpuNum,omitnil,omitempty" name:"CpuNum"` // 实例机器类型。 - MachineType *string `json:"MachineType,omitnil" name:"MachineType"` + MachineType *string `json:"MachineType,omitnil,omitempty" name:"MachineType"` // 实例从节点数。 - SecondaryNum *uint64 `json:"SecondaryNum,omitnil" name:"SecondaryNum"` + SecondaryNum *uint64 `json:"SecondaryNum,omitnil,omitempty" name:"SecondaryNum"` // 实例分片数。 - ReplicationSetNum *uint64 `json:"ReplicationSetNum,omitnil" name:"ReplicationSetNum"` + ReplicationSetNum *uint64 `json:"ReplicationSetNum,omitnil,omitempty" name:"ReplicationSetNum"` // 实例自动续费标志,可能的返回值:0-手动续费,1-自动续费,2-确认不续费。 - AutoRenewFlag *int64 `json:"AutoRenewFlag,omitnil" name:"AutoRenewFlag"` + AutoRenewFlag *int64 `json:"AutoRenewFlag,omitnil,omitempty" name:"AutoRenewFlag"` // 已用容量,单位MB。 - UsedVolume *uint64 `json:"UsedVolume,omitnil" name:"UsedVolume"` + UsedVolume *uint64 `json:"UsedVolume,omitnil,omitempty" name:"UsedVolume"` // 维护窗口起始时间。 - MaintenanceStart *string `json:"MaintenanceStart,omitnil" name:"MaintenanceStart"` + MaintenanceStart *string `json:"MaintenanceStart,omitnil,omitempty" name:"MaintenanceStart"` // 维护窗口结束时间。 - MaintenanceEnd *string `json:"MaintenanceEnd,omitnil" name:"MaintenanceEnd"` + MaintenanceEnd *string `json:"MaintenanceEnd,omitnil,omitempty" name:"MaintenanceEnd"` // 分片信息。 - ReplicaSets []*ShardInfo `json:"ReplicaSets,omitnil" name:"ReplicaSets"` + ReplicaSets []*ShardInfo `json:"ReplicaSets,omitnil,omitempty" name:"ReplicaSets"` // 只读实例信息。 - ReadonlyInstances []*DBInstanceInfo `json:"ReadonlyInstances,omitnil" name:"ReadonlyInstances"` + ReadonlyInstances []*DBInstanceInfo `json:"ReadonlyInstances,omitnil,omitempty" name:"ReadonlyInstances"` // 灾备实例信息。 - StandbyInstances []*DBInstanceInfo `json:"StandbyInstances,omitnil" name:"StandbyInstances"` + StandbyInstances []*DBInstanceInfo `json:"StandbyInstances,omitnil,omitempty" name:"StandbyInstances"` // 临时实例信息。 - CloneInstances []*DBInstanceInfo `json:"CloneInstances,omitnil" name:"CloneInstances"` + CloneInstances []*DBInstanceInfo `json:"CloneInstances,omitnil,omitempty" name:"CloneInstances"` // 关联实例信息,对于正式实例,该字段表示它的临时实例信息;对于临时实例,则表示它的正式实例信息;如果为只读/灾备实例,则表示他的主实例信息。 - RelatedInstance *DBInstanceInfo `json:"RelatedInstance,omitnil" name:"RelatedInstance"` + RelatedInstance *DBInstanceInfo `json:"RelatedInstance,omitnil,omitempty" name:"RelatedInstance"` // 实例标签信息集合。 - Tags []*TagInfo `json:"Tags,omitnil" name:"Tags"` + Tags []*TagInfo `json:"Tags,omitnil,omitempty" name:"Tags"` // 实例版本标记。 - InstanceVer *uint64 `json:"InstanceVer,omitnil" name:"InstanceVer"` + InstanceVer *uint64 `json:"InstanceVer,omitnil,omitempty" name:"InstanceVer"` // 实例版本标记。 - ClusterVer *uint64 `json:"ClusterVer,omitnil" name:"ClusterVer"` + ClusterVer *uint64 `json:"ClusterVer,omitnil,omitempty" name:"ClusterVer"` // 协议信息,可能的返回值:1-mongodb,2-dynamodb。 - Protocol *uint64 `json:"Protocol,omitnil" name:"Protocol"` + Protocol *uint64 `json:"Protocol,omitnil,omitempty" name:"Protocol"` // 实例类型,可能的返回值,1-正式实例,2-临时实例,3-只读实例,4-灾备实例 - InstanceType *uint64 `json:"InstanceType,omitnil" name:"InstanceType"` + InstanceType *uint64 `json:"InstanceType,omitnil,omitempty" name:"InstanceType"` // 实例状态描述 - InstanceStatusDesc *string `json:"InstanceStatusDesc,omitnil" name:"InstanceStatusDesc"` + InstanceStatusDesc *string `json:"InstanceStatusDesc,omitnil,omitempty" name:"InstanceStatusDesc"` // 实例对应的物理实例id,回档并替换过的实例有不同的InstanceId和RealInstanceId,从barad获取监控数据等场景下需要用物理id获取 - RealInstanceId *string `json:"RealInstanceId,omitnil" name:"RealInstanceId"` + RealInstanceId *string `json:"RealInstanceId,omitnil,omitempty" name:"RealInstanceId"` + + // 实例当前可用区信息。 + // 注意:此字段可能返回 null,表示取不到有效值。 + ZoneList []*string `json:"ZoneList,omitnil,omitempty" name:"ZoneList"` // mongos节点个数。 // 注意:此字段可能返回 null,表示取不到有效值。 - MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil" name:"MongosNodeNum"` + MongosNodeNum *uint64 `json:"MongosNodeNum,omitnil,omitempty" name:"MongosNodeNum"` // mongos节点内存。 // 注意:此字段可能返回 null,表示取不到有效值。 - MongosMemory *uint64 `json:"MongosMemory,omitnil" name:"MongosMemory"` + MongosMemory *uint64 `json:"MongosMemory,omitnil,omitempty" name:"MongosMemory"` // mongos节点CPU核数。 // 注意:此字段可能返回 null,表示取不到有效值。 - MongosCpuNum *uint64 `json:"MongosCpuNum,omitnil" name:"MongosCpuNum"` + MongosCpuNum *uint64 `json:"MongosCpuNum,omitnil,omitempty" name:"MongosCpuNum"` // Config Server节点个数。 // 注意:此字段可能返回 null,表示取不到有效值。 - ConfigServerNodeNum *uint64 `json:"ConfigServerNodeNum,omitnil" name:"ConfigServerNodeNum"` + ConfigServerNodeNum *uint64 `json:"ConfigServerNodeNum,omitnil,omitempty" name:"ConfigServerNodeNum"` // Config Server节点内存。 // 注意:此字段可能返回 null,表示取不到有效值。 - ConfigServerMemory *uint64 `json:"ConfigServerMemory,omitnil" name:"ConfigServerMemory"` + ConfigServerMemory *uint64 `json:"ConfigServerMemory,omitnil,omitempty" name:"ConfigServerMemory"` // Config Server节点磁盘大小。 // 注意:此字段可能返回 null,表示取不到有效值。 - ConfigServerVolume *uint64 `json:"ConfigServerVolume,omitnil" name:"ConfigServerVolume"` + ConfigServerVolume *uint64 `json:"ConfigServerVolume,omitnil,omitempty" name:"ConfigServerVolume"` // Config Server节点CPU核数。 // 注意:此字段可能返回 null,表示取不到有效值。 - ConfigServerCpuNum *uint64 `json:"ConfigServerCpuNum,omitnil" name:"ConfigServerCpuNum"` + ConfigServerCpuNum *uint64 `json:"ConfigServerCpuNum,omitnil,omitempty" name:"ConfigServerCpuNum"` // readonly节点个数。 // 注意:此字段可能返回 null,表示取不到有效值。 - ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil" name:"ReadonlyNodeNum"` + ReadonlyNodeNum *uint64 `json:"ReadonlyNodeNum,omitnil,omitempty" name:"ReadonlyNodeNum"` } type InstanceEnumParam struct { // 参数当前值。 - CurrentValue *string `json:"CurrentValue,omitnil" name:"CurrentValue"` + CurrentValue *string `json:"CurrentValue,omitnil,omitempty" name:"CurrentValue"` // 参数默认值。 - DefaultValue *string `json:"DefaultValue,omitnil" name:"DefaultValue"` + DefaultValue *string `json:"DefaultValue,omitnil,omitempty" name:"DefaultValue"` // 枚举值,所有支持的值。 - EnumValue []*string `json:"EnumValue,omitnil" name:"EnumValue"` + EnumValue []*string `json:"EnumValue,omitnil,omitempty" name:"EnumValue"` // 参数修改之后是否需要重启生效。 // - 1:需要重启后生效。 // - 0:无需重启,设置成功即可生效。 - NeedRestart *string `json:"NeedRestart,omitnil" name:"NeedRestart"` + NeedRestart *string `json:"NeedRestart,omitnil,omitempty" name:"NeedRestart"` // 参数名称。 - ParamName *string `json:"ParamName,omitnil" name:"ParamName"` + ParamName *string `json:"ParamName,omitnil,omitempty" name:"ParamName"` // 参数说明。 - Tips []*string `json:"Tips,omitnil" name:"Tips"` + Tips []*string `json:"Tips,omitnil,omitempty" name:"Tips"` // 参数值类型说明。 - ValueType *string `json:"ValueType,omitnil" name:"ValueType"` + ValueType *string `json:"ValueType,omitnil,omitempty" name:"ValueType"` // 是否为运行中参数值。 // - 1:运行中参数值。 // - 0:非运行中参数值。 - Status *uint64 `json:"Status,omitnil" name:"Status"` + Status *uint64 `json:"Status,omitnil,omitempty" name:"Status"` } type InstanceIntegerParam struct { // 参数当前值。 - CurrentValue *string `json:"CurrentValue,omitnil" name:"CurrentValue"` + CurrentValue *string `json:"CurrentValue,omitnil,omitempty" name:"CurrentValue"` // 参数默认值。 - DefaultValue *string `json:"DefaultValue,omitnil" name:"DefaultValue"` + DefaultValue *string `json:"DefaultValue,omitnil,omitempty" name:"DefaultValue"` // 参数最大值。 - Max *string `json:"Max,omitnil" name:"Max"` + Max *string `json:"Max,omitnil,omitempty" name:"Max"` // 最小值。 - Min *string `json:"Min,omitnil" name:"Min"` + Min *string `json:"Min,omitnil,omitempty" name:"Min"` // 参数修改之后是否需要重启生效。 // - 1:需要重启后生效。 // - 0:无需重启,设置成功即可生效。 - NeedRestart *string `json:"NeedRestart,omitnil" name:"NeedRestart"` + NeedRestart *string `json:"NeedRestart,omitnil,omitempty" name:"NeedRestart"` // 参数名称。 - ParamName *string `json:"ParamName,omitnil" name:"ParamName"` + ParamName *string `json:"ParamName,omitnil,omitempty" name:"ParamName"` // 参数说明。 - Tips []*string `json:"Tips,omitnil" name:"Tips"` + Tips []*string `json:"Tips,omitnil,omitempty" name:"Tips"` // 参数类型。 - ValueType *string `json:"ValueType,omitnil" name:"ValueType"` + ValueType *string `json:"ValueType,omitnil,omitempty" name:"ValueType"` // 是否为运行中参数值。 // - 1:运行中参数值。 // - 0:非运行中参数值。 - Status *uint64 `json:"Status,omitnil" name:"Status"` + Status *uint64 `json:"Status,omitnil,omitempty" name:"Status"` // 冗余字段,可忽略。 - Unit *string `json:"Unit,omitnil" name:"Unit"` + Unit *string `json:"Unit,omitnil,omitempty" name:"Unit"` } type InstanceMultiParam struct { // 参数当前值。 - CurrentValue *string `json:"CurrentValue,omitnil" name:"CurrentValue"` + CurrentValue *string `json:"CurrentValue,omitnil,omitempty" name:"CurrentValue"` // 参数默认值。 - DefaultValue *string `json:"DefaultValue,omitnil" name:"DefaultValue"` + DefaultValue *string `json:"DefaultValue,omitnil,omitempty" name:"DefaultValue"` // 参考值范围。 - EnumValue []*string `json:"EnumValue,omitnil" name:"EnumValue"` + EnumValue []*string `json:"EnumValue,omitnil,omitempty" name:"EnumValue"` // 参数修改后是否需要重启才会生效。 // - 1:需要重启后生效。 // - 0:无需重启,设置成功即可生效。 - NeedRestart *string `json:"NeedRestart,omitnil" name:"NeedRestart"` + NeedRestart *string `json:"NeedRestart,omitnil,omitempty" name:"NeedRestart"` // 参数名称。 - ParamName *string `json:"ParamName,omitnil" name:"ParamName"` + ParamName *string `json:"ParamName,omitnil,omitempty" name:"ParamName"` // 是否为运行中参数值。 // - 1:运行中参数值。 // - 0:非运行中参数值。 - Status *uint64 `json:"Status,omitnil" name:"Status"` + Status *uint64 `json:"Status,omitnil,omitempty" name:"Status"` // 参数说明。 - Tips []*string `json:"Tips,omitnil" name:"Tips"` + Tips []*string `json:"Tips,omitnil,omitempty" name:"Tips"` // 当前值的类型描述,默认为multi。 - ValueType *string `json:"ValueType,omitnil" name:"ValueType"` + ValueType *string `json:"ValueType,omitnil,omitempty" name:"ValueType"` } type InstanceTextParam struct { // 参数当前值。 - CurrentValue *string `json:"CurrentValue,omitnil" name:"CurrentValue"` + CurrentValue *string `json:"CurrentValue,omitnil,omitempty" name:"CurrentValue"` // 参数默认值。 - DefaultValue *string `json:"DefaultValue,omitnil" name:"DefaultValue"` + DefaultValue *string `json:"DefaultValue,omitnil,omitempty" name:"DefaultValue"` // 修改参数值之后是否需要重启。 - NeedRestart *string `json:"NeedRestart,omitnil" name:"NeedRestart"` + NeedRestart *string `json:"NeedRestart,omitnil,omitempty" name:"NeedRestart"` // 参数名称。 - ParamName *string `json:"ParamName,omitnil" name:"ParamName"` + ParamName *string `json:"ParamName,omitnil,omitempty" name:"ParamName"` // Text 类型参数对应的值。 - TextValue *string `json:"TextValue,omitnil" name:"TextValue"` + TextValue *string `json:"TextValue,omitnil,omitempty" name:"TextValue"` // 参数说明。 - Tips []*string `json:"Tips,omitnil" name:"Tips"` + Tips []*string `json:"Tips,omitnil,omitempty" name:"Tips"` // 参数值类型说明。 - ValueType *string `json:"ValueType,omitnil" name:"ValueType"` + ValueType *string `json:"ValueType,omitnil,omitempty" name:"ValueType"` // 是否为运行中的参数值。 // - 1:运行中参数值。 // - 0:非运行中参数值。 - Status *string `json:"Status,omitnil" name:"Status"` + Status *string `json:"Status,omitnil,omitempty" name:"Status"` } // Predefined struct for user type IsolateDBInstanceRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type IsolateDBInstanceRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *IsolateDBInstanceRequest) ToJsonString() string { @@ -3123,10 +3446,10 @@ func (r *IsolateDBInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type IsolateDBInstanceResponseParams struct { // 异步任务的请求 ID,可使用此 ID 查询异步任务的执行结果。 - AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil,omitempty" name:"AsyncRequestId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type IsolateDBInstanceResponse struct { @@ -3145,23 +3468,49 @@ func (r *IsolateDBInstanceResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +type KMSInfoDetail struct { + // 主密钥 ID。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyId *string `json:"KeyId,omitnil,omitempty" name:"KeyId"` + + // 主密钥名称。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyName *string `json:"KeyName,omitnil,omitempty" name:"KeyName"` + + // 实例与密钥绑定时间。 + // 注意:此字段可能返回 null,表示取不到有效值。 + CreateTime *string `json:"CreateTime,omitnil,omitempty" name:"CreateTime"` + + // 密钥状态。 + // 注意:此字段可能返回 null,表示取不到有效值。 + Status *string `json:"Status,omitnil,omitempty" name:"Status"` + + // 密钥用途。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyUsage *string `json:"KeyUsage,omitnil,omitempty" name:"KeyUsage"` + + // 密钥来源。 + // 注意:此字段可能返回 null,表示取不到有效值。 + KeyOrigin *string `json:"KeyOrigin,omitnil,omitempty" name:"KeyOrigin"` +} + // Predefined struct for user type KillOpsRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 待终止的操作 - Operations []*Operation `json:"Operations,omitnil" name:"Operations"` + Operations []*Operation `json:"Operations,omitnil,omitempty" name:"Operations"` } type KillOpsRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 待终止的操作 - Operations []*Operation `json:"Operations,omitnil" name:"Operations"` + Operations []*Operation `json:"Operations,omitnil,omitempty" name:"Operations"` } func (r *KillOpsRequest) ToJsonString() string { @@ -3186,8 +3535,8 @@ func (r *KillOpsRequest) FromJsonString(s string) error { // Predefined struct for user type KillOpsResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type KillOpsResponse struct { @@ -3208,39 +3557,43 @@ func (r *KillOpsResponse) FromJsonString(s string) error { // Predefined struct for user type ModifyDBInstanceNetworkAddressRequestParams struct { - // 实例ID - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + // 指定需修改网络的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` - // 原IP保留时长,单位为分钟;原IP会在约定时间后释放,在释放前原IP和新IP均可访问;0表示立即回收原IP - OldIpExpiredTime *uint64 `json:"OldIpExpiredTime,omitnil" name:"OldIpExpiredTime"` + // 原 IP 地址保留时长。 + // - 单位为分钟,0表示立即回收原 IP 地址。 + // - 原 IP 将在约定时间后释放,在释放前原 IP和新 IP均可访问。 + OldIpExpiredTime *uint64 `json:"OldIpExpiredTime,omitnil,omitempty" name:"OldIpExpiredTime"` - // 切换后IP地址的归属私有网络统一ID,若为基础网络,该字段为空 - NewUniqVpcId *string `json:"NewUniqVpcId,omitnil" name:"NewUniqVpcId"` + // 切换后的私有网络 ID,若实例当前为基础网络,该字段无需配置。 + NewUniqVpcId *string `json:"NewUniqVpcId,omitnil,omitempty" name:"NewUniqVpcId"` - // 切换后IP地址的归属子网统一ID,若为基础网络,该字段为空 - NewUniqSubnetId *string `json:"NewUniqSubnetId,omitnil" name:"NewUniqSubnetId"` + // 切换私有网络的子网 ID。若实例当前为基础网络,该字段无需配置。 + NewUniqSubnetId *string `json:"NewUniqSubnetId,omitnil,omitempty" name:"NewUniqSubnetId"` - // 待修改IP信息 - NetworkAddresses []*ModifyNetworkAddress `json:"NetworkAddresses,omitnil" name:"NetworkAddresses"` + // IP 地址信息,包含新 IP 地址与 原 IP 地址。 + NetworkAddresses []*ModifyNetworkAddress `json:"NetworkAddresses,omitnil,omitempty" name:"NetworkAddresses"` } type ModifyDBInstanceNetworkAddressRequest struct { *tchttp.BaseRequest - // 实例ID - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + // 指定需修改网络的实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` - // 原IP保留时长,单位为分钟;原IP会在约定时间后释放,在释放前原IP和新IP均可访问;0表示立即回收原IP - OldIpExpiredTime *uint64 `json:"OldIpExpiredTime,omitnil" name:"OldIpExpiredTime"` + // 原 IP 地址保留时长。 + // - 单位为分钟,0表示立即回收原 IP 地址。 + // - 原 IP 将在约定时间后释放,在释放前原 IP和新 IP均可访问。 + OldIpExpiredTime *uint64 `json:"OldIpExpiredTime,omitnil,omitempty" name:"OldIpExpiredTime"` - // 切换后IP地址的归属私有网络统一ID,若为基础网络,该字段为空 - NewUniqVpcId *string `json:"NewUniqVpcId,omitnil" name:"NewUniqVpcId"` + // 切换后的私有网络 ID,若实例当前为基础网络,该字段无需配置。 + NewUniqVpcId *string `json:"NewUniqVpcId,omitnil,omitempty" name:"NewUniqVpcId"` - // 切换后IP地址的归属子网统一ID,若为基础网络,该字段为空 - NewUniqSubnetId *string `json:"NewUniqSubnetId,omitnil" name:"NewUniqSubnetId"` + // 切换私有网络的子网 ID。若实例当前为基础网络,该字段无需配置。 + NewUniqSubnetId *string `json:"NewUniqSubnetId,omitnil,omitempty" name:"NewUniqSubnetId"` - // 待修改IP信息 - NetworkAddresses []*ModifyNetworkAddress `json:"NetworkAddresses,omitnil" name:"NetworkAddresses"` + // IP 地址信息,包含新 IP 地址与 原 IP 地址。 + NetworkAddresses []*ModifyNetworkAddress `json:"NetworkAddresses,omitnil,omitempty" name:"NetworkAddresses"` } func (r *ModifyDBInstanceNetworkAddressRequest) ToJsonString() string { @@ -3268,8 +3621,11 @@ func (r *ModifyDBInstanceNetworkAddressRequest) FromJsonString(s string) error { // Predefined struct for user type ModifyDBInstanceNetworkAddressResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 修改网络异步流程任务ID。 + FlowId *uint64 `json:"FlowId,omitnil,omitempty" name:"FlowId"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type ModifyDBInstanceNetworkAddressResponse struct { @@ -3291,20 +3647,20 @@ func (r *ModifyDBInstanceNetworkAddressResponse) FromJsonString(s string) error // Predefined struct for user type ModifyDBInstanceSecurityGroupRequestParams struct { // 实例 ID。例如:cmgo-7pje****。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 目标安全组 ID。请通过接口[DescribeSecurityGroup](https://cloud.tencent.com/document/product/240/55675)查看具体的安全组 ID。 - SecurityGroupIds []*string `json:"SecurityGroupIds,omitnil" name:"SecurityGroupIds"` + SecurityGroupIds []*string `json:"SecurityGroupIds,omitnil,omitempty" name:"SecurityGroupIds"` } type ModifyDBInstanceSecurityGroupRequest struct { *tchttp.BaseRequest // 实例 ID。例如:cmgo-7pje****。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 目标安全组 ID。请通过接口[DescribeSecurityGroup](https://cloud.tencent.com/document/product/240/55675)查看具体的安全组 ID。 - SecurityGroupIds []*string `json:"SecurityGroupIds,omitnil" name:"SecurityGroupIds"` + SecurityGroupIds []*string `json:"SecurityGroupIds,omitnil,omitempty" name:"SecurityGroupIds"` } func (r *ModifyDBInstanceSecurityGroupRequest) ToJsonString() string { @@ -3329,8 +3685,8 @@ func (r *ModifyDBInstanceSecurityGroupRequest) FromJsonString(s string) error { // Predefined struct for user type ModifyDBInstanceSecurityGroupResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type ModifyDBInstanceSecurityGroupResponse struct { @@ -3352,78 +3708,78 @@ func (r *ModifyDBInstanceSecurityGroupResponse) FromJsonString(s string) error { // Predefined struct for user type ModifyDBInstanceSpecRequestParams struct { // 实例 ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 实例配置变更后的内存大小。 // - 单位:GB。 // - 内存和磁盘必须同时升配或同时降配,即 Memory 与 Volume 需同时配置变更。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例配置变更后的硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // (已废弃) 请使用ResizeOplog独立接口完成。 // // 实例配置变更后 Oplog 的大小。 // - 单位:GB。 // - 默认 Oplog 占用容量为磁盘空间的10%。系统允许设置的 Oplog 容量范围为磁盘空间的[10%,90%]。 - OplogSize *uint64 `json:"OplogSize,omitnil" name:"OplogSize"` + OplogSize *uint64 `json:"OplogSize,omitnil,omitempty" name:"OplogSize"` // 实例变更后的节点数(mongod节点或mongos节点或readonly节点调整后的节点数,具体类型取决于AddNodeList或RemoveNodeList参数的节点类型)。 // - NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例变更后的分片数。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` // 实例配置变更的切换时间。 - InMaintenance *uint64 `json:"InMaintenance,omitnil" name:"InMaintenance"` + InMaintenance *uint64 `json:"InMaintenance,omitnil,omitempty" name:"InMaintenance"` // 新增节点属性列表。 - AddNodeList []*AddNodeList `json:"AddNodeList,omitnil" name:"AddNodeList"` + AddNodeList []*AddNodeList `json:"AddNodeList,omitnil,omitempty" name:"AddNodeList"` // 删除节点属性列表。 - RemoveNodeList []*RemoveNodeList `json:"RemoveNodeList,omitnil" name:"RemoveNodeList"` + RemoveNodeList []*RemoveNodeList `json:"RemoveNodeList,omitnil,omitempty" name:"RemoveNodeList"` } type ModifyDBInstanceSpecRequest struct { *tchttp.BaseRequest // 实例 ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 实例配置变更后的内存大小。 // - 单位:GB。 // - 内存和磁盘必须同时升配或同时降配,即 Memory 与 Volume 需同时配置变更。 - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 实例配置变更后的硬盘大小,单位:GB。 - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // (已废弃) 请使用ResizeOplog独立接口完成。 // // 实例配置变更后 Oplog 的大小。 // - 单位:GB。 // - 默认 Oplog 占用容量为磁盘空间的10%。系统允许设置的 Oplog 容量范围为磁盘空间的[10%,90%]。 - OplogSize *uint64 `json:"OplogSize,omitnil" name:"OplogSize"` + OplogSize *uint64 `json:"OplogSize,omitnil,omitempty" name:"OplogSize"` // 实例变更后的节点数(mongod节点或mongos节点或readonly节点调整后的节点数,具体类型取决于AddNodeList或RemoveNodeList参数的节点类型)。 // - NodeNum *uint64 `json:"NodeNum,omitnil" name:"NodeNum"` + NodeNum *uint64 `json:"NodeNum,omitnil,omitempty" name:"NodeNum"` // 实例变更后的分片数。 - ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil" name:"ReplicateSetNum"` + ReplicateSetNum *uint64 `json:"ReplicateSetNum,omitnil,omitempty" name:"ReplicateSetNum"` // 实例配置变更的切换时间。 - InMaintenance *uint64 `json:"InMaintenance,omitnil" name:"InMaintenance"` + InMaintenance *uint64 `json:"InMaintenance,omitnil,omitempty" name:"InMaintenance"` // 新增节点属性列表。 - AddNodeList []*AddNodeList `json:"AddNodeList,omitnil" name:"AddNodeList"` + AddNodeList []*AddNodeList `json:"AddNodeList,omitnil,omitempty" name:"AddNodeList"` // 删除节点属性列表。 - RemoveNodeList []*RemoveNodeList `json:"RemoveNodeList,omitnil" name:"RemoveNodeList"` + RemoveNodeList []*RemoveNodeList `json:"RemoveNodeList,omitnil,omitempty" name:"RemoveNodeList"` } func (r *ModifyDBInstanceSpecRequest) ToJsonString() string { @@ -3456,10 +3812,10 @@ func (r *ModifyDBInstanceSpecRequest) FromJsonString(s string) error { // Predefined struct for user type ModifyDBInstanceSpecResponseParams struct { // 订单 ID。 - DealId *string `json:"DealId,omitnil" name:"DealId"` + DealId *string `json:"DealId,omitnil,omitempty" name:"DealId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type ModifyDBInstanceSpecResponse struct { @@ -3478,81 +3834,169 @@ func (r *ModifyDBInstanceSpecResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +// Predefined struct for user +type ModifyInstanceParamsRequestParams struct { + // 指定实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 指定需修改的参数名及值。当前所支持的参数名及对应取值范围,请通过 [DescribeInstanceParams ](https://cloud.tencent.com/document/product/240/65903)获取。 + InstanceParams []*ModifyMongoDBParamType `json:"InstanceParams,omitnil,omitempty" name:"InstanceParams"` + + // 操作类型,包括: + // - IMMEDIATELY:立即调整。 + // - DELAY:延迟调整。可选字段,不配置该参数则默认为立即调整。 + ModifyType *string `json:"ModifyType,omitnil,omitempty" name:"ModifyType"` +} + +type ModifyInstanceParamsRequest struct { + *tchttp.BaseRequest + + // 指定实例 ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 指定需修改的参数名及值。当前所支持的参数名及对应取值范围,请通过 [DescribeInstanceParams ](https://cloud.tencent.com/document/product/240/65903)获取。 + InstanceParams []*ModifyMongoDBParamType `json:"InstanceParams,omitnil,omitempty" name:"InstanceParams"` + + // 操作类型,包括: + // - IMMEDIATELY:立即调整。 + // - DELAY:延迟调整。可选字段,不配置该参数则默认为立即调整。 + ModifyType *string `json:"ModifyType,omitnil,omitempty" name:"ModifyType"` +} + +func (r *ModifyInstanceParamsRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *ModifyInstanceParamsRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + delete(f, "InstanceParams") + delete(f, "ModifyType") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "ModifyInstanceParamsRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type ModifyInstanceParamsResponseParams struct { + // 修改参数配置是否生效。 + // - true:参数修改后的值已生效。 + // - false:执行失败。 + Changed *bool `json:"Changed,omitnil,omitempty" name:"Changed"` + + // 该参数暂时无意义(兼容前端保留)。 + TaskId *uint64 `json:"TaskId,omitnil,omitempty" name:"TaskId"` + + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type ModifyInstanceParamsResponse struct { + *tchttp.BaseResponse + Response *ModifyInstanceParamsResponseParams `json:"Response"` +} + +func (r *ModifyInstanceParamsResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *ModifyInstanceParamsResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +type ModifyMongoDBParamType struct { + // 需要修改的参数名称,请严格参考通过 DescribeInstanceParams 获取的当前实例支持的参数名。 + Key *string `json:"Key,omitnil,omitempty" name:"Key"` + + // 需要修改的参数名称对应的值,请严格参考通过 DescribeInstanceParams 获取的参数对应的值的范围。 + Value *string `json:"Value,omitnil,omitempty" name:"Value"` +} + type ModifyNetworkAddress struct { // 新IP地址。 - NewIPAddress *string `json:"NewIPAddress,omitnil" name:"NewIPAddress"` + NewIPAddress *string `json:"NewIPAddress,omitnil,omitempty" name:"NewIPAddress"` // 原IP地址。 - OldIpAddress *string `json:"OldIpAddress,omitnil" name:"OldIpAddress"` + OldIpAddress *string `json:"OldIpAddress,omitnil,omitempty" name:"OldIpAddress"` } type NodeProperty struct { // 节点所在的可用区。 // 注意:此字段可能返回 null,表示取不到有效值。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 节点名称。 // 注意:此字段可能返回 null,表示取不到有效值。 - NodeName *string `json:"NodeName,omitnil" name:"NodeName"` + NodeName *string `json:"NodeName,omitnil,omitempty" name:"NodeName"` // 节点访问地址。 // 注意:此字段可能返回 null,表示取不到有效值。 - Address *string `json:"Address,omitnil" name:"Address"` + Address *string `json:"Address,omitnil,omitempty" name:"Address"` // 角色。 // 注意:此字段可能返回 null,表示取不到有效值。 - Role *string `json:"Role,omitnil" name:"Role"` + Role *string `json:"Role,omitnil,omitempty" name:"Role"` // 是否为Hidden节点 // 注意:此字段可能返回 null,表示取不到有效值。 - Hidden *bool `json:"Hidden,omitnil" name:"Hidden"` + Hidden *bool `json:"Hidden,omitnil,omitempty" name:"Hidden"` // 节点状态,包括:ORMAL/STARTUP/RECOVERING/STARTUP2/UNKNOWN/DOWN/ROLLBACK/REMOVED等。 // 注意:此字段可能返回 null,表示取不到有效值。 - Status *string `json:"Status,omitnil" name:"Status"` + Status *string `json:"Status,omitnil,omitempty" name:"Status"` // 主从延迟,单位秒。 // 注意:此字段可能返回 null,表示取不到有效值。 - SlaveDelay *int64 `json:"SlaveDelay,omitnil" name:"SlaveDelay"` + SlaveDelay *int64 `json:"SlaveDelay,omitnil,omitempty" name:"SlaveDelay"` // 节点优先级。 // 注意:此字段可能返回 null,表示取不到有效值。 - Priority *int64 `json:"Priority,omitnil" name:"Priority"` + Priority *int64 `json:"Priority,omitnil,omitempty" name:"Priority"` // 节点投票权。 // 注意:此字段可能返回 null,表示取不到有效值。 - Votes *int64 `json:"Votes,omitnil" name:"Votes"` + Votes *int64 `json:"Votes,omitnil,omitempty" name:"Votes"` // 节点标签。 // 注意:此字段可能返回 null,表示取不到有效值。 - Tags []*NodeTag `json:"Tags,omitnil" name:"Tags"` + Tags []*NodeTag `json:"Tags,omitnil,omitempty" name:"Tags"` // 副本集Id。 // 注意:此字段可能返回 null,表示取不到有效值。 - ReplicateSetId *string `json:"ReplicateSetId,omitnil" name:"ReplicateSetId"` + ReplicateSetId *string `json:"ReplicateSetId,omitnil,omitempty" name:"ReplicateSetId"` } type NodeTag struct { // 节点Tag key // 注意:此字段可能返回 null,表示取不到有效值。 - TagKey *string `json:"TagKey,omitnil" name:"TagKey"` + TagKey *string `json:"TagKey,omitnil,omitempty" name:"TagKey"` // 节点Tag Value // 注意:此字段可能返回 null,表示取不到有效值。 - TagValue *string `json:"TagValue,omitnil" name:"TagValue"` + TagValue *string `json:"TagValue,omitnil,omitempty" name:"TagValue"` } // Predefined struct for user type OfflineIsolatedDBInstanceRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type OfflineIsolatedDBInstanceRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *OfflineIsolatedDBInstanceRequest) ToJsonString() string { @@ -3577,10 +4021,10 @@ func (r *OfflineIsolatedDBInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type OfflineIsolatedDBInstanceResponseParams struct { // 异步任务的请求 ID,可使用此 ID 查询异步任务的执行结果。 - AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil,omitempty" name:"AsyncRequestId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type OfflineIsolatedDBInstanceResponse struct { @@ -3601,13 +4045,13 @@ func (r *OfflineIsolatedDBInstanceResponse) FromJsonString(s string) error { type Operation struct { // 操作所在的分片名 - ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil,omitempty" name:"ReplicaSetName"` // 操作所在的节点名 - NodeName *string `json:"NodeName,omitnil" name:"NodeName"` + NodeName *string `json:"NodeName,omitnil,omitempty" name:"NodeName"` // 操作序号 - OpId *int64 `json:"OpId,omitnil" name:"OpId"` + OpId *int64 `json:"OpId,omitnil,omitempty" name:"OpId"` } type RemoveNodeList struct { @@ -3615,37 +4059,37 @@ type RemoveNodeList struct { // - SECONDARY:Mongod 节点。 // - READONLY:只读节点。 // - MONGOS:Mongos 节点。 - Role *string `json:"Role,omitnil" name:"Role"` + Role *string `json:"Role,omitnil,omitempty" name:"Role"` // 要删除的节点 ID。分片集群须指定一组分片要删除的节点名称即可,其余分片对改组对齐。 // // - 获取方式:登录 [MongoDB控制台](https://console.cloud.tencent.com/),在**节点管理**页签,可获取**节点 ID**。 // - 特别说明:分片集群同一节点上的分片,仅需指定0分片节点 ID 即可。例如:cmgo-6hfk****_0-node-primary。 - NodeName *string `json:"NodeName,omitnil" name:"NodeName"` + NodeName *string `json:"NodeName,omitnil,omitempty" name:"NodeName"` // 节点所对应的可用区。 // - 单可用区,所有节点在同一可用区。 // - 多可用区:当前标准规格是三可用区分布,主从节点不在同一可用区,需注意配置所删除节点对应的可用区,且删除后必须满足任意2个可用区节点数大于第3个可用区原则。 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` } // Predefined struct for user type RenameInstanceRequestParams struct { // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 自定义实例名称,名称只支持长度为60个字符的中文、英文、数字、下划线_、分隔符 - - NewName *string `json:"NewName,omitnil" name:"NewName"` + NewName *string `json:"NewName,omitnil,omitempty" name:"NewName"` } type RenameInstanceRequest struct { *tchttp.BaseRequest // 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 自定义实例名称,名称只支持长度为60个字符的中文、英文、数字、下划线_、分隔符 - - NewName *string `json:"NewName,omitnil" name:"NewName"` + NewName *string `json:"NewName,omitnil,omitempty" name:"NewName"` } func (r *RenameInstanceRequest) ToJsonString() string { @@ -3670,8 +4114,8 @@ func (r *RenameInstanceRequest) FromJsonString(s string) error { // Predefined struct for user type RenameInstanceResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type RenameInstanceResponse struct { @@ -3693,20 +4137,20 @@ func (r *RenameInstanceResponse) FromJsonString(s string) error { // Predefined struct for user type RenewDBInstancesRequestParams struct { // 一个或多个待操作的实例ID。可通过DescribeInstances接口返回值中的InstanceId获取。每次请求批量实例的上限为100。 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的续费时长、是否设置自动续费等属性。包年包月实例该参数为必传参数。 - InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil" name:"InstanceChargePrepaid"` + InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil,omitempty" name:"InstanceChargePrepaid"` } type RenewDBInstancesRequest struct { *tchttp.BaseRequest // 一个或多个待操作的实例ID。可通过DescribeInstances接口返回值中的InstanceId获取。每次请求批量实例的上限为100。 - InstanceIds []*string `json:"InstanceIds,omitnil" name:"InstanceIds"` + InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"` // 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的续费时长、是否设置自动续费等属性。包年包月实例该参数为必传参数。 - InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil" name:"InstanceChargePrepaid"` + InstanceChargePrepaid *InstanceChargePrepaid `json:"InstanceChargePrepaid,omitnil,omitempty" name:"InstanceChargePrepaid"` } func (r *RenewDBInstancesRequest) ToJsonString() string { @@ -3731,8 +4175,8 @@ func (r *RenewDBInstancesRequest) FromJsonString(s string) error { // Predefined struct for user type RenewDBInstancesResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type RenewDBInstancesResponse struct { @@ -3753,38 +4197,38 @@ func (r *RenewDBInstancesResponse) FromJsonString(s string) error { type ReplicaSetInfo struct { // 副本集ID - ReplicaSetId *string `json:"ReplicaSetId,omitnil" name:"ReplicaSetId"` + ReplicaSetId *string `json:"ReplicaSetId,omitnil,omitempty" name:"ReplicaSetId"` } type ReplicateSetInfo struct { // 节点属性 // 注意:此字段可能返回 null,表示取不到有效值。 - Nodes []*NodeProperty `json:"Nodes,omitnil" name:"Nodes"` + Nodes []*NodeProperty `json:"Nodes,omitnil,omitempty" name:"Nodes"` } // Predefined struct for user type ResetDBInstancePasswordRequestParams struct { // 实例Id - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 实例账号名 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 新密码,新密码长度不能少于8位 - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` } type ResetDBInstancePasswordRequest struct { *tchttp.BaseRequest // 实例Id - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 实例账号名 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 新密码,新密码长度不能少于8位 - Password *string `json:"Password,omitnil" name:"Password"` + Password *string `json:"Password,omitnil,omitempty" name:"Password"` } func (r *ResetDBInstancePasswordRequest) ToJsonString() string { @@ -3811,10 +4255,10 @@ func (r *ResetDBInstancePasswordRequest) FromJsonString(s string) error { // Predefined struct for user type ResetDBInstancePasswordResponseParams struct { // 异步请求Id,用户查询该流程的运行状态 - AsyncRequestId *string `json:"AsyncRequestId,omitnil" name:"AsyncRequestId"` + AsyncRequestId *string `json:"AsyncRequestId,omitnil,omitempty" name:"AsyncRequestId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type ResetDBInstancePasswordResponse struct { @@ -3835,76 +4279,76 @@ func (r *ResetDBInstancePasswordResponse) FromJsonString(s string) error { type SecurityGroup struct { // 所属项目id - ProjectId *int64 `json:"ProjectId,omitnil" name:"ProjectId"` + ProjectId *int64 `json:"ProjectId,omitnil,omitempty" name:"ProjectId"` // 创建时间 - CreateTime *string `json:"CreateTime,omitnil" name:"CreateTime"` + CreateTime *string `json:"CreateTime,omitnil,omitempty" name:"CreateTime"` // 入站规则 - Inbound []*SecurityGroupBound `json:"Inbound,omitnil" name:"Inbound"` + Inbound []*SecurityGroupBound `json:"Inbound,omitnil,omitempty" name:"Inbound"` // 出站规则 - Outbound []*SecurityGroupBound `json:"Outbound,omitnil" name:"Outbound"` + Outbound []*SecurityGroupBound `json:"Outbound,omitnil,omitempty" name:"Outbound"` // 安全组id - SecurityGroupId *string `json:"SecurityGroupId,omitnil" name:"SecurityGroupId"` + SecurityGroupId *string `json:"SecurityGroupId,omitnil,omitempty" name:"SecurityGroupId"` // 安全组名称 - SecurityGroupName *string `json:"SecurityGroupName,omitnil" name:"SecurityGroupName"` + SecurityGroupName *string `json:"SecurityGroupName,omitnil,omitempty" name:"SecurityGroupName"` // 安全组备注 - SecurityGroupRemark *string `json:"SecurityGroupRemark,omitnil" name:"SecurityGroupRemark"` + SecurityGroupRemark *string `json:"SecurityGroupRemark,omitnil,omitempty" name:"SecurityGroupRemark"` } type SecurityGroupBound struct { // 执行规则。ACCEPT或DROP - Action *string `json:"Action,omitnil" name:"Action"` + Action *string `json:"Action,omitnil,omitempty" name:"Action"` // ip段。 - CidrIp *string `json:"CidrIp,omitnil" name:"CidrIp"` + CidrIp *string `json:"CidrIp,omitnil,omitempty" name:"CidrIp"` // 端口范围 - PortRange *string `json:"PortRange,omitnil" name:"PortRange"` + PortRange *string `json:"PortRange,omitnil,omitempty" name:"PortRange"` // 传输层协议。tcp,udp或ALL - IpProtocol *string `json:"IpProtocol,omitnil" name:"IpProtocol"` + IpProtocol *string `json:"IpProtocol,omitnil,omitempty" name:"IpProtocol"` // 安全组id代表的地址集合 - Id *string `json:"Id,omitnil" name:"Id"` + Id *string `json:"Id,omitnil,omitempty" name:"Id"` // 地址组id代表的地址集合 - AddressModule *string `json:"AddressModule,omitnil" name:"AddressModule"` + AddressModule *string `json:"AddressModule,omitnil,omitempty" name:"AddressModule"` // 服务组id代表的协议和端口集合 - ServiceModule *string `json:"ServiceModule,omitnil" name:"ServiceModule"` + ServiceModule *string `json:"ServiceModule,omitnil,omitempty" name:"ServiceModule"` // 描述 - Desc *string `json:"Desc,omitnil" name:"Desc"` + Desc *string `json:"Desc,omitnil,omitempty" name:"Desc"` } // Predefined struct for user type SetAccountUserPrivilegeRequestParams struct { // 指定待设置账号的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 设置账号名称。 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 设置权限信息。 - AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil,omitempty" name:"AuthRole"` } type SetAccountUserPrivilegeRequest struct { *tchttp.BaseRequest // 指定待设置账号的实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` // 设置账号名称。 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 设置权限信息。 - AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil,omitempty" name:"AuthRole"` } func (r *SetAccountUserPrivilegeRequest) ToJsonString() string { @@ -3931,10 +4375,10 @@ func (r *SetAccountUserPrivilegeRequest) FromJsonString(s string) error { // Predefined struct for user type SetAccountUserPrivilegeResponseParams struct { // 任务ID。 - FlowId *uint64 `json:"FlowId,omitnil" name:"FlowId"` + FlowId *uint64 `json:"FlowId,omitnil,omitempty" name:"FlowId"` - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type SetAccountUserPrivilegeResponse struct { @@ -3953,144 +4397,302 @@ func (r *SetAccountUserPrivilegeResponse) FromJsonString(s string) error { return json.Unmarshal([]byte(s), &r) } +// Predefined struct for user +type SetBackupRulesRequestParams struct { + // 实例 ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 设置自动备份方式。- 0:逻辑备份。- 1:物理备份。-3:快照备份(仅云盘版支持)。 + BackupMethod *uint64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` + + // 设置自动备份开始时间。取值范围为:[0,23],例如:该参数设置为2,表示02:00开始备份。 + BackupTime *uint64 `json:"BackupTime,omitnil,omitempty" name:"BackupTime"` + + // 设置自动备份发生错误时,是否发送失败告警。 + // - true:发送。 + // - false:不发送。 + Notify *bool `json:"Notify,omitnil,omitempty" name:"Notify"` + + // 指定备份数据保存天数。默认为 7 天,支持设置为7、30、90、180、365。 + BackupRetentionPeriod *uint64 `json:"BackupRetentionPeriod,omitnil,omitempty" name:"BackupRetentionPeriod"` +} + +type SetBackupRulesRequest struct { + *tchttp.BaseRequest + + // 实例 ID,例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 设置自动备份方式。- 0:逻辑备份。- 1:物理备份。-3:快照备份(仅云盘版支持)。 + BackupMethod *uint64 `json:"BackupMethod,omitnil,omitempty" name:"BackupMethod"` + + // 设置自动备份开始时间。取值范围为:[0,23],例如:该参数设置为2,表示02:00开始备份。 + BackupTime *uint64 `json:"BackupTime,omitnil,omitempty" name:"BackupTime"` + + // 设置自动备份发生错误时,是否发送失败告警。 + // - true:发送。 + // - false:不发送。 + Notify *bool `json:"Notify,omitnil,omitempty" name:"Notify"` + + // 指定备份数据保存天数。默认为 7 天,支持设置为7、30、90、180、365。 + BackupRetentionPeriod *uint64 `json:"BackupRetentionPeriod,omitnil,omitempty" name:"BackupRetentionPeriod"` +} + +func (r *SetBackupRulesRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *SetBackupRulesRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + delete(f, "BackupMethod") + delete(f, "BackupTime") + delete(f, "Notify") + delete(f, "BackupRetentionPeriod") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "SetBackupRulesRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type SetBackupRulesResponseParams struct { + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type SetBackupRulesResponse struct { + *tchttp.BaseResponse + Response *SetBackupRulesResponseParams `json:"Response"` +} + +func (r *SetBackupRulesResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *SetBackupRulesResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type SetInstanceMaintenanceRequestParams struct { + // 指定实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 维护时间窗开始时间。取值范围为"00:00-23:00"的任意整点或半点,如00:00或00:30。 + MaintenanceStart *string `json:"MaintenanceStart,omitnil,omitempty" name:"MaintenanceStart"` + + // 维护时间窗结束时间。 + // - 取值范围为"00:00-23:00"的任意整点或半点,维护时间持续时长最小为30分钟,最大为3小时。 + // - 结束时间务必是基于开始时间向后的时间。 + MaintenanceEnd *string `json:"MaintenanceEnd,omitnil,omitempty" name:"MaintenanceEnd"` +} + +type SetInstanceMaintenanceRequest struct { + *tchttp.BaseRequest + + // 指定实例ID。例如:cmgo-p8vn****。请登录 [MongoDB 控制台](https://console.cloud.tencent.com/mongodb)在实例列表复制实例 ID。 + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` + + // 维护时间窗开始时间。取值范围为"00:00-23:00"的任意整点或半点,如00:00或00:30。 + MaintenanceStart *string `json:"MaintenanceStart,omitnil,omitempty" name:"MaintenanceStart"` + + // 维护时间窗结束时间。 + // - 取值范围为"00:00-23:00"的任意整点或半点,维护时间持续时长最小为30分钟,最大为3小时。 + // - 结束时间务必是基于开始时间向后的时间。 + MaintenanceEnd *string `json:"MaintenanceEnd,omitnil,omitempty" name:"MaintenanceEnd"` +} + +func (r *SetInstanceMaintenanceRequest) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *SetInstanceMaintenanceRequest) FromJsonString(s string) error { + f := make(map[string]interface{}) + if err := json.Unmarshal([]byte(s), &f); err != nil { + return err + } + delete(f, "InstanceId") + delete(f, "MaintenanceStart") + delete(f, "MaintenanceEnd") + if len(f) > 0 { + return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "SetInstanceMaintenanceRequest has unknown keys!", "") + } + return json.Unmarshal([]byte(s), &r) +} + +// Predefined struct for user +type SetInstanceMaintenanceResponseParams struct { + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` +} + +type SetInstanceMaintenanceResponse struct { + *tchttp.BaseResponse + Response *SetInstanceMaintenanceResponseParams `json:"Response"` +} + +func (r *SetInstanceMaintenanceResponse) ToJsonString() string { + b, _ := json.Marshal(r) + return string(b) +} + +// FromJsonString It is highly **NOT** recommended to use this function +// because it has no param check, nor strict type check +func (r *SetInstanceMaintenanceResponse) FromJsonString(s string) error { + return json.Unmarshal([]byte(s), &r) +} + type ShardInfo struct { // 分片已使用容量 - UsedVolume *float64 `json:"UsedVolume,omitnil" name:"UsedVolume"` + UsedVolume *float64 `json:"UsedVolume,omitnil,omitempty" name:"UsedVolume"` // 分片ID - ReplicaSetId *string `json:"ReplicaSetId,omitnil" name:"ReplicaSetId"` + ReplicaSetId *string `json:"ReplicaSetId,omitnil,omitempty" name:"ReplicaSetId"` // 分片名 - ReplicaSetName *string `json:"ReplicaSetName,omitnil" name:"ReplicaSetName"` + ReplicaSetName *string `json:"ReplicaSetName,omitnil,omitempty" name:"ReplicaSetName"` // 分片内存规格,单位为MB - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 分片磁盘规格,单位为MB - Volume *uint64 `json:"Volume,omitnil" name:"Volume"` + Volume *uint64 `json:"Volume,omitnil,omitempty" name:"Volume"` // 分片Oplog大小,单位为MB - OplogSize *uint64 `json:"OplogSize,omitnil" name:"OplogSize"` + OplogSize *uint64 `json:"OplogSize,omitnil,omitempty" name:"OplogSize"` // 分片从节点数 - SecondaryNum *uint64 `json:"SecondaryNum,omitnil" name:"SecondaryNum"` + SecondaryNum *uint64 `json:"SecondaryNum,omitnil,omitempty" name:"SecondaryNum"` // 分片物理id - RealReplicaSetId *string `json:"RealReplicaSetId,omitnil" name:"RealReplicaSetId"` + RealReplicaSetId *string `json:"RealReplicaSetId,omitnil,omitempty" name:"RealReplicaSetId"` } type SlowLogPattern struct { // 慢日志模式 - Pattern *string `json:"Pattern,omitnil" name:"Pattern"` + Pattern *string `json:"Pattern,omitnil,omitempty" name:"Pattern"` // 最大执行时间 - MaxTime *uint64 `json:"MaxTime,omitnil" name:"MaxTime"` + MaxTime *uint64 `json:"MaxTime,omitnil,omitempty" name:"MaxTime"` // 平均执行时间 - AverageTime *uint64 `json:"AverageTime,omitnil" name:"AverageTime"` + AverageTime *uint64 `json:"AverageTime,omitnil,omitempty" name:"AverageTime"` // 该模式慢日志条数 - Total *uint64 `json:"Total,omitnil" name:"Total"` + Total *uint64 `json:"Total,omitnil,omitempty" name:"Total"` } type SpecItem struct { // 规格信息标识 - SpecCode *string `json:"SpecCode,omitnil" name:"SpecCode"` + SpecCode *string `json:"SpecCode,omitnil,omitempty" name:"SpecCode"` // 规格有效标志,取值:0-停止售卖,1-开放售卖 - Status *uint64 `json:"Status,omitnil" name:"Status"` + Status *uint64 `json:"Status,omitnil,omitempty" name:"Status"` // 计算资源规格,单位为CPU核心数 - Cpu *uint64 `json:"Cpu,omitnil" name:"Cpu"` + Cpu *uint64 `json:"Cpu,omitnil,omitempty" name:"Cpu"` // 内存规格,单位为MB - Memory *uint64 `json:"Memory,omitnil" name:"Memory"` + Memory *uint64 `json:"Memory,omitnil,omitempty" name:"Memory"` // 默认磁盘规格,单位MB - DefaultStorage *uint64 `json:"DefaultStorage,omitnil" name:"DefaultStorage"` + DefaultStorage *uint64 `json:"DefaultStorage,omitnil,omitempty" name:"DefaultStorage"` // 最大磁盘规格,单位MB - MaxStorage *uint64 `json:"MaxStorage,omitnil" name:"MaxStorage"` + MaxStorage *uint64 `json:"MaxStorage,omitnil,omitempty" name:"MaxStorage"` // 最小磁盘规格,单位MB - MinStorage *uint64 `json:"MinStorage,omitnil" name:"MinStorage"` + MinStorage *uint64 `json:"MinStorage,omitnil,omitempty" name:"MinStorage"` // 可承载qps信息 - Qps *uint64 `json:"Qps,omitnil" name:"Qps"` + Qps *uint64 `json:"Qps,omitnil,omitempty" name:"Qps"` // 连接数限制 - Conns *uint64 `json:"Conns,omitnil" name:"Conns"` + Conns *uint64 `json:"Conns,omitnil,omitempty" name:"Conns"` // 实例mongodb版本信息 - MongoVersionCode *string `json:"MongoVersionCode,omitnil" name:"MongoVersionCode"` + MongoVersionCode *string `json:"MongoVersionCode,omitnil,omitempty" name:"MongoVersionCode"` // 实例mongodb版本号 - MongoVersionValue *uint64 `json:"MongoVersionValue,omitnil" name:"MongoVersionValue"` + MongoVersionValue *uint64 `json:"MongoVersionValue,omitnil,omitempty" name:"MongoVersionValue"` // 实例mongodb版本号(短) - Version *string `json:"Version,omitnil" name:"Version"` + Version *string `json:"Version,omitnil,omitempty" name:"Version"` // 存储引擎 - EngineName *string `json:"EngineName,omitnil" name:"EngineName"` + EngineName *string `json:"EngineName,omitnil,omitempty" name:"EngineName"` // 集群类型,取值:1-分片集群,0-副本集集群 - ClusterType *uint64 `json:"ClusterType,omitnil" name:"ClusterType"` + ClusterType *uint64 `json:"ClusterType,omitnil,omitempty" name:"ClusterType"` // 最小副本集从节点数 - MinNodeNum *uint64 `json:"MinNodeNum,omitnil" name:"MinNodeNum"` + MinNodeNum *uint64 `json:"MinNodeNum,omitnil,omitempty" name:"MinNodeNum"` // 最大副本集从节点数 - MaxNodeNum *uint64 `json:"MaxNodeNum,omitnil" name:"MaxNodeNum"` + MaxNodeNum *uint64 `json:"MaxNodeNum,omitnil,omitempty" name:"MaxNodeNum"` // 最小分片数 - MinReplicateSetNum *uint64 `json:"MinReplicateSetNum,omitnil" name:"MinReplicateSetNum"` + MinReplicateSetNum *uint64 `json:"MinReplicateSetNum,omitnil,omitempty" name:"MinReplicateSetNum"` // 最大分片数 - MaxReplicateSetNum *uint64 `json:"MaxReplicateSetNum,omitnil" name:"MaxReplicateSetNum"` + MaxReplicateSetNum *uint64 `json:"MaxReplicateSetNum,omitnil,omitempty" name:"MaxReplicateSetNum"` // 最小分片从节点数 - MinReplicateSetNodeNum *uint64 `json:"MinReplicateSetNodeNum,omitnil" name:"MinReplicateSetNodeNum"` + MinReplicateSetNodeNum *uint64 `json:"MinReplicateSetNodeNum,omitnil,omitempty" name:"MinReplicateSetNodeNum"` // 最大分片从节点数 - MaxReplicateSetNodeNum *uint64 `json:"MaxReplicateSetNodeNum,omitnil" name:"MaxReplicateSetNodeNum"` + MaxReplicateSetNodeNum *uint64 `json:"MaxReplicateSetNodeNum,omitnil,omitempty" name:"MaxReplicateSetNodeNum"` // 机器类型,取值:0-HIO,4-HIO10G - MachineType *string `json:"MachineType,omitnil" name:"MachineType"` + MachineType *string `json:"MachineType,omitnil,omitempty" name:"MachineType"` } type SpecificationInfo struct { // 地域信息 - Region *string `json:"Region,omitnil" name:"Region"` + Region *string `json:"Region,omitnil,omitempty" name:"Region"` // 可用区信息 - Zone *string `json:"Zone,omitnil" name:"Zone"` + Zone *string `json:"Zone,omitnil,omitempty" name:"Zone"` // 售卖规格信息 - SpecItems []*SpecItem `json:"SpecItems,omitnil" name:"SpecItems"` + SpecItems []*SpecItem `json:"SpecItems,omitnil,omitempty" name:"SpecItems"` // 是否支持跨可用区部署 1-支持,0-不支持 - SupportMultiAZ *int64 `json:"SupportMultiAZ,omitnil" name:"SupportMultiAZ"` + SupportMultiAZ *int64 `json:"SupportMultiAZ,omitnil,omitempty" name:"SupportMultiAZ"` } type TagInfo struct { // 标签键 - TagKey *string `json:"TagKey,omitnil" name:"TagKey"` + TagKey *string `json:"TagKey,omitnil,omitempty" name:"TagKey"` // 标签值 - TagValue *string `json:"TagValue,omitnil" name:"TagValue"` + TagValue *string `json:"TagValue,omitnil,omitempty" name:"TagValue"` } // Predefined struct for user type TerminateDBInstancesRequestParams struct { // 指定预隔离实例ID。格式如:cmgo-p8vnipr5。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } type TerminateDBInstancesRequest struct { *tchttp.BaseRequest // 指定预隔离实例ID。格式如:cmgo-p8vnipr5。 - InstanceId *string `json:"InstanceId,omitnil" name:"InstanceId"` + InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"` } func (r *TerminateDBInstancesRequest) ToJsonString() string { @@ -4114,8 +4716,8 @@ func (r *TerminateDBInstancesRequest) FromJsonString(s string) error { // Predefined struct for user type TerminateDBInstancesResponseParams struct { - // 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 - RequestId *string `json:"RequestId,omitnil" name:"RequestId"` + // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 + RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"` } type TerminateDBInstancesResponse struct { @@ -4136,17 +4738,17 @@ func (r *TerminateDBInstancesResponse) FromJsonString(s string) error { type UserInfo struct { // 账号名。 - UserName *string `json:"UserName,omitnil" name:"UserName"` + UserName *string `json:"UserName,omitnil,omitempty" name:"UserName"` // 账号权限详情。 - AuthRole []*Auth `json:"AuthRole,omitnil" name:"AuthRole"` + AuthRole []*Auth `json:"AuthRole,omitnil,omitempty" name:"AuthRole"` // 账号创建时间。 - CreateTime *string `json:"CreateTime,omitnil" name:"CreateTime"` + CreateTime *string `json:"CreateTime,omitnil,omitempty" name:"CreateTime"` // 账号更新时间。 - UpdateTime *string `json:"UpdateTime,omitnil" name:"UpdateTime"` + UpdateTime *string `json:"UpdateTime,omitnil,omitempty" name:"UpdateTime"` // 备注信息。 - UserDesc *string `json:"UserDesc,omitnil" name:"UserDesc"` + UserDesc *string `json:"UserDesc,omitnil,omitempty" name:"UserDesc"` } \ No newline at end of file diff --git a/vendor/modules.txt b/vendor/modules.txt index 1c16f2226b..be488a8e50 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1228,7 +1228,7 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/live/v20180801 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mariadb v1.0.672 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mariadb/v20170312 -# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.828 +# github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.949 ## explicit; go 1.14 github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb/v20190725 # github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844 diff --git a/website/docs/r/mongodb_instance_backup_rule.html.markdown b/website/docs/r/mongodb_instance_backup_rule.html.markdown new file mode 100644 index 0000000000..dc5252675a --- /dev/null +++ b/website/docs/r/mongodb_instance_backup_rule.html.markdown @@ -0,0 +1,51 @@ +--- +subcategory: "TencentDB for MongoDB(mongodb)" +layout: "tencentcloud" +page_title: "TencentCloud: tencentcloud_mongodb_instance_backup_rule" +sidebar_current: "docs-tencentcloud-resource-mongodb_instance_backup_rule" +description: |- + Provides a resource to create mongodb backup rule +--- + +# tencentcloud_mongodb_instance_backup_rule + +Provides a resource to create mongodb backup rule + +## Example Usage + +```hcl +resource "tencentcloud_mongodb_backup_rule" "backup_rule" { + instance_id = "cmgo-xxxxxx" + backup_method = 0 + backup_time = 10 +} +``` + +## Argument Reference + +The following arguments are supported: + +* `backup_method` - (Required, Int) Set automatic backup method. Valid values: +- 0: Logical backup; +- 1: Physical backup; +- 3: Snapshot backup (supported only in cloud disk version). +* `backup_time` - (Required, Int) Set the start time for automatic backup. The value range is: [0,23]. For example, setting this parameter to 2 means that backup starts at 02:00. +* `instance_id` - (Required, String, ForceNew) Instance id. +* `backup_retention_period` - (Optional, Int) Specify the number of days to save backup data. The default is 7 days, and the support settings are 7, 30, 90, 180, 365. + +## Attributes Reference + +In addition to all arguments above, the following attributes are exported: + +* `id` - ID of the resource. + + + +## Import + +mongodb backup_rule can be imported using the id, e.g. + +``` +terraform import tencentcloud_mongodb_backup_rule.backup_rule ${instanceId} +``` + diff --git a/website/docs/r/mongodb_instance_transparent_data_encryption.html.markdown b/website/docs/r/mongodb_instance_transparent_data_encryption.html.markdown new file mode 100644 index 0000000000..872ceb1064 --- /dev/null +++ b/website/docs/r/mongodb_instance_transparent_data_encryption.html.markdown @@ -0,0 +1,55 @@ +--- +subcategory: "TencentDB for MongoDB(mongodb)" +layout: "tencentcloud" +page_title: "TencentCloud: tencentcloud_mongodb_instance_transparent_data_encryption" +sidebar_current: "docs-tencentcloud-resource-mongodb_instance_transparent_data_encryption" +description: |- + Provides a resource to enable mongodb transparent data encryption +--- + +# tencentcloud_mongodb_instance_transparent_data_encryption + +Provides a resource to enable mongodb transparent data encryption + +## Example Usage + +```hcl +resource "tencentcloud_mongodb_instance_transparent_data_encryption" "encryption" { + instance_id = "cmgo-xxxxxx" + kms_region = "ap-guangzhou" +} +``` + +## Argument Reference + +The following arguments are supported: + +* `instance_id` - (Required, String, ForceNew) Instance ID, for example: cmgo-p8vn ***. Currently supported general versions include: 4.4 and 5.0, but the cloud disk version is not currently supported. +* `kms_region` - (Required, String) The region where the Key Management Service (KMS) serves, such as ap-shanghai. +* `key_id` - (Optional, String) Key ID. If this parameter is not set and the specific key ID is not specified, Tencent Cloud will automatically generate the key and this key will be beyond the control of Terraform. + +## Attributes Reference + +In addition to all arguments above, the following attributes are exported: + +* `id` - ID of the resource. +* `key_info_list` - List of bound keys. + * `create_time` - Instance and key binding time. + * `key_id` - Master Key ID. + * `key_name` - Master key name. + * `key_origin` - Key origin. + * `key_usage` - Purpose of the key. + * `status` - Key status. +* `transparent_data_encryption_status` - Represents whether transparent encryption is turned on. Valid values: +- close: Not opened; +- open: It has been opened. + + +## Import + +mongodb transparent data encryption can be imported using the id, e.g. + +``` +terraform import tencentcloud_mongodb_instance_transparent_data_encryption.encryption ${instanceId} +``` + diff --git a/website/tencentcloud.erb b/website/tencentcloud.erb index 44aaca6deb..7192f28540 100644 --- a/website/tencentcloud.erb +++ b/website/tencentcloud.erb @@ -5377,6 +5377,12 @@
  • tencentcloud_mongodb_instance_backup
  • +
  • + tencentcloud_mongodb_instance_backup_rule +
  • +
  • + tencentcloud_mongodb_instance_transparent_data_encryption +
  • tencentcloud_mongodb_sharding_instance