diff --git a/.changelog/2853.txt b/.changelog/2853.txt
new file mode 100644
index 0000000000..a6fa16f373
--- /dev/null
+++ b/.changelog/2853.txt
@@ -0,0 +1,3 @@
+```release-note:new-resource
+tencentcloud_redis_log_delivery
+```
diff --git a/go.mod b/go.mod
index 687e00b279..ecae53a6b0 100644
--- a/go.mod
+++ b/go.mod
@@ -73,7 +73,7 @@ require (
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.1010
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.859
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/pts v1.0.762
- github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.976
+ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.1008
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/rum v1.0.744
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/scf v1.0.807
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ses v1.0.748
diff --git a/go.sum b/go.sum
index 1546b6c9b6..37b8a2dda7 100644
--- a/go.sum
+++ b/go.sum
@@ -840,8 +840,6 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdb v1.0.944 h1:+PGoNHl
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdb v1.0.944/go.mod h1:+VHcZ4Cnzpt6vtCvNROz8xWfNWUkoAZ9UPSonbA3NWM=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdc v1.0.970 h1:0A6PwOaUeLtm4U5TR1uD91ETBgDcnfqFnsG9mwCNvlY=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdc v1.0.970/go.mod h1:H4k8QCKds731GA9pmSOfHJ99ZOZhy+gKvX1/N2DOsQQ=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.539 h1:0L6nZhT2bToTc/n1z3HOpNgdu5VX5ulmqIuPY+8UozA=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.539/go.mod h1:6Syk7W5fdDf0BLvX+RXL5obQ6unkt3Id4aN2QqVrV6U=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.1010 h1:sO0vW6E09xFQ5+I8mfvAyIlRZvWBWPf6ilZU5LI4lmE=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.1010/go.mod h1:/UDEkf2UhUud19VVMGMTpyiI7HoE3U/c23uoAqDgIWA=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdwch v1.0.843 h1:3Xr3UPscUfi5jAzCtwQjDfDf4TPsbUxsCrDdHo6xIRI=
@@ -870,7 +868,6 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.414/go.mod
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.486/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.524/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.533/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.539/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.544/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.547/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.563/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
@@ -922,19 +919,11 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.949/go.mod
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.955/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.960/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.970/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.976/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.978/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.984/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.993/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.995/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.998/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1001/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1004/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1006 h1:WX1KDLeAIhhcYMD5uqrnQ4Fv3Dmg9GPv0shNVBS/6fA=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1006/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1008 h1:BQJUiwOi2d368bF1qmdCjHjUMEt24vM6d68r9S+OrQM=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1008/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1010 h1:HwhKTg+VcQd5M9AyaEZaqKmpKuWxbf5kni23g1KRmOk=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1010/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1011 h1:cjqeXTwKKtGVqrf6luwunUnA77buzmzbk+G42US1Sns=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.1011/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
@@ -990,20 +979,16 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.853 h1:abGpWsA
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.853/go.mod h1:xIprIT+IW+3Fj05GCWmgvxJOhICqFGoW4Ef77cDD2JQ=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/oceanus v1.0.831 h1:oyazF5wgAgoinGo/SDGfUReE3JFxqcpI6/pstWhK7yE=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/oceanus v1.0.831/go.mod h1:2WuTlTnKCnZoa6l0JxY9GNfo0UG6nU7AEsljF8rMMsM=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.1006 h1:138d+X1aR4JHLa75uWSQwX7dj68NmAMrOjrkdjmetxE=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.1006/go.mod h1:RB5H9BG9x0RaRI3pBGo2ksoeVtXQYb/zHa3EccQw6Co=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.1008 h1:bdUSSq3Y7OWZgrTBxhd7hvolu01zACD5GYdK/YePH/Q=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.1008/go.mod h1:wyPjTCtmxGUaR99fm3V4Fh53zi/oTy55l0+ZSQhsOog=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.995 h1:chLBYIeKYtDy2kB/IO4uFMLZzlYn/rDoBi7K34HWJu0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.995/go.mod h1:Qv44A5kdz3uX4TYhXz4WacYVSZ0BQL9aYtTdJEwDCQw=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.1010 h1:lx554ZfB++mge+/Gk7LnDUI5Dwm9r+DgGNN9C/DqhE4=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.1010/go.mod h1:GGhAf2ehV2/jwKf3Sezr2x/soJ3nDuefJFlcoZnlflA=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.859 h1:VrE3qzwzWB5mV/ejTJuwZbqZ/CNYLoc8X+uFbWEEOnY=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/privatedns v1.0.859/go.mod h1:FeOl14rPWpNEu6r4bPEsTNHIB9qaRTg0dRhxhRwQ5Hw=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/pts v1.0.762 h1:rZDKucVVtTnmnbZFDyh6t47dHswkb2oSuOxOHTTkygA=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/pts v1.0.762/go.mod h1:QB/XcdVZ8mhRgk90XuXd+2Smfo8emTo0wHIUsygEaKs=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.976 h1:sz55cAVBG5+6WvEpP+A5VhXRZrvchEIvDdPWkUUmnQQ=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.976/go.mod h1:5xaiCbtLOTK5j5SPEQP5qJ9bU33TeodyYl2vwli9b+M=
+github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.1008 h1:Mo0njOK81dsBe6FBOieaGeHAVpo/PsYzDTeHovc57bA=
+github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis v1.0.1008/go.mod h1:wzdd7XxZHtuLTxGrWDvFJEX9ES6u17whFbn9Zz/WpKg=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/region v1.0.920 h1:Kaab57oHrhiagHURsTNU/XfRFWXXSWxOXoix+YvLHrY=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/region v1.0.920/go.mod h1:AhvwfhTo0JOz2FG4FcmVVdxJ73NpPAQ7rzjjWoEYFOw=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/rum v1.0.744 h1:Z6xqpgnVPQfw2Yx/c2z6n30LfNodK4JEgMca1WpfOrY=
@@ -1042,8 +1027,6 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.0.912 h1:XGOKd5u
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/teo v1.0.912/go.mod h1:iqTDU0pVTQ8RCeMJPk/PAWl9HeI1DFMd1h07yMH7RGU=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998 h1:f4/n0dVKQTD06xJ84B5asHViNJHrZmGojdAWEPIsITM=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/thpc v1.0.998/go.mod h1:fyi/HUwCwVe2NCCCjz8k/C5GwPu3QazCZO+OBJ3MhLk=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1001 h1:qj+pw5MJFuOvA+a+yAA2JR8B4TmfX5H5D8jy3L0YKH0=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1001/go.mod h1:FVJUGrfLPiJWiKrH+62h38Iyo9mA2O1wuaPLMlbeDBI=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1008 h1:Cz7JSuS2zxIBzAuZ2bKk3EmrZ1QgS2QAHmCDTDPWBz0=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.1008/go.mod h1:71PkDdVPT2Pd8yiuX6QFUDReTji39R/03dg1JwcjHWo=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/trocket v1.0.947 h1:iZfuU8S86kfqFsAVT/LUApP8L5cpT90hl2wSKiUDVvw=
@@ -1054,8 +1037,6 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tsf v1.0.674 h1:VsMV1/v
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tsf v1.0.674/go.mod h1:6+MWxaNR4y+spZHYNntulOyj628owTLuWmEFebJOWdA=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.860 h1:vW2NgAHK4BfpZP3m92eUEKbIP+nu9bL8mnaM0dBHWM8=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.860/go.mod h1:uCkDh/AW/tb8JGq5b2kqLjqZuhCFR+6oTsq1SrrvT44=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.978 h1:EZlxS90zY799+zYB7dmbMqU8XyWT0lesPTPkCtibC54=
-github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.978/go.mod h1:+8DNFolL3rl8vlN1hiY8HhJG0SchGhzLbCN0K0TA0vU=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.1011 h1:QRtuN3T5bF0LWVllUB5ZTxe42P2ZFUB2PmyeWCd1ySs=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.1011/go.mod h1:7I7JGx2pVizVaXEte38bGHtyD/P1JwbVrBLbtTl2Rrs=
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/waf v1.0.833 h1:avaBlZ+Qqv7bfMg/u0jlRsbEBbE18CfqKWbfGc84PLg=
diff --git a/tencentcloud/provider.go b/tencentcloud/provider.go
index 31c9169f89..9842ec57e1 100644
--- a/tencentcloud/provider.go
+++ b/tencentcloud/provider.go
@@ -1333,6 +1333,7 @@ func Provider() *schema.Provider {
"tencentcloud_redis_replicate_attachment": crs.ResourceTencentCloudRedisReplicateAttachment(),
"tencentcloud_redis_backup_operation": crs.ResourceTencentCloudRedisBackupOperation(),
"tencentcloud_redis_security_group_attachment": crs.ResourceTencentCloudRedisSecurityGroupAttachment(),
+ "tencentcloud_redis_log_delivery": crs.ResourceTencentCloudRedisLogDelivery(),
"tencentcloud_as_load_balancer": as.ResourceTencentCloudAsLoadBalancer(),
"tencentcloud_as_scaling_config": as.ResourceTencentCloudAsScalingConfig(),
"tencentcloud_as_scaling_group": as.ResourceTencentCloudAsScalingGroup(),
diff --git a/tencentcloud/provider.md b/tencentcloud/provider.md
index 1944966304..40aad027be 100644
--- a/tencentcloud/provider.md
+++ b/tencentcloud/provider.md
@@ -933,6 +933,7 @@ TencentDB for Redis(crs)
tencentcloud_redis_backup_operation
tencentcloud_redis_security_group_attachment
tencentcloud_redis_connection_config
+ tencentcloud_redis_log_delivery
Serverless Cloud Function(SCF)
Data Source
diff --git a/tencentcloud/services/apigateway/data_source_tc_api_gateway_api_app_api.go b/tencentcloud/services/apigateway/data_source_tc_api_gateway_api_app_api.go
index a5aaaadbfa..390e9908f0 100644
--- a/tencentcloud/services/apigateway/data_source_tc_api_gateway_api_app_api.go
+++ b/tencentcloud/services/apigateway/data_source_tc_api_gateway_api_app_api.go
@@ -95,8 +95,8 @@ func DataSourceTencentCloudApiGatewayApiAppApi() *schema.Resource {
Description: "API authentication type. Possible values are SECRET (key pair authentication), NONE (authentication-free), and OAUTH.",
},
"api_business_type": {
- Type: schema.TypeString,
- Computed: true,
+ Type: schema.TypeString,
+ Computed: true,
Description: "Type of OAUTH API. Possible values are NORMAL (Business API), OAUTH (Authorization API).",
},
"auth_relation_api_id": {
diff --git a/tencentcloud/services/cam/data_source_tc_user_info.go b/tencentcloud/services/cam/data_source_tc_user_info.go
index d92d62d192..90eaadb8fd 100644
--- a/tencentcloud/services/cam/data_source_tc_user_info.go
+++ b/tencentcloud/services/cam/data_source_tc_user_info.go
@@ -3,11 +3,12 @@ package cam
import (
"context"
"fmt"
- "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
"log"
"math/rand"
"strconv"
+ "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
+
tccommon "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/common"
cam "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cam/v20190116"
diff --git a/tencentcloud/services/cfs/data_source_tc_cfs_available_zone.go b/tencentcloud/services/cfs/data_source_tc_cfs_available_zone.go
index 2799acab0b..ea3c241e6b 100644
--- a/tencentcloud/services/cfs/data_source_tc_cfs_available_zone.go
+++ b/tencentcloud/services/cfs/data_source_tc_cfs_available_zone.go
@@ -71,8 +71,8 @@ func DataSourceTencentCloudCfsAvailableZone() *schema.Resource {
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
"sale_status": {
- Type: schema.TypeString,
- Computed: true,
+ Type: schema.TypeString,
+ Computed: true,
Description: " Sale status. Valid values: sale_out (sold out), saling (purchasable), no_saling (non-purchasable).",
},
"protocol": {
diff --git a/tencentcloud/services/cls/data_source_tc_cls_logsets.go b/tencentcloud/services/cls/data_source_tc_cls_logsets.go
index f27a88301f..b1d0553cb1 100644
--- a/tencentcloud/services/cls/data_source_tc_cls_logsets.go
+++ b/tencentcloud/services/cls/data_source_tc_cls_logsets.go
@@ -2,6 +2,7 @@ package cls
import (
"context"
+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
cls "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cls/v20201016"
diff --git a/tencentcloud/services/cls/data_source_tc_cls_logsets_test.go b/tencentcloud/services/cls/data_source_tc_cls_logsets_test.go
index 1a82cdec81..a2f63aa0c1 100644
--- a/tencentcloud/services/cls/data_source_tc_cls_logsets_test.go
+++ b/tencentcloud/services/cls/data_source_tc_cls_logsets_test.go
@@ -1,9 +1,10 @@
package cls_test
import (
+ "testing"
+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest"
- "testing"
)
// go test -i; go test -test.run TestAccTencentCloudClsLogsetsDataSource_basic -v
diff --git a/tencentcloud/services/cos/data_source_tc_cos_bucket_inventorys.go b/tencentcloud/services/cos/data_source_tc_cos_bucket_inventorys.go
index 95bf911afd..29ce55c934 100644
--- a/tencentcloud/services/cos/data_source_tc_cos_bucket_inventorys.go
+++ b/tencentcloud/services/cos/data_source_tc_cos_bucket_inventorys.go
@@ -78,8 +78,8 @@ func DataSourceTencentCloudCosBucketInventorys() *schema.Resource {
},
},
"optional_fields": {
- Type: schema.TypeList,
- Optional: true,
+ Type: schema.TypeList,
+ Optional: true,
Description: "Analysis items to include in the inventory result .",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
diff --git a/tencentcloud/services/cos/resource_tc_cos_bucket_inventory.go b/tencentcloud/services/cos/resource_tc_cos_bucket_inventory.go
index d8513885dc..63cd1cc410 100644
--- a/tencentcloud/services/cos/resource_tc_cos_bucket_inventory.go
+++ b/tencentcloud/services/cos/resource_tc_cos_bucket_inventory.go
@@ -83,9 +83,9 @@ func ResourceTencentCloudCosBucketInventory() *schema.Resource {
},
},
"optional_fields": {
- Type: schema.TypeList,
- MaxItems: 1,
- Optional: true,
+ Type: schema.TypeList,
+ MaxItems: 1,
+ Optional: true,
Description: "Analysis items to include in the inventory result .",
Elem: &schema.Resource{
Schema: map[string]*schema.Schema{
diff --git a/tencentcloud/services/crs/resource_tc_redis_log_delivery.go b/tencentcloud/services/crs/resource_tc_redis_log_delivery.go
new file mode 100644
index 0000000000..2fe46c7dae
--- /dev/null
+++ b/tencentcloud/services/crs/resource_tc_redis_log_delivery.go
@@ -0,0 +1,359 @@
+package crs
+
+import (
+ "context"
+ "log"
+
+ svcCls "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/services/cls"
+
+ "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
+ "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
+ redis "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412"
+ tccommon "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/common"
+ "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper"
+)
+
+func ResourceTencentCloudRedisLogDelivery() *schema.Resource {
+ return &schema.Resource{
+ Create: resourceTencentCloudRedisLogDeliveryCreate,
+ Read: resourceTencentCloudRedisLogDeliveryRead,
+ Update: resourceTencentCloudRedisLogDeliveryUpdate,
+ Delete: resourceTencentCloudRedisLogDeliveryDelete,
+ Importer: &schema.ResourceImporter{
+ State: schema.ImportStatePassthrough,
+ },
+ Schema: map[string]*schema.Schema{
+ "instance_id": {
+ Type: schema.TypeString,
+ Required: true,
+ ForceNew: true,
+ Description: "Instance ID.",
+ },
+
+ "logset_id": {
+ Type: schema.TypeString,
+ Optional: true,
+ Computed: true,
+ ConflictsWith: []string{"logset_name"},
+ Description: "The ID of the log set being delivered.",
+ },
+
+ "topic_id": {
+ Type: schema.TypeString,
+ Optional: true,
+ Computed: true,
+ ConflictsWith: []string{"topic_name"},
+ Description: "The ID of the topic being delivered.",
+ },
+
+ "logset_name": {
+ Type: schema.TypeString,
+ Optional: true,
+ ConflictsWith: []string{"logset_id"},
+ Computed: true,
+ Description: "Log set name. If LogsetId does not specify a specific log set ID, please configure this parameter to set the log set name, and the system will automatically create a new log set with the specified name.",
+ },
+
+ "topic_name": {
+ Type: schema.TypeString,
+ Optional: true,
+ ConflictsWith: []string{"topic_id"},
+ Computed: true,
+ Description: "Log topic name, required when TopicId is empty, a new log topic will be automatically created.",
+ },
+
+ "log_region": {
+ Type: schema.TypeString,
+ Optional: true,
+ Computed: true,
+ Description: "The region where the log set is located; if not specified, the region where the instance is located will be used by default.",
+ },
+
+ "period": {
+ Type: schema.TypeInt,
+ Optional: true,
+ Computed: true,
+ Description: "Log storage time, defaults to 30 days, with an optional range of 1-3600 days.",
+ },
+
+ "create_index": {
+ Type: schema.TypeBool,
+ Optional: true,
+ Computed: true,
+ Description: "Whether to create an index when creating a log topic.",
+ },
+ },
+ }
+}
+
+func resourceTencentCloudRedisLogDeliveryCreate(d *schema.ResourceData, meta interface{}) error {
+ defer tccommon.LogElapsed("resource.tencentcloud_redis_log_delivery.create")()
+ defer tccommon.InconsistentCheck(d, meta)()
+
+ logId := tccommon.GetLogId(tccommon.ContextNil)
+ ctx := tccommon.NewResourceLifeCycleHandleFuncContext(context.Background(), logId, d, meta)
+
+ var (
+ instanceId string
+ request = redis.NewModifyInstanceLogDeliveryRequest()
+ response = redis.NewModifyInstanceLogDeliveryResponse()
+ )
+
+ if v, ok := d.GetOk("instance_id"); ok {
+ instanceId = v.(string)
+ request.InstanceId = helper.String(instanceId)
+ }
+
+ request.LogType = helper.String("slowlog")
+ request.Enabled = helper.Bool(true)
+
+ if v, ok := d.GetOk("logset_id"); ok {
+ request.LogsetId = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOk("topic_id"); ok {
+ request.TopicId = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOk("logset_name"); ok {
+ request.LogsetName = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOk("topic_name"); ok {
+ request.TopicName = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOk("log_region"); ok {
+ request.LogRegion = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOkExists("period"); ok {
+ request.Period = helper.IntInt64(v.(int))
+ }
+
+ if v, ok := d.GetOkExists("create_index"); ok {
+ request.CreateIndex = helper.Bool(v.(bool))
+ }
+
+ err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
+ result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseRedisClient().ModifyInstanceLogDeliveryWithContext(ctx, 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 create RedisLogDelivery failed, reason:%+v", logId, err)
+ return err
+ }
+
+ _ = response
+ d.SetId(instanceId)
+
+ return resourceTencentCloudRedisLogDeliveryRead(d, meta)
+}
+
+func resourceTencentCloudRedisLogDeliveryRead(d *schema.ResourceData, meta interface{}) error {
+ defer tccommon.LogElapsed("resource.tencentcloud_redis_log_delivery.read")()
+ defer tccommon.InconsistentCheck(d, meta)()
+
+ logId := tccommon.GetLogId(tccommon.ContextNil)
+
+ ctx := tccommon.NewResourceLifeCycleHandleFuncContext(context.Background(), logId, d, meta)
+
+ client := meta.(tccommon.ProviderMeta).GetAPIV3Conn()
+ service := RedisService{client: meta.(tccommon.ProviderMeta).GetAPIV3Conn()}
+ clsService := svcCls.NewClsService(client)
+
+ instanceId := d.Id()
+
+ respData, err := service.DescribeRedisLogDeliveryById(ctx, instanceId)
+ if err != nil {
+ return err
+ }
+
+ if respData == nil {
+ d.SetId("")
+ log.Printf("[WARN]%s resource `RedisLogDelivery` [%s] not found, please check if it has been deleted.\n", logId, d.Id())
+ return nil
+ }
+
+ _ = d.Set("instance_id", instanceId)
+
+ if respData.LogsetId != nil {
+ logsetId := respData.LogsetId
+ _ = d.Set("logset_id", logsetId)
+
+ logset, err := clsService.DescribeClsLogset(ctx, *logsetId)
+ if err != nil {
+ return err
+ }
+
+ if logset != nil {
+ _ = d.Set("logset_name", logset.LogsetName)
+ }
+
+ }
+
+ if respData.TopicId != nil {
+ topicId := respData.TopicId
+ _ = d.Set("topic_id", topicId)
+
+ topic, err := clsService.DescribeClsTopicById(ctx, *topicId)
+ if err != nil {
+ return err
+ }
+
+ if topic != nil {
+ if topic.TopicName != nil {
+ _ = d.Set("topic_name", topic.TopicName)
+ }
+ if topic.TopicName != nil {
+ _ = d.Set("topic_name", topic.TopicName)
+ }
+ if topic.Period != nil {
+ _ = d.Set("period", topic.Period)
+ }
+ if topic.Index != nil {
+ _ = d.Set("create_index", topic.Index)
+ }
+ }
+ }
+
+ if respData.LogRegion != nil {
+ _ = d.Set("log_region", respData.LogRegion)
+ }
+
+ _ = instanceId
+ return nil
+}
+
+func resourceTencentCloudRedisLogDeliveryUpdate(d *schema.ResourceData, meta interface{}) error {
+ defer tccommon.LogElapsed("resource.tencentcloud_redis_log_delivery.update")()
+ defer tccommon.InconsistentCheck(d, meta)()
+
+ logId := tccommon.GetLogId(tccommon.ContextNil)
+
+ ctx := tccommon.NewResourceLifeCycleHandleFuncContext(context.Background(), logId, d, meta)
+
+ instanceId := d.Id()
+
+ needChange := false
+ mutableArgs := []string{"logset_id", "topic_id", "logset_name", "topic_name"}
+ for _, v := range mutableArgs {
+ if d.HasChange(v) {
+ needChange = true
+ break
+ }
+ }
+
+ if needChange {
+ var (
+ request = redis.NewModifyInstanceLogDeliveryRequest()
+ )
+
+ request.InstanceId = helper.String(instanceId)
+ request.LogType = helper.String("slowlog")
+
+ request.Enabled = helper.Bool(true)
+
+ if d.HasChange("topic_id") || d.HasChange("logset_id") {
+ if v, ok := d.GetOk("topic_id"); ok {
+ request.TopicId = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOk("logset_id"); ok {
+ request.LogsetId = helper.String(v.(string))
+ }
+
+ }
+
+ if d.HasChange("logset_name") || d.HasChange("topic_name") {
+
+ if v, ok := d.GetOk("logset_name"); ok {
+ request.LogsetName = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOk("topic_name"); ok {
+ request.TopicName = helper.String(v.(string))
+ }
+
+ if d.HasChange("topic_name") && !d.HasChange("logset_name") && !d.HasChange("logset_id") {
+ if v, ok := d.GetOk("logset_id"); ok {
+ request.LogsetId = helper.String(v.(string))
+ }
+ }
+
+ if v, ok := d.GetOk("log_region"); ok {
+ request.LogRegion = helper.String(v.(string))
+ }
+
+ if v, ok := d.GetOkExists("period"); ok {
+ request.Period = helper.IntInt64(v.(int))
+ }
+
+ if v, ok := d.GetOkExists("create_index"); ok {
+ request.CreateIndex = helper.Bool(v.(bool))
+ }
+ }
+
+ err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
+ result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseRedisClient().ModifyInstanceLogDeliveryWithContext(ctx, 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())
+ }
+ _ = result
+ return nil
+ })
+ if err != nil {
+ log.Printf("[CRITAL]%s create RedisLogDelivery failed, reason:%+v", logId, err)
+ return err
+ }
+ }
+
+ _ = instanceId
+ return resourceTencentCloudRedisLogDeliveryRead(d, meta)
+}
+
+func resourceTencentCloudRedisLogDeliveryDelete(d *schema.ResourceData, meta interface{}) error {
+ defer tccommon.LogElapsed("resource.tencentcloud_redis_log_delivery.delete")()
+ defer tccommon.InconsistentCheck(d, meta)()
+
+ logId := tccommon.GetLogId(tccommon.ContextNil)
+ ctx := tccommon.NewResourceLifeCycleHandleFuncContext(context.Background(), logId, d, meta)
+
+ instanceId := d.Id()
+
+ var (
+ request = redis.NewModifyInstanceLogDeliveryRequest()
+ response = redis.NewModifyInstanceLogDeliveryResponse()
+ )
+
+ request.InstanceId = helper.String(instanceId)
+ request.LogType = helper.String("slowlog")
+ request.Enabled = helper.Bool(false)
+
+ err := resource.Retry(tccommon.WriteRetryTimeout, func() *resource.RetryError {
+ result, e := meta.(tccommon.ProviderMeta).GetAPIV3Conn().UseRedisClient().ModifyInstanceLogDeliveryWithContext(ctx, 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 delete RedisLogDelivery failed, reason:%+v", logId, err)
+ return err
+ }
+
+ _ = response
+ _ = instanceId
+ return nil
+}
diff --git a/tencentcloud/services/crs/resource_tc_redis_log_delivery.md b/tencentcloud/services/crs/resource_tc_redis_log_delivery.md
new file mode 100644
index 0000000000..cc11d5af7f
--- /dev/null
+++ b/tencentcloud/services/crs/resource_tc_redis_log_delivery.md
@@ -0,0 +1,49 @@
+Provides a resource to create Redis instance log delivery land set its attributes.
+
+~> **NOTE:** When you use an existing cls logset and topic to enable logging, there is no need to set parameters such
+as `period`, `create_index`, `log_region`, etc.
+
+Example Usage
+
+Use cls logset and topic which existed
+
+```hcl
+resource "tencentcloud_redis_log_delivery" "delivery" {
+ instance_id = "crs-dmjj8en7"
+ logset_id = "cc31d9d6-74c0-4888-8b2f-b8148c3bcc5c"
+ topic_id = "5c2333e9-0bab-41fd-9f75-c602b3f9545f"
+}
+```
+
+Use exist cls logset and create new topic
+
+```hcl
+resource "tencentcloud_redis_log_delivery" "delivery" {
+ instance_id = "crs-dmjj8en7"
+ logset_id = "cc31d9d6-74c0-4888-8b2f-b8148c3bcc5c"
+ topic_name = "test13"
+ period = 20
+ create_index = true
+}
+```
+
+Create new cls logset and topic
+
+```hcl
+resource "tencentcloud_redis_log_delivery" "delivery" {
+ instance_id = "crs-dmjj8en7"
+ log_region = "ap-guangzhou"
+ logset_name = "test"
+ topic_name = "test"
+ period = 20
+ create_index = true
+}
+```
+
+Import
+
+Redis log delivery can be imported, e.g.
+
+```
+$ terraform import tencentcloud_redis_log_delivery.delivery crs-dmjj8en7
+```
\ No newline at end of file
diff --git a/tencentcloud/services/crs/resource_tc_redis_log_delivery_test.go b/tencentcloud/services/crs/resource_tc_redis_log_delivery_test.go
new file mode 100644
index 0000000000..32cf9020e1
--- /dev/null
+++ b/tencentcloud/services/crs/resource_tc_redis_log_delivery_test.go
@@ -0,0 +1,38 @@
+package crs_test
+
+import (
+ "testing"
+
+ "github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
+ tcacctest "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/acctest"
+)
+
+func TestAccTencentCloudRedisLogDeliveryResource_basic(t *testing.T) {
+ t.Parallel()
+ resource.Test(t, resource.TestCase{
+ PreCheck: func() {
+ tcacctest.AccPreCheck(t)
+ },
+ Providers: tcacctest.AccProviders,
+ Steps: []resource.TestStep{{
+ Config: testAccRedisLogDelivery,
+ Check: resource.ComposeTestCheckFunc(resource.TestCheckResourceAttrSet("tencentcloud_redis_log_delivery.delivery", "id")),
+ }, {
+ ResourceName: "tencentcloud_redis_log_delivery.delivery",
+ ImportState: true,
+ ImportStateVerify: true,
+ }},
+ })
+}
+
+const testAccRedisLogDelivery = `
+
+resource "tencentcloud_redis_log_delivery" "delivery" {
+ instance_id = "crs-dmjj8en7"
+ log_region = "ap-guangzhou"
+ logset_name = "test"
+ topic_name = "test"
+ period = 20
+ create_index = true
+}
+`
diff --git a/tencentcloud/services/crs/service_tencentcloud_redis.go b/tencentcloud/services/crs/service_tencentcloud_redis.go
index 549dc021c3..e8d36f853b 100644
--- a/tencentcloud/services/crs/service_tencentcloud_redis.go
+++ b/tencentcloud/services/crs/service_tencentcloud_redis.go
@@ -2000,3 +2000,32 @@ func (me *RedisService) DescribeRedisClustersByFilter(ctx context.Context, param
Clusters = response.Response.Resources
return
}
+
+func (me *RedisService) DescribeRedisLogDeliveryById(ctx context.Context, instanceId string) (ret *redis.LogDeliveryInfo, errRet error) {
+ logId := tccommon.GetLogId(ctx)
+
+ request := redis.NewDescribeInstanceLogDeliveryRequest()
+ request.InstanceId = helper.String(instanceId)
+
+ defer func() {
+ if errRet != nil {
+ log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n", logId, request.GetAction(), request.ToJsonString(), errRet.Error())
+ }
+ }()
+
+ ratelimit.Check(request.GetAction())
+
+ response, err := me.client.UseRedisClient().DescribeInstanceLogDelivery(request)
+ if err != nil {
+ errRet = err
+ return
+ }
+ log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString())
+
+ if response.Response == nil {
+ return
+ }
+
+ ret = response.Response.SlowLog
+ return
+}
diff --git a/tencentcloud/services/monitor/data_source_tc_monitor_alarm_policy.go b/tencentcloud/services/monitor/data_source_tc_monitor_alarm_policy.go
index 912ed84f1e..5f4f0b097e 100644
--- a/tencentcloud/services/monitor/data_source_tc_monitor_alarm_policy.go
+++ b/tencentcloud/services/monitor/data_source_tc_monitor_alarm_policy.go
@@ -426,8 +426,8 @@ func DataSourceTencentCloudMonitorAlarmPolicy() *schema.Resource {
Description: "Statistical period in seconds. The valid values can be queried via DescribeAlarmMetricsNote: this field may return null, indicating that no valid value is obtained.",
},
"operator": {
- Type: schema.TypeString,
- Computed: true,
+ Type: schema.TypeString,
+ Computed: true,
Description: "Statistical period in seconds. The valid values can be queried via DescribeAlarmMetrics.Note: this field may return null, indicating that no valid value is obtained.Operator String No Operatorintelligent = intelligent detection without thresholdeq = equal toge = greater than or equal togt = greater thanle = less than or equal tolt = less thanne = not equal today_increase = day-on-day increaseday_decrease = day-on-day decreaseday_wave = day-on-day fluctuationweek_increase = week-on-week increaseweek_decrease = week-on-week decreaseweek_wave = week-on-week fluctuationcycle_increase = cyclical increasecycle_decrease = cyclical decreasecycle_wave = cyclical fluctuationre = regex matchThe valid values can be queried via DescribeAlarmMetrics.Note: this field may return null, indicating that no valid value is obtained.",
},
"value": {
diff --git a/tencentcloud/services/mps/data_source_tc_mps_schedules.go b/tencentcloud/services/mps/data_source_tc_mps_schedules.go
index 60c2f7fbdc..e5148e812f 100644
--- a/tencentcloud/services/mps/data_source_tc_mps_schedules.go
+++ b/tencentcloud/services/mps/data_source_tc_mps_schedules.go
@@ -118,8 +118,8 @@ func DataSourceTencentCloudMpsSchedules() *schema.Resource {
Description: "The region of the AWS S3 bucket.",
},
"dir": {
- Type: schema.TypeString,
- Computed: true,
+ Type: schema.TypeString,
+ Computed: true,
Description: "The bucket directory bound. It must be an absolute path that starts and ends with `/`, such as `/movie/201907/`. If you do not specify this, the root directory will be bound. .",
},
"formats": {
@@ -127,7 +127,7 @@ func DataSourceTencentCloudMpsSchedules() *schema.Resource {
Elem: &schema.Schema{
Type: schema.TypeString,
},
- Computed: true,
+ Computed: true,
Description: "The file formats that will trigger the scheme, such as [mp4, flv, mov]. If you do not specify this, the upload of files in any format will trigger the scheme. .",
},
"s3_secret_id": {
diff --git a/tencentcloud/services/mps/resource_tc_mps_schedule.go b/tencentcloud/services/mps/resource_tc_mps_schedule.go
index e4fe5f5179..1db11823b2 100644
--- a/tencentcloud/services/mps/resource_tc_mps_schedule.go
+++ b/tencentcloud/services/mps/resource_tc_mps_schedule.go
@@ -92,8 +92,8 @@ func ResourceTencentCloudMpsSchedule() *schema.Resource {
Description: "The region of the AWS S3 bucket.",
},
"dir": {
- Type: schema.TypeString,
- Optional: true,
+ Type: schema.TypeString,
+ Optional: true,
Description: "The bucket directory bound. It must be an absolute path that starts and ends with `/`, such as `/movie/201907/`. If you do not specify this, the root directory will be bound. .",
},
"formats": {
@@ -101,7 +101,7 @@ func ResourceTencentCloudMpsSchedule() *schema.Resource {
Elem: &schema.Schema{
Type: schema.TypeString,
},
- Optional: true,
+ Optional: true,
Description: "The file formats that will trigger the scheme, such as [mp4, flv, mov]. If you do not specify this, the upload of files in any format will trigger the scheme. .",
},
"s3_secret_id": {
diff --git a/tencentcloud/services/tco/resource_tc_organization_service_assign.go b/tencentcloud/services/tco/resource_tc_organization_service_assign.go
index 599ae23b87..9af8f2b704 100644
--- a/tencentcloud/services/tco/resource_tc_organization_service_assign.go
+++ b/tencentcloud/services/tco/resource_tc_organization_service_assign.go
@@ -3,13 +3,14 @@ package tco
import (
"context"
"fmt"
+ "log"
+ "strconv"
+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
organization "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization/v20210331"
tccommon "github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/common"
"github.com/tencentcloudstack/terraform-provider-tencentcloud/tencentcloud/internal/helper"
- "log"
- "strconv"
)
func ResourceTencentCloudOrganizationServiceAssign() *schema.Resource {
diff --git a/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go b/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go
index 6ffd77162f..28ad0df07b 100644
--- a/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go
+++ b/tencentcloud/services/tke/resource_tc_kubernetes_native_node_pool.go
@@ -5,10 +5,11 @@ import (
"context"
"encoding/base64"
"fmt"
- sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
"log"
"strings"
+ sdkErrors "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common/errors"
+
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
tke2 "github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke/v20220501"
diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/client.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/client.go
index dd51e00194..0dd5a111de 100644
--- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/client.go
+++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/client.go
@@ -2092,6 +2092,57 @@ func (c *Client) DescribeInstanceEventsWithContext(ctx context.Context, request
return
}
+func NewDescribeInstanceLogDeliveryRequest() (request *DescribeInstanceLogDeliveryRequest) {
+ request = &DescribeInstanceLogDeliveryRequest{
+ BaseRequest: &tchttp.BaseRequest{},
+ }
+
+ request.Init().WithApiInfo("redis", APIVersion, "DescribeInstanceLogDelivery")
+
+
+ return
+}
+
+func NewDescribeInstanceLogDeliveryResponse() (response *DescribeInstanceLogDeliveryResponse) {
+ response = &DescribeInstanceLogDeliveryResponse{
+ BaseResponse: &tchttp.BaseResponse{},
+ }
+ return
+
+}
+
+// DescribeInstanceLogDelivery
+// 本接口(DescribeInstanceLogDelivery)用于查询实例的日志投递配置。
+//
+// 可能返回的错误码:
+// INTERNALERROR_INTERNALERROR = "InternalError.InternalError"
+// RESOURCENOTFOUND_INSTANCENOTEXISTS = "ResourceNotFound.InstanceNotExists"
+func (c *Client) DescribeInstanceLogDelivery(request *DescribeInstanceLogDeliveryRequest) (response *DescribeInstanceLogDeliveryResponse, err error) {
+ return c.DescribeInstanceLogDeliveryWithContext(context.Background(), request)
+}
+
+// DescribeInstanceLogDelivery
+// 本接口(DescribeInstanceLogDelivery)用于查询实例的日志投递配置。
+//
+// 可能返回的错误码:
+// INTERNALERROR_INTERNALERROR = "InternalError.InternalError"
+// RESOURCENOTFOUND_INSTANCENOTEXISTS = "ResourceNotFound.InstanceNotExists"
+func (c *Client) DescribeInstanceLogDeliveryWithContext(ctx context.Context, request *DescribeInstanceLogDeliveryRequest) (response *DescribeInstanceLogDeliveryResponse, err error) {
+ if request == nil {
+ request = NewDescribeInstanceLogDeliveryRequest()
+ }
+
+ if c.GetCredential() == nil {
+ return nil, errors.New("DescribeInstanceLogDelivery require credential")
+ }
+
+ request.SetContext(ctx)
+
+ response = NewDescribeInstanceLogDeliveryResponse()
+ err = c.Send(request, response)
+ return
+}
+
func NewDescribeInstanceMonitorBigKeyRequest() (request *DescribeInstanceMonitorBigKeyRequest) {
request = &DescribeInstanceMonitorBigKeyRequest{
BaseRequest: &tchttp.BaseRequest{},
@@ -2508,6 +2559,7 @@ func NewDescribeInstanceNodeInfoResponse() (response *DescribeInstanceNodeInfoRe
//
// 可能返回的错误码:
// FAILEDOPERATION_SYSTEMERROR = "FailedOperation.SystemError"
+// FAILEDOPERATION_UNSUPPORTERROR = "FailedOperation.UnSupportError"
// INTERNALERROR_INTERNALERROR = "InternalError.InternalError"
// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied"
// RESOURCENOTFOUND_INSTANCENOTEXISTS = "ResourceNotFound.InstanceNotExists"
@@ -2520,6 +2572,7 @@ func (c *Client) DescribeInstanceNodeInfo(request *DescribeInstanceNodeInfoReque
//
// 可能返回的错误码:
// FAILEDOPERATION_SYSTEMERROR = "FailedOperation.SystemError"
+// FAILEDOPERATION_UNSUPPORTERROR = "FailedOperation.UnSupportError"
// INTERNALERROR_INTERNALERROR = "InternalError.InternalError"
// INVALIDPARAMETER_PERMISSIONDENIED = "InvalidParameter.PermissionDenied"
// RESOURCENOTFOUND_INSTANCENOTEXISTS = "ResourceNotFound.InstanceNotExists"
@@ -5186,6 +5239,61 @@ func (c *Client) ModifyInstanceEventWithContext(ctx context.Context, request *Mo
return
}
+func NewModifyInstanceLogDeliveryRequest() (request *ModifyInstanceLogDeliveryRequest) {
+ request = &ModifyInstanceLogDeliveryRequest{
+ BaseRequest: &tchttp.BaseRequest{},
+ }
+
+ request.Init().WithApiInfo("redis", APIVersion, "ModifyInstanceLogDelivery")
+
+
+ return
+}
+
+func NewModifyInstanceLogDeliveryResponse() (response *ModifyInstanceLogDeliveryResponse) {
+ response = &ModifyInstanceLogDeliveryResponse{
+ BaseResponse: &tchttp.BaseResponse{},
+ }
+ return
+
+}
+
+// ModifyInstanceLogDelivery
+// 本接口(ModifyInstanceLogDelivery)用于开启或关闭投递实例日志到CLS。
+//
+// 可能返回的错误码:
+// INTERNALERROR_INTERNALERROR = "InternalError.InternalError"
+// INVALIDPARAMETER_INVALIDPARAMETER = "InvalidParameter.InvalidParameter"
+// INVALIDPARAMETER_NOTSUPPORTED = "InvalidParameter.NotSupported"
+// RESOURCENOTFOUND_INSTANCENOTEXISTS = "ResourceNotFound.InstanceNotExists"
+func (c *Client) ModifyInstanceLogDelivery(request *ModifyInstanceLogDeliveryRequest) (response *ModifyInstanceLogDeliveryResponse, err error) {
+ return c.ModifyInstanceLogDeliveryWithContext(context.Background(), request)
+}
+
+// ModifyInstanceLogDelivery
+// 本接口(ModifyInstanceLogDelivery)用于开启或关闭投递实例日志到CLS。
+//
+// 可能返回的错误码:
+// INTERNALERROR_INTERNALERROR = "InternalError.InternalError"
+// INVALIDPARAMETER_INVALIDPARAMETER = "InvalidParameter.InvalidParameter"
+// INVALIDPARAMETER_NOTSUPPORTED = "InvalidParameter.NotSupported"
+// RESOURCENOTFOUND_INSTANCENOTEXISTS = "ResourceNotFound.InstanceNotExists"
+func (c *Client) ModifyInstanceLogDeliveryWithContext(ctx context.Context, request *ModifyInstanceLogDeliveryRequest) (response *ModifyInstanceLogDeliveryResponse, err error) {
+ if request == nil {
+ request = NewModifyInstanceLogDeliveryRequest()
+ }
+
+ if c.GetCredential() == nil {
+ return nil, errors.New("ModifyInstanceLogDelivery require credential")
+ }
+
+ request.SetContext(ctx)
+
+ response = NewModifyInstanceLogDeliveryResponse()
+ err = c.Send(request, response)
+ return
+}
+
func NewModifyInstanceParamsRequest() (request *ModifyInstanceParamsRequest) {
request = &ModifyInstanceParamsRequest{
BaseRequest: &tchttp.BaseRequest{},
@@ -6230,7 +6338,7 @@ func NewUpgradeInstanceResponse() (response *UpgradeInstanceResponse) {
}
// UpgradeInstance
-// 变更实例配置
+// 本接口(UpgradeInstance)用于变更实例的配置规格。
//
// 可能返回的错误码:
// FAILEDOPERATION_PAYFAILED = "FailedOperation.PayFailed"
@@ -6255,7 +6363,7 @@ func (c *Client) UpgradeInstance(request *UpgradeInstanceRequest) (response *Upg
}
// UpgradeInstance
-// 变更实例配置
+// 本接口(UpgradeInstance)用于变更实例的配置规格。
//
// 可能返回的错误码:
// FAILEDOPERATION_PAYFAILED = "FailedOperation.PayFailed"
diff --git a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/models.go b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/models.go
index 18894d5793..d07b7a1263 100644
--- a/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/models.go
+++ b/vendor/github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/redis/v20180412/models.go
@@ -2272,7 +2272,7 @@ type DescribeCommonDBInstancesRequestParams struct {
// 计费类型过滤列表;0表示包年包月,1表示按量计费
PayMode *int64 `json:"PayMode,omitnil,omitempty" name:"PayMode"`
- // 实例ID过滤信息列表
+ // 实例ID过滤信息列表,数组最大长度限制为100
InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"`
// 实例名称过滤信息列表
@@ -2315,7 +2315,7 @@ type DescribeCommonDBInstancesRequest struct {
// 计费类型过滤列表;0表示包年包月,1表示按量计费
PayMode *int64 `json:"PayMode,omitnil,omitempty" name:"PayMode"`
- // 实例ID过滤信息列表
+ // 实例ID过滤信息列表,数组最大长度限制为100
InstanceIds []*string `json:"InstanceIds,omitnil,omitempty" name:"InstanceIds"`
// 实例名称过滤信息列表
@@ -2806,49 +2806,49 @@ func (r *DescribeInstanceDTSInfoResponse) FromJsonString(s string) error {
}
type DescribeInstanceDTSInstanceInfo struct {
- // 地域ID
+ // 地域 ID。
// 注意:此字段可能返回 null,表示取不到有效值。
RegionId *int64 `json:"RegionId,omitnil,omitempty" name:"RegionId"`
- // 实例ID
+ // 实例 ID。
// 注意:此字段可能返回 null,表示取不到有效值。
InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"`
- // 仓库ID
+ // 仓库ID。
// 注意:此字段可能返回 null,表示取不到有效值。
SetId *int64 `json:"SetId,omitnil,omitempty" name:"SetId"`
- // 可用区ID
+ // 可用区ID。
// 注意:此字段可能返回 null,表示取不到有效值。
ZoneId *int64 `json:"ZoneId,omitnil,omitempty" name:"ZoneId"`
- // 实例类型
+ // 实例类型。
// 注意:此字段可能返回 null,表示取不到有效值。
Type *int64 `json:"Type,omitnil,omitempty" name:"Type"`
- // 实例名称
+ // 实例名称。
// 注意:此字段可能返回 null,表示取不到有效值。
InstanceName *string `json:"InstanceName,omitnil,omitempty" name:"InstanceName"`
- // 实例访问地址
+ // 实例访问地址。
// 注意:此字段可能返回 null,表示取不到有效值。
Vip *string `json:"Vip,omitnil,omitempty" name:"Vip"`
- // 状态
+ // 状态。
// 注意:此字段可能返回 null,表示取不到有效值。
Status *int64 `json:"Status,omitnil,omitempty" name:"Status"`
}
// Predefined struct for user
type DescribeInstanceDealDetailRequestParams struct {
- // 订单交易ID数组,即 [CreateInstances](https://cloud.tencent.com/document/api/239/20026) 的输出参数DealId。
+ // 订单交易ID数组,即 [CreateInstances](https://cloud.tencent.com/document/api/239/20026) 的输出参数DealId。数组最大长度限制为10
DealIds []*string `json:"DealIds,omitnil,omitempty" name:"DealIds"`
}
type DescribeInstanceDealDetailRequest struct {
*tchttp.BaseRequest
- // 订单交易ID数组,即 [CreateInstances](https://cloud.tencent.com/document/api/239/20026) 的输出参数DealId。
+ // 订单交易ID数组,即 [CreateInstances](https://cloud.tencent.com/document/api/239/20026) 的输出参数DealId。数组最大长度限制为10
DealIds []*string `json:"DealIds,omitnil,omitempty" name:"DealIds"`
}
@@ -3021,6 +3021,63 @@ func (r *DescribeInstanceEventsResponse) FromJsonString(s string) error {
return json.Unmarshal([]byte(s), &r)
}
+// Predefined struct for user
+type DescribeInstanceLogDeliveryRequestParams struct {
+ // 实例ID。
+ InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"`
+}
+
+type DescribeInstanceLogDeliveryRequest struct {
+ *tchttp.BaseRequest
+
+ // 实例ID。
+ InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"`
+}
+
+func (r *DescribeInstanceLogDeliveryRequest) 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 *DescribeInstanceLogDeliveryRequest) 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", "DescribeInstanceLogDeliveryRequest has unknown keys!", "")
+ }
+ return json.Unmarshal([]byte(s), &r)
+}
+
+// Predefined struct for user
+type DescribeInstanceLogDeliveryResponseParams struct {
+ // 实例慢日志投递信息。
+ SlowLog *LogDeliveryInfo `json:"SlowLog,omitnil,omitempty" name:"SlowLog"`
+
+ // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
+ RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"`
+}
+
+type DescribeInstanceLogDeliveryResponse struct {
+ *tchttp.BaseResponse
+ Response *DescribeInstanceLogDeliveryResponseParams `json:"Response"`
+}
+
+func (r *DescribeInstanceLogDeliveryResponse) 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 *DescribeInstanceLogDeliveryResponse) FromJsonString(s string) error {
+ return json.Unmarshal([]byte(s), &r)
+}
+
// Predefined struct for user
type DescribeInstanceMonitorBigKeyRequestParams struct {
// 实例Id
@@ -4542,16 +4599,18 @@ type DescribeParamTemplateInfoResponseParams struct {
Name *string `json:"Name,omitnil,omitempty" name:"Name"`
// 产品类型。
- // - 2:Redis 2.8内存版(标准架构)。
- // - 3:CKV 3.2内存版(标准架构)。
- // - 4:CKV 3.2内存版(集群架构)。
- // - 5:Redis 2.8内存版(单机)。
- // - 6:Redis 4.0内存版(标准架构)。
- // - 7:Redis 4.0内存版(集群架构)。
- // - 8:Redis 5.0内存版(标准架构)。
- // - 9:Redis 5.0内存版(集群架构)。
- // - 15:Redis 6.2内存版(标准架构)。
- // - 16:Redis 6.2内存版(集群架构)。
+ // - 2:Redis 2.8 内存版(标准架构)。
+ // - 3:CKV 3.2 内存版(标准架构)。
+ // - 4:CKV 3.2 内存版(集群架构)。
+ // - 5:Redis 2.8 内存版(单机)。
+ // - 6:Redis 4.0 内存版(标准架构)。
+ // - 7:Redis 4.0 内存版(集群架构)。
+ // - 8:Redis 5.0 内存版(标准架构)。
+ // - 9:Redis 5.0 内存版(集群架构)。
+ // - 15:Redis 6.2 内存版(标准架构)。
+ // - 16:Redis 6.2 内存版(集群架构)。
+ // - 17:Redis 7.0 内存版(标准架构)。
+ // - 18:Redis 7.0 内存版(集群架构)。
ProductType *uint64 `json:"ProductType,omitnil,omitempty" name:"ProductType"`
// 参数模板描述。
@@ -4592,12 +4651,14 @@ type DescribeParamTemplatesRequestParams struct {
// - 9:Redis 5.0 内存版(集群架构)。
// - 15:Redis 6.2 内存版(标准架构)。
// - 16:Redis 6.2 内存版(集群架构)。
+ // - 17:Redis 7.0 内存版(标准架构)。
+ // - 18:Redis 7.0 内存版(集群架构)。
ProductTypes []*int64 `json:"ProductTypes,omitnil,omitempty" name:"ProductTypes"`
- // 模板名称数组。
+ // 模板名称数组。数组最大长度限制为50
TemplateNames []*string `json:"TemplateNames,omitnil,omitempty" name:"TemplateNames"`
- // 模板ID数组。
+ // 模板ID数组。数组最大长度限制为50
TemplateIds []*string `json:"TemplateIds,omitnil,omitempty" name:"TemplateIds"`
}
@@ -4614,12 +4675,14 @@ type DescribeParamTemplatesRequest struct {
// - 9:Redis 5.0 内存版(集群架构)。
// - 15:Redis 6.2 内存版(标准架构)。
// - 16:Redis 6.2 内存版(集群架构)。
+ // - 17:Redis 7.0 内存版(标准架构)。
+ // - 18:Redis 7.0 内存版(集群架构)。
ProductTypes []*int64 `json:"ProductTypes,omitnil,omitempty" name:"ProductTypes"`
- // 模板名称数组。
+ // 模板名称数组。数组最大长度限制为50
TemplateNames []*string `json:"TemplateNames,omitnil,omitempty" name:"TemplateNames"`
- // 模板ID数组。
+ // 模板ID数组。数组最大长度限制为50
TemplateIds []*string `json:"TemplateIds,omitnil,omitempty" name:"TemplateIds"`
}
@@ -7289,6 +7352,24 @@ func (r *KillMasterGroupResponse) FromJsonString(s string) error {
return json.Unmarshal([]byte(s), &r)
}
+type LogDeliveryInfo struct {
+ // 日志投递开启状态,开启:true,关闭:false
+ // 注意:此字段可能返回 null,表示取不到有效值。
+ Enabled *bool `json:"Enabled,omitnil,omitempty" name:"Enabled"`
+
+ // 日志集ID。
+ // 注意:此字段可能返回 null,表示取不到有效值。
+ LogsetId *string `json:"LogsetId,omitnil,omitempty" name:"LogsetId"`
+
+ // 日志主题ID。
+ // 注意:此字段可能返回 null,表示取不到有效值。
+ TopicId *string `json:"TopicId,omitnil,omitempty" name:"TopicId"`
+
+ // 日志集所在地域
+ // 注意:此字段可能返回 null,表示取不到有效值。
+ LogRegion *string `json:"LogRegion,omitnil,omitempty" name:"LogRegion"`
+}
+
// Predefined struct for user
type ManualBackupInstanceRequestParams struct {
// 指定实例 ID。例如:crs-xjhsdj****。请登录[Redis控制台](https://console.cloud.tencent.com/redis)在实例列表复制实例 ID。
@@ -8041,6 +8122,127 @@ func (r *ModifyInstanceEventResponse) FromJsonString(s string) error {
return json.Unmarshal([]byte(s), &r)
}
+// Predefined struct for user
+type ModifyInstanceLogDeliveryRequestParams struct {
+ // 实例ID。
+ InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"`
+
+ // 日志类型。当前仅支持设置为slowlog,指慢查询日志。
+ LogType *string `json:"LogType,omitnil,omitempty" name:"LogType"`
+
+ // 日志投递开启状态。
+ // - true:开启。
+ // - false:关闭。
+ Enabled *bool `json:"Enabled,omitnil,omitempty" name:"Enabled"`
+
+ // 投递的日志集ID。
+ LogsetId *string `json:"LogsetId,omitnil,omitempty" name:"LogsetId"`
+
+ // 投递的日志主题ID。
+ TopicId *string `json:"TopicId,omitnil,omitempty" name:"TopicId"`
+
+ // 日志集名称。若**LogsetId**未指定具体的日志集ID,请配置该参数,设置日志集名称,系统会以设置的日志集名称自动创建新的日志集。
+ LogsetName *string `json:"LogsetName,omitnil,omitempty" name:"LogsetName"`
+
+ // 日志主题名称,TopicId为空时必传,会自动创建新的日志主题。
+ TopicName *string `json:"TopicName,omitnil,omitempty" name:"TopicName"`
+
+ // 日志集所在地域,不传默认使用实例所在地域。
+ LogRegion *string `json:"LogRegion,omitnil,omitempty" name:"LogRegion"`
+
+ // 日志存储时间,默认为30天,可选范围1-3600天。
+ Period *int64 `json:"Period,omitnil,omitempty" name:"Period"`
+
+ // 创建日志主题时,是否创建索引。
+ CreateIndex *bool `json:"CreateIndex,omitnil,omitempty" name:"CreateIndex"`
+}
+
+type ModifyInstanceLogDeliveryRequest struct {
+ *tchttp.BaseRequest
+
+ // 实例ID。
+ InstanceId *string `json:"InstanceId,omitnil,omitempty" name:"InstanceId"`
+
+ // 日志类型。当前仅支持设置为slowlog,指慢查询日志。
+ LogType *string `json:"LogType,omitnil,omitempty" name:"LogType"`
+
+ // 日志投递开启状态。
+ // - true:开启。
+ // - false:关闭。
+ Enabled *bool `json:"Enabled,omitnil,omitempty" name:"Enabled"`
+
+ // 投递的日志集ID。
+ LogsetId *string `json:"LogsetId,omitnil,omitempty" name:"LogsetId"`
+
+ // 投递的日志主题ID。
+ TopicId *string `json:"TopicId,omitnil,omitempty" name:"TopicId"`
+
+ // 日志集名称。若**LogsetId**未指定具体的日志集ID,请配置该参数,设置日志集名称,系统会以设置的日志集名称自动创建新的日志集。
+ LogsetName *string `json:"LogsetName,omitnil,omitempty" name:"LogsetName"`
+
+ // 日志主题名称,TopicId为空时必传,会自动创建新的日志主题。
+ TopicName *string `json:"TopicName,omitnil,omitempty" name:"TopicName"`
+
+ // 日志集所在地域,不传默认使用实例所在地域。
+ LogRegion *string `json:"LogRegion,omitnil,omitempty" name:"LogRegion"`
+
+ // 日志存储时间,默认为30天,可选范围1-3600天。
+ Period *int64 `json:"Period,omitnil,omitempty" name:"Period"`
+
+ // 创建日志主题时,是否创建索引。
+ CreateIndex *bool `json:"CreateIndex,omitnil,omitempty" name:"CreateIndex"`
+}
+
+func (r *ModifyInstanceLogDeliveryRequest) 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 *ModifyInstanceLogDeliveryRequest) 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, "LogType")
+ delete(f, "Enabled")
+ delete(f, "LogsetId")
+ delete(f, "TopicId")
+ delete(f, "LogsetName")
+ delete(f, "TopicName")
+ delete(f, "LogRegion")
+ delete(f, "Period")
+ delete(f, "CreateIndex")
+ if len(f) > 0 {
+ return tcerr.NewTencentCloudSDKError("ClientError.BuildRequestError", "ModifyInstanceLogDeliveryRequest has unknown keys!", "")
+ }
+ return json.Unmarshal([]byte(s), &r)
+}
+
+// Predefined struct for user
+type ModifyInstanceLogDeliveryResponseParams struct {
+ // 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
+ RequestId *string `json:"RequestId,omitnil,omitempty" name:"RequestId"`
+}
+
+type ModifyInstanceLogDeliveryResponse struct {
+ *tchttp.BaseResponse
+ Response *ModifyInstanceLogDeliveryResponseParams `json:"Response"`
+}
+
+func (r *ModifyInstanceLogDeliveryResponse) 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 *ModifyInstanceLogDeliveryResponse) FromJsonString(s string) error {
+ return json.Unmarshal([]byte(s), &r)
+}
+
// Predefined struct for user
type ModifyInstanceParamsRequestParams struct {
// 实例ID。
@@ -8082,7 +8284,7 @@ func (r *ModifyInstanceParamsRequest) FromJsonString(s string) error {
// Predefined struct for user
type ModifyInstanceParamsResponseParams struct {
- // 说明修改参数配置是否成功。