@@ -68,13 +68,13 @@ func resourceTencentCloudApmInstanceCreate(d *schema.ResourceData, meta interfac
68
68
defer tccommon .LogElapsed ("resource.tencentcloud_apm_instance.create" )()
69
69
defer tccommon .InconsistentCheck (d , meta )()
70
70
71
- logId := tccommon .GetLogId (tccommon .ContextNil )
72
-
73
71
var (
72
+ logId = tccommon .GetLogId (tccommon .ContextNil )
74
73
request = apm .NewCreateApmInstanceRequest ()
75
74
response = apm .NewCreateApmInstanceResponse ()
76
75
instanceId string
77
76
)
77
+
78
78
if v , ok := d .GetOk ("name" ); ok {
79
79
request .Name = helper .String (v .(string ))
80
80
}
@@ -102,9 +102,11 @@ func resourceTencentCloudApmInstanceCreate(d *schema.ResourceData, meta interfac
102
102
} else {
103
103
log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
104
104
}
105
+
105
106
response = result
106
107
return nil
107
108
})
109
+
108
110
if err != nil {
109
111
log .Printf ("[CRITAL]%s create apm instance failed, reason:%+v" , logId , err )
110
112
return err
@@ -130,15 +132,24 @@ func resourceTencentCloudApmInstanceRead(d *schema.ResourceData, meta interface{
130
132
defer tccommon .LogElapsed ("resource.tencentcloud_apm_instance.read" )()
131
133
defer tccommon .InconsistentCheck (d , meta )()
132
134
133
- logId := tccommon .GetLogId (tccommon .ContextNil )
134
-
135
- ctx := context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
135
+ var (
136
+ logId = tccommon .GetLogId (tccommon .ContextNil )
137
+ ctx = context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
138
+ service = ApmService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
139
+ instance * apm.ApmInstanceDetail
140
+ instanceId = d .Id ()
141
+ )
136
142
137
- service := ApmService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
143
+ err := resource .Retry (tccommon .ReadRetryTimeout , func () * resource.RetryError {
144
+ result , err := service .DescribeApmInstanceById (ctx , instanceId )
145
+ if err != nil {
146
+ return tccommon .RetryError (err )
147
+ }
138
148
139
- instanceId := d .Id ()
149
+ instance = result
150
+ return nil
151
+ })
140
152
141
- instance , err := service .DescribeApmInstanceById (ctx , instanceId )
142
153
if err != nil {
143
154
return err
144
155
}
@@ -184,18 +195,16 @@ func resourceTencentCloudApmInstanceUpdate(d *schema.ResourceData, meta interfac
184
195
defer tccommon .LogElapsed ("resource.tencentcloud_apm_instance.update" )()
185
196
defer tccommon .InconsistentCheck (d , meta )()
186
197
187
- logId := tccommon .GetLogId (tccommon .ContextNil )
188
-
189
- request := apm .NewModifyApmInstanceRequest ()
198
+ var (
199
+ logId = tccommon .GetLogId (tccommon .ContextNil )
200
+ request = apm .NewModifyApmInstanceRequest ()
201
+ instanceId = d .Id ()
202
+ )
190
203
191
204
needChange := false
192
-
193
- instanceId := d .Id ()
194
-
195
205
request .InstanceId = & instanceId
196
206
197
207
mutableArgs := []string {"name" , "description" , "trace_duration" , "span_daily_counters" , "pay_mode" }
198
-
199
208
for _ , v := range mutableArgs {
200
209
if d .HasChange (v ) {
201
210
needChange = true
@@ -204,7 +213,6 @@ func resourceTencentCloudApmInstanceUpdate(d *schema.ResourceData, meta interfac
204
213
}
205
214
206
215
if needChange {
207
-
208
216
if v , ok := d .GetOk ("name" ); ok {
209
217
request .Name = helper .String (v .(string ))
210
218
}
@@ -232,13 +240,14 @@ func resourceTencentCloudApmInstanceUpdate(d *schema.ResourceData, meta interfac
232
240
} else {
233
241
log .Printf ("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n " , logId , request .GetAction (), request .ToJsonString (), result .ToJsonString ())
234
242
}
243
+
235
244
return nil
236
245
})
246
+
237
247
if err != nil {
238
248
log .Printf ("[CRITAL]%s update apm instance failed, reason:%+v" , logId , err )
239
249
return err
240
250
}
241
-
242
251
}
243
252
244
253
if d .HasChange ("tags" ) {
@@ -260,11 +269,12 @@ func resourceTencentCloudApmInstanceDelete(d *schema.ResourceData, meta interfac
260
269
defer tccommon .LogElapsed ("resource.tencentcloud_apm_instance.delete" )()
261
270
defer tccommon .InconsistentCheck (d , meta )()
262
271
263
- logId := tccommon .GetLogId (tccommon .ContextNil )
264
- ctx := context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
265
-
266
- service := ApmService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
267
- instanceId := d .Id ()
272
+ var (
273
+ logId = tccommon .GetLogId (tccommon .ContextNil )
274
+ ctx = context .WithValue (context .TODO (), tccommon .LogIdKey , logId )
275
+ service = ApmService {client : meta .(tccommon.ProviderMeta ).GetAPIV3Conn ()}
276
+ instanceId = d .Id ()
277
+ )
268
278
269
279
if err := service .DeleteApmInstanceById (ctx , instanceId ); err != nil {
270
280
return err
0 commit comments