Skip to content

Commit dab7c2d

Browse files
author
hellertang
authored
fix alarm policy import error when has event condition (#792)
1 parent d7f2274 commit dab7c2d

File tree

1 file changed

+22
-25
lines changed

1 file changed

+22
-25
lines changed

tencentcloud/resource_tc_monitor_alarm_policy.go

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -614,15 +614,17 @@ func resourceTencentMonitorAlarmPolicyRead(d *schema.ResourceData, meta interfac
614614
"unit": rule.Unit,
615615
"rule_type": rule.RuleType,
616616
}
617-
if *rule.Filter.Type != "" || *rule.Filter.Dimensions != "" {
618-
var filter = make([]interface{}, 0, 10)
619-
alarmPolicyFilter := map[string]interface{}{
620-
"type": rule.Filter.Type,
621-
"dimensions": rule.Filter.Dimensions,
622-
}
623-
filter = append(filter, alarmPolicyFilter)
624-
if len(filter) > 0 {
625-
m["filter"] = filter
617+
if rule.Filter != nil {
618+
if *rule.Filter.Type != "" || *rule.Filter.Dimensions != "" {
619+
var filter = make([]interface{}, 0, 10)
620+
alarmPolicyFilter := map[string]interface{}{
621+
"type": rule.Filter.Type,
622+
"dimensions": rule.Filter.Dimensions,
623+
}
624+
filter = append(filter, alarmPolicyFilter)
625+
if len(filter) > 0 {
626+
m["filter"] = filter
627+
}
626628
}
627629
}
628630

@@ -637,12 +639,6 @@ func resourceTencentMonitorAlarmPolicyRead(d *schema.ResourceData, meta interfac
637639

638640
eventConditions := make([]map[string]interface{}, 0, len(policy.EventCondition.Rules))
639641
for _, eventRule := range policy.EventCondition.Rules {
640-
var filter = make([]interface{}, 0, 10)
641-
alarmPolicyFilter := map[string]interface{}{
642-
"type": eventRule.Filter.Type,
643-
"dimensions": eventRule.Filter.Dimensions,
644-
}
645-
filter = append(filter, alarmPolicyFilter)
646642

647643
m := make(map[string]interface{}, 5)
648644
m["metric_name"] = eventRule.MetricName
@@ -656,16 +652,17 @@ func resourceTencentMonitorAlarmPolicyRead(d *schema.ResourceData, meta interfac
656652
m["description"] = eventRule.Description
657653
m["unit"] = eventRule.Unit
658654
m["rule_type"] = eventRule.RuleType
659-
660-
if *eventRule.Filter.Type != "" || *eventRule.Filter.Dimensions != "" {
661-
var filter = make([]interface{}, 0, 10)
662-
alarmPolicyFilter := map[string]interface{}{
663-
"type": eventRule.Filter.Type,
664-
"dimensions": eventRule.Filter.Dimensions,
665-
}
666-
filter = append(filter, alarmPolicyFilter)
667-
if len(filter) > 0 {
668-
m["filter"] = filter
655+
if eventRule.Filter != nil {
656+
if *eventRule.Filter.Type != "" || *eventRule.Filter.Dimensions != "" {
657+
var filter = make([]interface{}, 0, 10)
658+
alarmPolicyFilter := map[string]interface{}{
659+
"type": eventRule.Filter.Type,
660+
"dimensions": eventRule.Filter.Dimensions,
661+
}
662+
filter = append(filter, alarmPolicyFilter)
663+
if len(filter) > 0 {
664+
m["filter"] = filter
665+
}
669666
}
670667
}
671668
eventConditions = append(eventConditions, m)

0 commit comments

Comments
 (0)