Skip to content

Commit e8305ed

Browse files
authored
feat: support alert group (#2487)
* feat: support alert group * feat: add 2487 changelog * fix: modify test
1 parent 5e41fc1 commit e8305ed

18 files changed

+1895
-6
lines changed

.changelog/2487.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:new-resource
2+
tencentcloud_monitor_tmp_alert_group
3+
```

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ require (
6767
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/live v1.0.777
6868
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mariadb v1.0.672
6969
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.651
70-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.839
70+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844
7171
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.777
7272
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/organization v1.0.770
7373
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/postgres v1.0.814

go.sum

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -948,6 +948,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.839 h1:VGVF
948948
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.839/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
949949
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.841/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
950950
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.843/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
951+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.844 h1:rVZnVeJDV4fN05BF1sKpaPk1BkNK5p9HA+MsyMwu8kk=
952+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.844/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
951953
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.845 h1:fiiVD3+m2gJFQItUomuJ7OpXHKyULTDu0LDZ/iOKI4A=
952954
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.845/go.mod h1:r5r4xbfxSaeR04b166HGsBa/R4U3SueirEUpXGuw+Q0=
953955
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.847 h1:ITZmxAWfbr5yikJ4T30yVYMW3jpa/oTmNbPnw/h1Vq0=
@@ -996,6 +998,8 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.651 h1:Ohb
996998
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mongodb v1.0.651/go.mod h1:HLqsSgUnwgkE+XecQajekinjz1B7S+1U1J66puH4jpQ=
997999
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.839 h1:eRIkvwwyw7Guh3Ayr3J5tKSWfNX9WQBQ5zzNpBYoBHQ=
9981000
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.839/go.mod h1:4OoBA087NHVdyeRJFy/SML7kIJmt54DtNkNlJWZp8oE=
1001+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844 h1:ZR7FSnv4k1j0BpJHg6JDbJ6YJ2YfLhX2xVIUcuweKm4=
1002+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/monitor v1.0.844/go.mod h1:a7PfDWl0B3QV+g99asQHumDNScEEMl+7lkXP0KXt8Xg=
9991003
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.777 h1:SoH/KkqkEUw8iDmQDZCw5Saf319Ceyt3v8Vqodo8DiY=
10001004
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/mps v1.0.777/go.mod h1:sBmwqD3GkczHFiArdYpHPp9QriIbzNtO99DueYVyGwE=
10011005
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/oceanus v1.0.831 h1:oyazF5wgAgoinGo/SDGfUReE3JFxqcpI6/pstWhK7yE=

tencentcloud/provider.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1296,6 +1296,7 @@ func Provider() *schema.Provider {
12961296
"tencentcloud_monitor_tmp_exporter_integration": tmp.ResourceTencentCloudMonitorTmpExporterIntegration(),
12971297
"tencentcloud_monitor_tmp_alert_rule": tmp.ResourceTencentCloudMonitorTmpAlertRule(),
12981298
"tencentcloud_monitor_tmp_recording_rule": tmp.ResourceTencentCloudMonitorTmpRecordingRule(),
1299+
"tencentcloud_monitor_tmp_alert_group": tmp.ResourceTencentCloudMonitorTmpAlertGroup(),
12991300
"tencentcloud_monitor_tmp_tke_template": tmp.ResourceTencentCloudMonitorTmpTkeTemplate(),
13001301
"tencentcloud_monitor_tmp_tke_template_attachment": tmp.ResourceTencentCloudMonitorTmpTkeTemplateAttachment(),
13011302
"tencentcloud_monitor_tmp_tke_alert_policy": tmp.ResourceTencentCloudMonitorTmpTkeAlertPolicy(),

tencentcloud/provider.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -818,6 +818,7 @@ Managed Service for Prometheus(TMP)
818818
tencentcloud_monitor_tmp_tke_global_notification
819819
tencentcloud_monitor_tmp_tke_cluster_agent
820820
tencentcloud_monitor_tmp_tke_basic_config
821+
tencentcloud_monitor_tmp_alert_group
821822

822823
TencentCloud Managed Service for Grafana(TCMG)
823824
Data Source

tencentcloud/services/monitor/service_tencentcloud_monitor.go

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2486,3 +2486,58 @@ func (me *MonitorService) DescribeMonitorStatisticDataByFilter(ctx context.Conte
24862486

24872487
return
24882488
}
2489+
2490+
func (me *MonitorService) DescribeMonitorTmpAlertGroupById(ctx context.Context, instanceId, groupId string) (tmpAlertGroup *monitor.PrometheusAlertGroupSet, errRet error) {
2491+
logId := tccommon.GetLogId(ctx)
2492+
2493+
request := monitor.NewDescribePrometheusAlertGroupsRequest()
2494+
request.InstanceId = &instanceId
2495+
request.GroupId = &groupId
2496+
2497+
defer func() {
2498+
if errRet != nil {
2499+
log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n", logId, request.GetAction(), request.ToJsonString(), errRet.Error())
2500+
}
2501+
}()
2502+
2503+
ratelimit.Check(request.GetAction())
2504+
2505+
response, err := me.client.UseMonitorClient().DescribePrometheusAlertGroups(request)
2506+
if err != nil {
2507+
errRet = err
2508+
return
2509+
}
2510+
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString())
2511+
2512+
if response == nil || len(response.Response.AlertGroupSet) < 1 {
2513+
return
2514+
}
2515+
2516+
tmpAlertGroup = response.Response.AlertGroupSet[0]
2517+
return
2518+
}
2519+
2520+
func (me *MonitorService) DeleteMonitorTmpAlertGroupById(ctx context.Context, instanceId, groupId string) (errRet error) {
2521+
logId := tccommon.GetLogId(ctx)
2522+
2523+
request := monitor.NewDeletePrometheusAlertGroupsRequest()
2524+
request.InstanceId = &instanceId
2525+
request.GroupIds = []*string{&groupId}
2526+
2527+
defer func() {
2528+
if errRet != nil {
2529+
log.Printf("[CRITAL]%s api[%s] fail, request body [%s], reason[%s]\n", logId, request.GetAction(), request.ToJsonString(), errRet.Error())
2530+
}
2531+
}()
2532+
2533+
ratelimit.Check(request.GetAction())
2534+
2535+
response, err := me.client.UseMonitorClient().DeletePrometheusAlertGroups(request)
2536+
if err != nil {
2537+
errRet = err
2538+
return
2539+
}
2540+
log.Printf("[DEBUG]%s api[%s] success, request body [%s], response body [%s]\n", logId, request.GetAction(), request.ToJsonString(), response.ToJsonString())
2541+
2542+
return
2543+
}

0 commit comments

Comments
 (0)