Add policy and data types to SDC 46/82846/3
authorMarco Platania <platania@research.att.com>
Wed, 20 Mar 2019 19:18:05 +0000 (15:18 -0400)
committerOfir Sonsino <ofir.sonsino@intl.att.com>
Tue, 26 Mar 2019 08:30:20 +0000 (08:30 +0000)
- Define policy and data types for control loop
- Onboard them as normative types in SDC

Change-Id: I5188229ba91d5ddeabd43c4ac0b869abba7c42a0
Issue-ID: SDC-2203
Signed-off-by: Marco Platania <platania@research.att.com>
catalog-be/src/main/resources/import/tosca/data-types/dataTypes.yml
catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.json
catalog-be/src/main/resources/import/tosca/policy-types/policyTypes.yml

index 0000e24..8d9f136 100644 (file)
@@ -1777,3 +1777,149 @@ tosca.datatypes.nfv.VnfInfoModifiableAttributes:
     metadata:
       type: tosca.datatypes.nfv.VnfInfoModifiableAttributesMetadata
       required: false
+
+### Data types used by Policy TCA model for closed loop ###
+
+onap.datatypes.monitoring.metricsPerEventName:
+  derived_from: tosca.datatypes.Root
+  properties:
+    controlLoopSchemaType:
+      constraints:
+        - valid_values:
+            - VM
+            - VNF
+      description: "Specifies Control Loop Schema Type for the event Name e.g. VNF, VM"
+      required: true
+      type: string
+    eventName:
+      description: "Event name to which thresholds need to be applied"
+      required: true
+      type: string
+    policyName:
+      description: "TCA Policy Scope Name"
+      required: true
+      type: string
+    policyScope:
+      description: "TCA Policy Scope"
+      required: true
+      type: string
+    policyVersion:
+      description: "TCA Policy Scope Version"
+      required: true
+      type: string
+    thresholds:
+      description: "Thresholds associated with eventName"
+      entry_schema:
+        type: onap.datatypes.monitoring.thresholds
+      required: true
+      type: list
+onap.datatypes.monitoring.tca_policy:
+  derived_from: tosca.datatypes.Root
+  properties:
+    domain:
+      constraints:
+        - equal: measurementsForVfScaling
+      default: measurementsForVfScaling
+      description: "Domain name to which TCA needs to be applied"
+      required: true
+      type: string
+    metricsPerEventName:
+      description: "Contains eventName and threshold details that need to be applied to given eventName"
+      entry_schema:
+        type: onap.datatypes.monitoring.metricsPerEventName
+      required: true
+      type: list
+onap.datatypes.monitoring.thresholds:
+  derived_from: tosca.datatypes.Root
+  properties:
+    closedLoopControlName:
+      description: "Closed Loop Control Name associated with the threshold"
+      required: true
+      type: string
+    closedLoopEventStatus:
+      constraints:
+        - valid_values:
+            - ONSET
+            - ABATED
+      description: "Closed Loop Event Status of the threshold"
+      required: true
+      type: string
+    direction:
+      constraints:
+        - valid_values:
+            - LESS
+            - LESS_OR_EQUAL
+            - GREATER
+            - GREATER_OR_EQUAL
+            - EQUAL
+      description: "Direction of the threshold"
+      required: true
+      type: string
+    fieldPath:
+      constraints:
+        - valid_values:
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedTotalPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedOctetsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedUnicastPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedMulticastPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedDiscardedPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedErrorPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsDelta"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedTotalPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedOctetsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedUnicastPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedMulticastPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedBroadcastPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedDiscardedPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].transmittedErrorPacketsAccumulated"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuIdle"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageInterrupt"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageNice"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSoftIrq"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSteal"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuUsageSystem"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].cpuWait"
+            - "$.event.measurementsForVfScalingFields.cpuUsageArray[*].percentUsage"
+            - "$.event.measurementsForVfScalingFields.meanRequestLatency"
+            - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryBuffered"
+            - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryCached"
+            - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryConfigured"
+            - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryFree"
+            - "$.event.measurementsForVfScalingFields.memoryUsageArray[*].memoryUsed"
+            - "$.event.measurementsForVfScalingFields.additionalMeasurements[*].arrayOfFields[0].value"
+      description: "Json field Path as per CEF message which needs to be analyzed for TCA"
+      required: true
+      type: string
+    severity:
+      constraints:
+        - valid_values:
+            - CRITICAL
+            - MAJOR
+            - MINOR
+            - WARNING
+            - NORMAL
+      description: "Threshold Event Severity"
+      required: true
+      type: string
+    thresholdValue:
+      description: "Threshold value for the field Path inside CEF message"
+      required: true
+      type: integer
+    version:
+      description: "Version number associated with the threshold"
+      required: true
+      type: string
index 9f97d55..32a6593 100644 (file)
   "org.openecomp.policies.External": {
     "displayName": "External",
     "icon": "policy-external"
+  },
+  "onap.policies.Monitoring": {
+    "displayName": "Monitoring",
+    "icon": "policy-monitoring"
+  },
+  "onap.policy.monitoring.cdap.tca.hi.lo.app": {
+    "displayName": "TCA",
+    "icon": "policy-tca"
   }
 
 }
\ No newline at end of file
index 57f4b45..0b60106 100644 (file)
@@ -115,3 +115,17 @@ org.openecomp.policies.External:
       type: string
       description: The name of the policy, that related to specific type, same as it is defined in the source.
       required: false
+
+### Policy types for closed loop ###
+onap.policies.Monitoring:
+  derived_from: tosca.policies.Root
+  description: A base policy type for all policies that governs monitoring provisioning
+onap.policy.monitoring.cdap.tca.hi.lo.app:
+  derived_from: onap.policies.Monitoring
+  version: 1.0.0
+  properties:
+    tca_policy:
+      type: map
+      description: TCA Policy JSON
+      entry_schema:
+        type: onap.datatypes.monitoring.tca_policy
\ No newline at end of file