Skip to content

Commit f9ab86a

Browse files
Terraform Team AutomationNagaRajuPasunuri
authored andcommitted
Added - Support for Unified agent operational metrics
1 parent df3370c commit f9ab86a

File tree

7 files changed

+476
-95
lines changed

7 files changed

+476
-95
lines changed

examples/logging/log_agent_configuration/log_agent_configuration.tf

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,18 @@ resource "oci_logging_unified_agent_configuration" "test_unified_agent_configura
191191
destination {
192192
#Required field for destination
193193
log_object_id = var.test_log_id
194+
operational_metrics_configuration {
195+
destination {
196+
compartment_id = var.compartment_id
197+
}
198+
source {
199+
type = "UMA_METRICS"
200+
record_input {
201+
namespace = "tf-test-namespace"
202+
resource_group = "tf-test-resource-group"
203+
}
204+
}
205+
}
194206
}
195207
sources {
196208
#Required

examples/logging/provider.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ provider "oci" {
3131
user_ocid = var.user_ocid
3232
fingerprint = var.fingerprint
3333
private_key_path = var.private_key_path
34-
# version = "4.119.0"
34+
# version = "5.13.0"
3535
}
3636

internal/integrationtest/logging_unified_agent_configuration_test.go

Lines changed: 69 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,14 +58,41 @@ var (
5858

5959
LoggingUnifiedAgentConfigurationServiceConfigurationRepresentation = map[string]interface{}{
6060
"configuration_type": acctest.Representation{RepType: acctest.Required, Create: `LOGGING`},
61-
"destination": acctest.RepresentationGroup{RepType: acctest.Required, Group: unifiedAgentConfigurationServiceConfigurationDestinationRepresentation},
61+
"destination": acctest.RepresentationGroup{RepType: acctest.Required, Group: LoggingUnifiedAgentConfigurationServiceConfigurationDestinationRepresentation},
6262
"sources": acctest.RepresentationGroup{RepType: acctest.Required, Group: LoggingUnifiedAgentConfigurationServiceConfigurationSourcesRepresentation},
6363
}
6464

6565
LoggingUnifiedAgentConfigurationGroupAssociationRepresentation = map[string]interface{}{
6666
"group_list": acctest.Representation{RepType: acctest.Required, Create: []string{`${oci_identity_group.test_group.id}`}}, // Update: []string{`${oci_identity_group.test_group.id}`, `ocid1.Group.oc1..aaaaaaaa5rvs7zjwdk3zdmysm7x7wcxyanbllutswe4xbl7ng4stohtg3sla`}},
6767
}
6868

69+
LoggingUnifiedAgentConfigurationServiceConfigurationDestinationRepresentation = map[string]interface{}{
70+
"log_object_id": acctest.Representation{RepType: acctest.Required, Create: `${oci_logging_log.test_log.id}`},
71+
"operational_metrics_configuration": acctest.RepresentationGroup{RepType: acctest.Optional, Group: LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationRepresentation},
72+
}
73+
74+
LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationRepresentation = map[string]interface{}{
75+
"destination": acctest.RepresentationGroup{RepType: acctest.Required, Group: LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationDestinationRepresentation},
76+
"source": acctest.RepresentationGroup{RepType: acctest.Required, Group: LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationSourceRepresentation},
77+
}
78+
79+
// operational metrics dest
80+
LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationDestinationRepresentation = map[string]interface{}{
81+
"compartment_id": acctest.Representation{RepType: acctest.Required, Create: `${var.compartment_id}`},
82+
}
83+
84+
// operational metrics source
85+
LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationSourceRepresentation = map[string]interface{}{
86+
"type": acctest.Representation{RepType: acctest.Required, Create: `UMA_METRICS`},
87+
"metrics": acctest.Representation{RepType: acctest.Optional, Create: []string{`RestartMetric`}, Update: []string{`EmitRecords`}},
88+
"record_input": acctest.RepresentationGroup{RepType: acctest.Optional, Group: LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationSourceRecordInputRepresentation},
89+
}
90+
91+
LoggingUnifiedAgentConfigurationServiceConfigurationDestinationOperationalMetricsConfigurationSourceRecordInputRepresentation = map[string]interface{}{
92+
"namespace": acctest.Representation{RepType: acctest.Required, Create: `namespace`, Update: `namespace2`},
93+
"resource_group": acctest.Representation{RepType: acctest.Optional, Create: `resourceGroup`, Update: `resourceGroup2`},
94+
}
95+
6996
LoggingUnifiedAgentConfigurationServiceConfigurationSourcesParserRepresentation = map[string]interface{}{
7097
"parser_type": acctest.Representation{RepType: acctest.Required, Create: `AUDITD`},
7198
"field_time_key": acctest.Representation{RepType: acctest.Optional, Create: `fieldTimeKey`},
@@ -93,9 +120,9 @@ var (
93120
acctest.GenerateResourceFromRepresentationMap("oci_identity_group", "test_group", acctest.Required, acctest.Create, LoggingUAIdentityGroupRepresentation) +
94121
acctest.GenerateResourceFromRepresentationMap("oci_logging_log_group", "test_log_group", acctest.Required, acctest.Create, LoggingLogGroupRepresentation) +
95122
acctest.GenerateResourceFromRepresentationMap("oci_logging_log", "test_log", acctest.Required, acctest.Create, customLogRepresentation) // +
96-
//acctest.GenerateResourceFromRepresentationMap("oci_objectstorage_bucket", "test_bucket", acctest.Required, acctest.Create, ObjectStorageBucketRepresentation) +
97-
//acctest.GenerateDataSourceFromRepresentationMap("oci_objectstorage_namespace", "test_namespace", acctest.Required, acctest.Create, ObjectStorageObjectStorageNamespaceSingularDataSourceRepresentation) +
98-
//acctest.GenerateResourceFromRepresentationMap("oci_objectstorage_object", "test_object", acctest.Required, acctest.Create, ObjectStorageObjectRepresentation)
123+
//acctest.GenerateResourceFromRepresentationMap("oci_objectstorage_bucket", "test_bucket", acctest.Required, acctest.Create, ObjectStorageBucketRepresentation) +
124+
//acctest.GenerateDataSourceFromRepresentationMap("oci_objectstorage_namespace", "test_namespace", acctest.Required, acctest.Create, ObjectStorageObjectStorageNamespaceSingularDataSourceRepresentation) +
125+
//acctest.GenerateResourceFromRepresentationMap("oci_objectstorage_object", "test_object", acctest.Required, acctest.Create, ObjectStorageObjectRepresentation)
99126

100127
LoggingUnifiedAgentConfigurationServiceConfigurationSourcesRepresentation = map[string]interface{}{
101128
"source_type": acctest.Representation{RepType: acctest.Required, Create: `LOG_TAIL`},
@@ -107,7 +134,7 @@ var (
107134

108135
// Add new test configs here
109136
// CRI parser configs
110-
LoggingUnifiedAgentConfigurationServiceConfigurationSourcesCriParserNestedParserRepresentation = map[string]interface{}{
137+
LoggingUnifiedAgentConfigurationServiceConfigurationSourcesParserNestedParserRepresentation = map[string]interface{}{
111138
"time_format": acctest.Representation{RepType: acctest.Optional, Create: `%Y-%m-%dT%H:%M:%S.%L%z`, Update: `%Y-%m-%d %H:%M:%S.%L%z`},
112139
"field_time_key": acctest.Representation{RepType: acctest.Optional, Create: `time`, Update: `time1`},
113140
"is_keep_time_key": acctest.Representation{RepType: acctest.Optional, Create: `true`, Update: `false`},
@@ -116,7 +143,7 @@ var (
116143
LoggingUnifiedAgentConfigurationServiceConfigurationSourcesCriParserRepresentation = map[string]interface{}{
117144
"parser_type": acctest.Representation{RepType: acctest.Required, Create: `CRI`},
118145
"is_merge_cri_fields": acctest.Representation{RepType: acctest.Optional, Create: `true`, Update: `false`},
119-
"nested_parser": acctest.RepresentationGroup{RepType: acctest.Optional, Group: LoggingUnifiedAgentConfigurationServiceConfigurationSourcesCriParserNestedParserRepresentation},
146+
"nested_parser": acctest.RepresentationGroup{RepType: acctest.Optional, Group: LoggingUnifiedAgentConfigurationServiceConfigurationSourcesParserNestedParserRepresentation},
120147
}
121148

122149
LoggingUnifiedAgentConfigurationCriRepresentation = acctest.GetUpdatedRepresentationCopy(
@@ -277,6 +304,15 @@ func TestLoggingUnifiedAgentConfigurationResource_basic(t *testing.T) {
277304
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.configuration_type", "LOGGING"),
278305
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.#", "1"),
279306
resource.TestCheckResourceAttrSet(resourceName, "service_configuration.0.destination.0.log_object_id"),
307+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.#", "1"),
308+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.#", "1"),
309+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.0.compartment_id", compartmentId),
310+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.#", "1"),
311+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.metrics.0", "RestartMetric"),
312+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.#", "1"),
313+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.namespace", "namespace"),
314+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.resource_group", "resourceGroup"),
315+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.type", "UMA_METRICS"),
280316
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.#", "1"),
281317
//resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.0.channels.#", "1"),
282318
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.0.name", "name"),
@@ -318,6 +354,15 @@ func TestLoggingUnifiedAgentConfigurationResource_basic(t *testing.T) {
318354
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.configuration_type", "LOGGING"),
319355
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.#", "1"),
320356
resource.TestCheckResourceAttrSet(resourceName, "service_configuration.0.destination.0.log_object_id"),
357+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.#", "1"),
358+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.#", "1"),
359+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.0.compartment_id", compartmentId),
360+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.#", "1"),
361+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.metrics.0", "RestartMetric"),
362+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.#", "1"),
363+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.namespace", "namespace"),
364+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.resource_group", "resourceGroup"),
365+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.type", "UMA_METRICS"),
321366
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.#", "1"),
322367
//resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.0.channels.#", "1"),
323368
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.0.name", "name"),
@@ -352,6 +397,15 @@ func TestLoggingUnifiedAgentConfigurationResource_basic(t *testing.T) {
352397
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.configuration_type", "LOGGING"),
353398
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.#", "1"),
354399
resource.TestCheckResourceAttrSet(resourceName, "service_configuration.0.destination.0.log_object_id"),
400+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.#", "1"),
401+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.#", "1"),
402+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.0.compartment_id", compartmentId),
403+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.#", "1"),
404+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.metrics.0", "EmitRecords"),
405+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.#", "1"),
406+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.namespace", "namespace2"),
407+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.resource_group", "resourceGroup2"),
408+
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.type", "UMA_METRICS"),
355409
resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.#", "1"),
356410
//resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.0.channels.#", "2"),
357411
//resource.TestCheckResourceAttr(resourceName, "service_configuration.0.sources.0.name", "name2"),
@@ -405,6 +459,15 @@ func TestLoggingUnifiedAgentConfigurationResource_basic(t *testing.T) {
405459
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.#", "1"),
406460
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.configuration_type", "LOGGING"),
407461
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.#", "1"),
462+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.#", "1"),
463+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.#", "1"),
464+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.destination.0.compartment_id", compartmentId),
465+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.#", "1"),
466+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.metrics.0", "EmitRecords"),
467+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.#", "1"),
468+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.namespace", "namespace2"),
469+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.record_input.0.resource_group", "resourceGroup2"),
470+
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.destination.0.operational_metrics_configuration.0.source.0.type", "UMA_METRICS"),
408471
resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.sources.#", "1"),
409472
//resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.sources.0.channels.#", "2"),
410473
//resource.TestCheckResourceAttr(singularDatasourceName, "service_configuration.0.sources.0.name", "name2"),

0 commit comments

Comments
 (0)