@@ -31,6 +31,12 @@ func ResourceTencentCloudClsLogset() *schema.Resource {
3131 Description : "Logset name, which must be unique." ,
3232 },
3333
34+ "tags" : {
35+ Type : schema .TypeMap ,
36+ Optional : true ,
37+ Description : "Tag description list." ,
38+ },
39+
3440 "create_time" : {
3541 Type : schema .TypeString ,
3642 Computed : true ,
@@ -48,12 +54,6 @@ func ResourceTencentCloudClsLogset() *schema.Resource {
4854 Computed : true ,
4955 Description : "If assumer_uin is not empty, it indicates the service provider who creates the logset." ,
5056 },
51-
52- "tags" : {
53- Type : schema .TypeMap ,
54- Optional : true ,
55- Description : "Tag description list." ,
56- },
5757 },
5858 }
5959}
@@ -62,11 +62,11 @@ func resourceTencentCloudClsLogsetCreate(d *schema.ResourceData, meta interface{
6262 defer tccommon .LogElapsed ("resource.tencentcloud_cls_logset.create" )()
6363 defer tccommon .InconsistentCheck (d , meta )()
6464
65- logId := tccommon .GetLogId (tccommon .ContextNil )
66-
6765 var (
66+ logId = tccommon .GetLogId (tccommon .ContextNil )
67+ ctx = context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
6868 request = cls .NewCreateLogsetRequest ()
69- response * cls.CreateLogsetResponse
69+ response = cls .NewCreateLogsetResponse ()
7070 )
7171
7272 if v , ok := d .GetOk ("logset_name" ); ok {
@@ -81,6 +81,11 @@ func resourceTencentCloudClsLogsetCreate(d *schema.ResourceData, meta interface{
8181 log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " ,
8282 logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
8383 }
84+
85+ if result == nil || result .Response == nil {
86+ return resource .NonRetryableError (fmt .Errorf ("Create cls logset failed, Response is nil." ))
87+ }
88+
8489 response = result
8590 return nil
8691 })
@@ -90,9 +95,13 @@ func resourceTencentCloudClsLogsetCreate(d *schema.ResourceData, meta interface{
9095 return err
9196 }
9297
98+ if response .Response .LogsetId == nil {
99+ return fmt .Errorf ("LogsetId is nil." )
100+ }
101+
93102 logsetId := * response .Response .LogsetId
103+ d .SetId (logsetId )
94104
95- ctx := context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
96105 if tags := helper .GetTags (d , "tags" ); len (tags ) > 0 {
97106 tagService := svctag .NewTagService (meta .(tccommon.ProviderMeta ).GetAPIV3Conn ())
98107 region := meta .(tccommon.ProviderMeta ).GetAPIV3Conn ().Region
@@ -101,23 +110,22 @@ func resourceTencentCloudClsLogsetCreate(d *schema.ResourceData, meta interface{
101110 return err
102111 }
103112 }
104- d . SetId ( logsetId )
113+
105114 return resourceTencentCloudClsLogsetRead (d , meta )
106115}
107116
108117func resourceTencentCloudClsLogsetRead (d * schema.ResourceData , meta interface {}) error {
109118 defer tccommon .LogElapsed ("resource.tencentcloud_cls_logset.read" )()
110119 defer tccommon .InconsistentCheck (d , meta )()
111120
112- logId := tccommon . GetLogId ( tccommon . ContextNil )
113- ctx := context . WithValue ( context . TODO (), tccommon .LogIdKey , logId )
114-
115- service : = ClsService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
116-
117- logsetId := d . Id ( )
121+ var (
122+ logId = tccommon . GetLogId ( tccommon .ContextNil )
123+ ctx = context . WithValue ( context . TODO (), tccommon . LogIdKey , logId )
124+ service = ClsService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
125+ logsetId = d . Id ()
126+ )
118127
119128 logset , err := service .DescribeClsLogset (ctx , logsetId )
120-
121129 if err != nil {
122130 return err
123131 }
@@ -149,6 +157,7 @@ func resourceTencentCloudClsLogsetRead(d *schema.ResourceData, meta interface{})
149157 if err != nil {
150158 return err
151159 }
160+
152161 _ = d .Set ("tags" , tags )
153162
154163 return nil
@@ -158,32 +167,33 @@ func resourceTencentCloudClsLogsetUpdate(d *schema.ResourceData, meta interface{
158167 defer tccommon .LogElapsed ("resource.tencentcloud_cls_logset.update" )()
159168 defer tccommon .InconsistentCheck (d , meta )()
160169
161- logId := tccommon .GetLogId (tccommon .ContextNil )
162- ctx := context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
163-
164- request := cls .NewModifyLogsetRequest ()
165-
166- request .LogsetId = helper .String (d .Id ())
170+ var (
171+ logId = tccommon .GetLogId (tccommon .ContextNil )
172+ ctx = context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
173+ )
167174
168175 if d .HasChange ("logset_name" ) {
176+ request := cls .NewModifyLogsetRequest ()
177+ request .LogsetId = helper .String (d .Id ())
169178 if v , ok := d .GetOk ("logset_name" ); ok {
170179 request .LogsetName = helper .String (v .(string ))
171180 }
172- }
173181
174- err := resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
175- result , e := meta .(tccommon.ProviderMeta ).GetAPIV3Conn ().UseClsClient ().ModifyLogset (request )
176- if e != nil {
177- return tccommon .RetryError (e )
178- } else {
179- log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " ,
180- logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
181- }
182- return nil
183- })
182+ err := resource .Retry (tccommon .WriteRetryTimeout , func () * resource.RetryError {
183+ result , e := meta .(tccommon.ProviderMeta ).GetAPIV3Conn ().UseClsClient ().ModifyLogset (request )
184+ if e != nil {
185+ return tccommon .RetryError (e )
186+ } else {
187+ log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " ,
188+ logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
189+ }
184190
185- if err != nil {
186- return err
191+ return nil
192+ })
193+
194+ if err != nil {
195+ return err
196+ }
187197 }
188198
189199 if d .HasChange ("tags" ) {
@@ -204,11 +214,12 @@ func resourceTencentCloudClsLogsetDelete(d *schema.ResourceData, meta interface{
204214 defer tccommon .LogElapsed ("resource.tencentcloud_cls_logset.delete" )()
205215 defer tccommon .InconsistentCheck (d , meta )()
206216
207- logId := tccommon .GetLogId (tccommon .ContextNil )
208- ctx := context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
209-
210- service := ClsService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
211- logsetId := d .Id ()
217+ var (
218+ logId = tccommon .GetLogId (tccommon .ContextNil )
219+ ctx = context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
220+ service = ClsService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
221+ logsetId = d .Id ()
222+ )
212223
213224 if err := service .DeleteClsLogsetById (ctx , logsetId ); err != nil {
214225 return err
0 commit comments