From 9e52c396ac0b92f9cc814360cd13da4b9cd250e2 Mon Sep 17 00:00:00 2001 From: aprasad Date: Thu, 2 Jul 2026 11:16:01 +0530 Subject: [PATCH] feat: Add OCICONTAINERINSTANCETEST entity definition Add OCI Container Instance Test entity definition with: - Entity definition with composite synthesis rules - Golden metrics (CPU Utilization, Memory Utilization) - Summary metrics - Test data Co-Authored-By: Claude Opus 4.6 --- .../definition.yml | 35 +++++++++++++++++++ .../golden_metrics.yml | 18 ++++++++++ .../summary_metrics.yml | 13 +++++++ .../tests/Metric.json | 16 +++++++++ 4 files changed, 82 insertions(+) create mode 100644 entity-types/infra-ocicontainerinstancetest/definition.yml create mode 100644 entity-types/infra-ocicontainerinstancetest/golden_metrics.yml create mode 100644 entity-types/infra-ocicontainerinstancetest/summary_metrics.yml create mode 100644 entity-types/infra-ocicontainerinstancetest/tests/Metric.json diff --git a/entity-types/infra-ocicontainerinstancetest/definition.yml b/entity-types/infra-ocicontainerinstancetest/definition.yml new file mode 100644 index 0000000000..1377fc5c3b --- /dev/null +++ b/entity-types/infra-ocicontainerinstancetest/definition.yml @@ -0,0 +1,35 @@ +domain: INFRA +type: OCICONTAINERINSTANCETEST +goldenTags: +- oci.compartmentId +- oci.displayName +- oci.lifecycleState +- oci.region +configuration: + entityExpirationTime: DAILY + alertable: true +synthesis: + tags: + newrelic.cloudIntegrations.providerAccountName: + entityTagNames: [newrelic.cloudIntegrations.providerAccountName, providerAccountName] + multiValue: false + rules: + - ruleName: infra_ocicontainerinstancetest_composite + compositeIdentifier: + separator: "/" + attributes: + - oci.resourceId + - oci.namespace + name: oci.resourceName + legacyFeatures: + overrideGuidType: true + encodeIdentifierInGUID: true + conditions: + - attribute: oci.resourceId + prefix: "ocid1.containerinstancetest" + - attribute: oci.namespace + value: "oci_containerinstancetest" + +ownership: + primaryOwner: + teamName: "Cloud Monitoring Platform" diff --git a/entity-types/infra-ocicontainerinstancetest/golden_metrics.yml b/entity-types/infra-ocicontainerinstancetest/golden_metrics.yml new file mode 100644 index 0000000000..87c54d6b93 --- /dev/null +++ b/entity-types/infra-ocicontainerinstancetest/golden_metrics.yml @@ -0,0 +1,18 @@ +cpuUtilization: + title: CPU Utilization + unit: PERCENTAGE + queries: + oci: + select: average(oci.container.instance.test.cpu.utilization) + from: Metric + eventId: entity.guid + eventName: entity.name +memoryUtilization: + title: Memory Utilization + unit: PERCENTAGE + queries: + oci: + select: average(oci.container.instance.test.memory.utilization) + from: Metric + eventId: entity.guid + eventName: entity.name diff --git a/entity-types/infra-ocicontainerinstancetest/summary_metrics.yml b/entity-types/infra-ocicontainerinstancetest/summary_metrics.yml new file mode 100644 index 0000000000..a9b3f1092d --- /dev/null +++ b/entity-types/infra-ocicontainerinstancetest/summary_metrics.yml @@ -0,0 +1,13 @@ +providerAccountName: + tag: + key: providerAccountName + title: OCI account + unit: STRING +cpuUtilization: + goldenMetric: cpuUtilization + unit: PERCENTAGE + title: CPU Utilization +memoryUtilization: + goldenMetric: memoryUtilization + unit: PERCENTAGE + title: Memory Utilization diff --git a/entity-types/infra-ocicontainerinstancetest/tests/Metric.json b/entity-types/infra-ocicontainerinstancetest/tests/Metric.json new file mode 100644 index 0000000000..b18d003c6d --- /dev/null +++ b/entity-types/infra-ocicontainerinstancetest/tests/Metric.json @@ -0,0 +1,16 @@ +[ + { + "oci.compartmentId": "ocid1.compartment.oc1..aaaaaaaabbbbbbccccccccdddddddeeeeeeefffffffgggggggghhhhhhhhiiiiiiiiijjjjjjjj", + "oci.namespace": "oci_containerinstancetest", + "oci.region": "us-ashburn-1", + "oci.resourceId": "ocid1.containerinstancetest.oc1.us-ashburn-1.aaaaaaaabbbbbbccccccccdddddddeeeeeeefffffffgggggggghhhhhhhhiiiiiiiiijjjjjjjj", + "oci.resourceName": "test-container-instance-test", + "oci.displayName": "test-container-instance-test", + "oci.lifecycleState": "ACTIVE", + "collector.name": "oci-monitor", + "instrumentation.provider": "oci", + "metricName": "oci.container.instance.test.cpu.utilization", + "newrelic.cloudIntegrations.integrationName": "OCI Monitor metrics", + "newrelic.cloudIntegrations.providerAccountName": "oci-dev-all-metrics" + } +]