Skip to content

Commit f4b7cd0

Browse files
author
jiangong
committed
Add resource_group optional field for metrics
1 parent b49c976 commit f4b7cd0

15 files changed

+107
-2
lines changed

CHANGELOG.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
## 3.39.1 (Unreleased)
1+
## 3.40.0 (Unreleased)
2+
3+
###Added
4+
- Add `resource_group` optional field for metrics
5+
26
## 3.39.0 (August 21, 2019)
37

48
### Added

examples/monitoring/alarms/alarms.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,10 @@ variable "alarm_resolution" {
6161
default = "1m"
6262
}
6363

64+
variable "alarm_resource_group" {
65+
default = "resourceGroup"
66+
}
67+
6468
variable "alarm_severity" {
6569
default = "WARNING"
6670
}
@@ -145,6 +149,7 @@ resource "oci_monitoring_alarm" "test_alarm" {
145149
pending_duration = "${var.alarm_pending_duration}"
146150
repeat_notification_duration = "${var.alarm_repeat_notification_duration}"
147151
resolution = "${var.alarm_resolution}"
152+
resource_group = "${var.alarm_resource_group}"
148153

149154
suppression {
150155
#Required
@@ -184,3 +189,8 @@ data "oci_monitoring_alarm_statuses" "test_alarm_statuses" {
184189
compartment_id_in_subtree = "${var.alarm_status_compartment_id_in_subtree}"
185190
display_name = "${var.alarm_status_display_name}"
186191
}
192+
193+
data "oci_monitoring_alarm" "test_alarm" {
194+
#Required
195+
alarm_id = "${oci_monitoring_alarm.test_alarm.id}"
196+
}

examples/monitoring/metrics/metrics.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,14 @@ variable "metric_namespace" {
2727
default = "oci_lbaas"
2828
}
2929

30+
variable "metric_resource_group" {
31+
default = ""
32+
}
33+
34+
variable "metric_data_resource_group" {
35+
default = ""
36+
}
37+
3038
variable "metric_data_compartment_id_in_subtree" {
3139
default = false
3240
}
@@ -68,6 +76,7 @@ data "oci_monitoring_metric_data" "test_metric_data" {
6876
#Optional
6977
compartment_id_in_subtree = "${var.metric_data_compartment_id_in_subtree}"
7078
resolution = "${var.metric_data_resolution}"
79+
resource_group = "${var.metric_data_resource_group}"
7180
}
7281

7382
data "oci_monitoring_metrics" "test_metrics" {
@@ -78,6 +87,7 @@ data "oci_monitoring_metrics" "test_metrics" {
7887
compartment_id_in_subtree = "${var.metric_compartment_id_in_subtree}"
7988
name = "${var.metric_name}"
8089
namespace = "${var.metric_namespace}"
90+
resource_group = "${var.metric_resource_group}"
8191
}
8292

8393
output "metricData" {

oci/monitoring_alarm_data_source.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@ func (s *MonitoringAlarmDataSourceCrud) SetData() error {
114114
s.D.Set("resolution", *s.Res.Resolution)
115115
}
116116

117+
if s.Res.ResourceGroup != nil {
118+
s.D.Set("resource_group", *s.Res.ResourceGroup)
119+
}
120+
117121
s.D.Set("severity", s.Res.Severity)
118122

119123
s.D.Set("state", s.Res.LifecycleState)

oci/monitoring_alarm_resource.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,11 @@ func MonitoringAlarmResource() *schema.Resource {
100100
Optional: true,
101101
Computed: true,
102102
},
103+
"resource_group": {
104+
Type: schema.TypeString,
105+
Optional: true,
106+
Computed: true,
107+
},
103108
"suppression": {
104109
Type: schema.TypeList,
105110
Optional: true,
@@ -297,6 +302,11 @@ func (s *MonitoringAlarmResourceCrud) Create() error {
297302
request.Resolution = &tmp
298303
}
299304

305+
if resourceGroup, ok := s.D.GetOkExists("resource_group"); ok {
306+
tmp := resourceGroup.(string)
307+
request.ResourceGroup = &tmp
308+
}
309+
300310
if severity, ok := s.D.GetOkExists("severity"); ok {
301311
request.Severity = oci_monitoring.AlarmSeverityEnum(severity.(string))
302312
}
@@ -434,6 +444,11 @@ func (s *MonitoringAlarmResourceCrud) Update() error {
434444
request.Resolution = &tmp
435445
}
436446

447+
if resourceGroup, ok := s.D.GetOkExists("resource_group"); ok {
448+
tmp := resourceGroup.(string)
449+
request.ResourceGroup = &tmp
450+
}
451+
437452
if severity, ok := s.D.GetOkExists("severity"); ok {
438453
request.Severity = oci_monitoring.AlarmSeverityEnum(severity.(string))
439454
}
@@ -525,6 +540,10 @@ func (s *MonitoringAlarmResourceCrud) SetData() error {
525540
s.D.Set("resolution", *s.Res.Resolution)
526541
}
527542

543+
if s.Res.ResourceGroup != nil {
544+
s.D.Set("resource_group", *s.Res.ResourceGroup)
545+
}
546+
528547
s.D.Set("severity", s.Res.Severity)
529548

530549
s.D.Set("state", s.Res.LifecycleState)

oci/monitoring_alarm_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ var (
5555
"pending_duration": Representation{repType: Optional, create: `PT5M`, update: `PT10M`},
5656
"repeat_notification_duration": Representation{repType: Optional, create: `PT2H`, update: `PT10M`},
5757
"resolution": Representation{repType: Optional, create: `1m`},
58+
"resource_group": Representation{repType: Optional, create: `resourceGroup`, update: `resourceGroup2`},
5859
"suppression": RepresentationGroup{Optional, alarmSuppressionRepresentation},
5960
}
6061
alarmSuppressionRepresentation = map[string]interface{}{
@@ -139,6 +140,7 @@ func TestMonitoringAlarmResource_basic(t *testing.T) {
139140
resource.TestCheckResourceAttr(resourceName, "query", "CpuUtilization[10m].percentile(0.9) < 85"),
140141
resource.TestCheckResourceAttr(resourceName, "repeat_notification_duration", "PT2H"),
141142
resource.TestCheckResourceAttr(resourceName, "resolution", "1m"),
143+
resource.TestCheckResourceAttr(resourceName, "resource_group", "resourceGroup"),
142144
resource.TestCheckResourceAttr(resourceName, "severity", "WARNING"),
143145
resource.TestCheckResourceAttrSet(resourceName, "state"),
144146
resource.TestCheckResourceAttr(resourceName, "suppression.#", "1"),
@@ -178,6 +180,7 @@ func TestMonitoringAlarmResource_basic(t *testing.T) {
178180
resource.TestCheckResourceAttr(resourceName, "query", "CpuUtilization[10m].percentile(0.9) < 85"),
179181
resource.TestCheckResourceAttr(resourceName, "repeat_notification_duration", "PT2H"),
180182
resource.TestCheckResourceAttr(resourceName, "resolution", "1m"),
183+
resource.TestCheckResourceAttr(resourceName, "resource_group", "resourceGroup"),
181184
resource.TestCheckResourceAttr(resourceName, "severity", "WARNING"),
182185
resource.TestCheckResourceAttrSet(resourceName, "state"),
183186
resource.TestCheckResourceAttr(resourceName, "suppression.#", "1"),
@@ -217,6 +220,7 @@ func TestMonitoringAlarmResource_basic(t *testing.T) {
217220
resource.TestCheckResourceAttr(resourceName, "query", "AcceptedConnections[10m].count() <= 0"),
218221
resource.TestCheckResourceAttr(resourceName, "repeat_notification_duration", "PT10M"),
219222
resource.TestCheckResourceAttr(resourceName, "resolution", "1m"),
223+
resource.TestCheckResourceAttr(resourceName, "resource_group", "resourceGroup2"),
220224
resource.TestCheckResourceAttr(resourceName, "severity", "INFO"),
221225
resource.TestCheckResourceAttrSet(resourceName, "state"),
222226
resource.TestCheckResourceAttr(resourceName, "suppression.#", "1"),
@@ -289,6 +293,7 @@ func TestMonitoringAlarmResource_basic(t *testing.T) {
289293
resource.TestCheckResourceAttr(singularDatasourceName, "query", "AcceptedConnections[10m].count() <= 0"),
290294
resource.TestCheckResourceAttr(singularDatasourceName, "repeat_notification_duration", "PT10M"),
291295
resource.TestCheckResourceAttr(singularDatasourceName, "resolution", "1m"),
296+
resource.TestCheckResourceAttr(singularDatasourceName, "resource_group", "resourceGroup2"),
292297
resource.TestCheckResourceAttr(singularDatasourceName, "severity", "INFO"),
293298
resource.TestCheckResourceAttrSet(singularDatasourceName, "state"),
294299
resource.TestCheckResourceAttr(singularDatasourceName, "suppression.#", "1"),

oci/monitoring_metric_data_data_source.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ func MonitoringMetricDataDataSource() *schema.Resource {
4040
Type: schema.TypeString,
4141
Optional: true,
4242
},
43+
"resource_group": {
44+
Type: schema.TypeString,
45+
Optional: true,
46+
},
4347
"start_time": {
4448
Type: schema.TypeString,
4549
Optional: true,
@@ -86,6 +90,12 @@ func MonitoringMetricDataDataSource() *schema.Resource {
8690
Computed: true,
8791
ForceNew: true,
8892
},
93+
"resource_group": {
94+
Type: schema.TypeString,
95+
Optional: true,
96+
Computed: true,
97+
ForceNew: true,
98+
},
8999
"start_time": {
90100
Type: schema.TypeString,
91101
Optional: true,
@@ -191,6 +201,11 @@ func (s *MonitoringMetricDataDataSourceCrud) Get() error {
191201
request.Resolution = &tmp
192202
}
193203

204+
if resourceGroup, ok := s.D.GetOkExists("resource_group"); ok {
205+
tmp := resourceGroup.(string)
206+
request.ResourceGroup = &tmp
207+
}
208+
194209
if startTime, ok := s.D.GetOkExists("start_time"); ok {
195210
tmp, err := time.Parse(time.RFC3339, startTime.(string))
196211
if err != nil {
@@ -242,6 +257,10 @@ func (s *MonitoringMetricDataDataSourceCrud) SetData() error {
242257
metricData["resolution"] = *r.Resolution
243258
}
244259

260+
if r.ResourceGroup != nil {
261+
metricData["resource_group"] = *r.ResourceGroup
262+
}
263+
245264
resources = append(resources, metricData)
246265
}
247266

oci/monitoring_metric_data_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ var (
2525
"compartment_id_in_subtree": Representation{repType: Optional, create: `false`},
2626
"end_time": Representation{repType: Optional, create: metricDataEndTimeStr},
2727
"resolution": Representation{repType: Optional, create: `2m`},
28+
"resource_group": Representation{repType: Optional, create: `resourceGroup`},
2829
"start_time": Representation{repType: Optional, create: metricDataStartTimeStr},
2930
}
3031

@@ -72,6 +73,7 @@ func TestMonitoringMetricDataResource_basic(t *testing.T) {
7273
resource.TestCheckResourceAttr(datasourceName, "namespace", "oci_vcn"),
7374
resource.TestCheckResourceAttr(datasourceName, "query", "VnicToNetworkPackets[4m].max()"),
7475
resource.TestCheckResourceAttr(datasourceName, "resolution", "2m"),
76+
resource.TestCheckResourceAttr(datasourceName, "resource_group", "resourceGroup"),
7577
resource.TestCheckResourceAttr(datasourceName, "start_time", metricDataStartTimeStr),
7678

7779
resource.TestCheckResourceAttrSet(datasourceName, "metric_data.#"),

oci/monitoring_metric_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ var (
1919
"dimension_filters": Representation{repType: Optional, create: map[string]string{"resourceId": "${oci_load_balancer_load_balancer.test_load_balancer.id}"}},
2020
"name": Representation{repType: Optional, create: `AcceptedConnections`},
2121
"namespace": Representation{repType: Optional, create: `oci_lbaas`},
22+
"resource_group": Representation{repType: Optional, create: `resourceGroup`},
2223
}
2324

2425
MetricResourceConfig = LoadBalancerResourceConfig
@@ -56,6 +57,7 @@ func TestMonitoringMetricResource_basic(t *testing.T) {
5657
resource.TestCheckResourceAttr(datasourceName, "dimension_filters.%", "1"),
5758
resource.TestCheckResourceAttr(datasourceName, "name", "AcceptedConnections"),
5859
resource.TestCheckResourceAttr(datasourceName, "namespace", "oci_lbaas"),
60+
resource.TestCheckResourceAttr(datasourceName, "resource_group", "resourceGroup"),
5961

6062
resource.TestCheckResourceAttrSet(datasourceName, "metrics.#"),
6163

oci/monitoring_metrics_data_source.go

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ func MonitoringMetricsDataSource() *schema.Resource {
4242
Type: schema.TypeString,
4343
Optional: true,
4444
},
45+
"resource_group": {
46+
Type: schema.TypeString,
47+
Optional: true,
48+
},
4549
"metrics": {
4650
Type: schema.TypeList,
4751
Computed: true,
@@ -89,6 +93,12 @@ func MonitoringMetricsDataSource() *schema.Resource {
8993
Computed: true,
9094
ForceNew: true,
9195
},
96+
"resource_group": {
97+
Type: schema.TypeString,
98+
Optional: true,
99+
Computed: true,
100+
ForceNew: true,
101+
},
92102

93103
// Computed
94104
"dimensions": {
@@ -160,6 +170,11 @@ func (s *MonitoringMetricsDataSourceCrud) Get() error {
160170
request.Namespace = &tmp
161171
}
162172

173+
if resourceGroup, ok := s.D.GetOkExists("resource_group"); ok {
174+
tmp := resourceGroup.(string)
175+
request.ResourceGroup = &tmp
176+
}
177+
163178
request.RequestMetadata.RetryPolicy = getRetryPolicy(false, "monitoring")
164179

165180
response, err := s.Client.ListMetrics(context.Background(), request)
@@ -208,6 +223,10 @@ func (s *MonitoringMetricsDataSourceCrud) SetData() error {
208223
metric["namespace"] = *r.Namespace
209224
}
210225

226+
if r.ResourceGroup != nil {
227+
metric["resource_group"] = *r.ResourceGroup
228+
}
229+
211230
resources = append(resources, metric)
212231
}
213232

0 commit comments

Comments
 (0)