@@ -1010,17 +1010,37 @@ func resourceSloRead(ctx context.Context, d *schema.ResourceData, meta interface
10101010 case s .Indicator .IndicatorPropertiesTimesliceMetric != nil :
10111011 indicatorAddress = indicatorTypeToAddress [s .Indicator .IndicatorPropertiesTimesliceMetric .Type ]
10121012 params := s .Indicator .IndicatorPropertiesTimesliceMetric .Params
1013- metric := []map [string ]interface {}{{
1014- "metrics" : params .Metric .Metrics ,
1013+ metrics := []map [string ]interface {}{}
1014+ for _ , m := range params .Metric .Metrics {
1015+ metric := map [string ]interface {}{}
1016+ if m .TimesliceMetricBasicMetricWithField != nil {
1017+ metric ["name" ] = m .TimesliceMetricBasicMetricWithField .Name
1018+ metric ["aggregation" ] = m .TimesliceMetricBasicMetricWithField .Aggregation
1019+ metric ["field" ] = m .TimesliceMetricBasicMetricWithField .Field
1020+ }
1021+ if m .TimesliceMetricPercentileMetric != nil {
1022+ metric ["name" ] = m .TimesliceMetricPercentileMetric .Name
1023+ metric ["aggregation" ] = m .TimesliceMetricPercentileMetric .Aggregation
1024+ metric ["field" ] = m .TimesliceMetricPercentileMetric .Field
1025+ metric ["percentile" ] = m .TimesliceMetricPercentileMetric .Percentile
1026+ }
1027+ if m .TimesliceMetricDocCountMetric != nil {
1028+ metric ["name" ] = m .TimesliceMetricDocCountMetric .Name
1029+ metric ["aggregation" ] = m .TimesliceMetricDocCountMetric .Aggregation
1030+ }
1031+ metrics = append (metrics , metric )
1032+ }
1033+ metricBlock := map [string ]interface {}{
1034+ "metrics" : metrics ,
10151035 "equation" : params .Metric .Equation ,
10161036 "comparator" : params .Metric .Comparator ,
10171037 "threshold" : params .Metric .Threshold ,
1018- }}
1038+ }
10191039 indicator = append (indicator , map [string ]interface {}{
10201040 "index" : params .Index ,
10211041 "timestamp_field" : params .TimestampField ,
10221042 "filter" : params .Filter ,
1023- "metric" : metric ,
1043+ "metric" : [] interface {}{ metricBlock } ,
10241044 })
10251045
10261046 default :
@@ -1114,7 +1134,7 @@ var indicatorAddressToType = map[string]string{
11141134 "kql_custom_indicator" : "sli.kql.custom" ,
11151135 "metric_custom_indicator" : "sli.metric.custom" ,
11161136 "histogram_custom_indicator" : "sli.histogram.custom" ,
1117- "timeslice_metric_indicator" : "sli.timeslice. metric" ,
1137+ "timeslice_metric_indicator" : "sli.metric.timeslice " ,
11181138}
11191139
11201140var indicatorTypeToAddress = utils .FlipMap (indicatorAddressToType )
0 commit comments