Overview
The Validation Service is re-used in POMBA in order to process service instance data from various contexts and compare the data to each other. In this way, it could be confirmed that the real-life deployment does or does not reflect what is known by the A&AI, for example.
Messaging
Messaging to and from other POMBA components is done through DMaaP topics.
POA-RULE-VALIDATION event
This event type is posted by the Pomba Context Aggregator and picked up by the Validation Service.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "entity": { "poa-event-header": { "entity-typemodelVersionId": "poa-entity7b4beec3-04a6-4513-8341-959589d2bd01", "top-entity-typemodelInvariantId": "poa-entity58f20afd-6ed1-4451-a19d-4fbee4aefa08", "event-typeserviceInstanceId": "POA-EVENT68352304-7bba-4609-8551-0d0b819376c3", "domainxTransactionId": "onap1111111", "idxFromAppId": "5fb3ec28-835b-4053-9fb2-31f6b3e5ef71",Data-Router" "topic-name": "POA-RULE-VALIDATION", }, "sourcecontext-namelist": "RO",{ "event-idsdc": "ea981d89-ea97-4757-9e28-10ab86f08065" { }, "entityservice": { "poa-eventname": "vcpesvc_vgmux", { "modelVersionIduuid": "7b4beec3-04a6-4513-8341-959589d2bd01-8341-959589d2bd01", "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08" }, "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpevsp_vgmux_0830 0", "vfModuleList": [ { "minInstances": 1, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "org.openecomp.resource.vf.VcpevspVgmux0830", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "abstract_vgmux", "invariantUUID": "e709ddef-8aa2-4019-beb2-48b06c27285e", "type": "vgmux", "uuid": "0f5a18b5-7470-41df-b221-8bc933d2d0fc" } ] } ], "attributeList": [] }, "aai": { "service": { "name": "vcpe_svc_vcpesvc_vgmux_201809061919", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01", "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08" }, "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpe_vnf_vcpevsp_vgmux_0830_201809061919", "vfModuleList": [ { "minInstances": 0, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "vcpesvc_vgmux/vcpevsp_vgmux_0830 0", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [] } ], "attributeList": [] }, "sdnc": { "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpevsp_vgmux_0830 0", "vfModuleList": [ { "minInstances": 1, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "org.openecomp.resource.vf.VcpevspVgmux0830", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "abstract_vgmux", "invariantUUID": "e709ddef-8aa2-4019-beb2-48b06c27285e", "type": "vgmux", "uuid": "0f5a18b5-7470-41df-b221-8bc933d2d0fc" } ] } ], "service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpesvc_vgmux1", "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01" }, "attributeList": [] }, "ndcb": { "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "vfModuleList": [ { "minInstances": 0, "dataQuality": { "status": "ok" }, "attributeList": [], "vmList": [ { "dataQuality": { "status": "ok" }, "attributeList": [ { "dataQuality": { "status": "ok" }, "name": "hostName", "value": "kll0123" } ], "nfNamingCode": "vserver", "uuid": "0714ea3e-2126-4c31-b405-6796ffc955fb" } ], "maxInstances": 0, "networkList": [] } ], "vnfcList": [] } ], "service": { "dataQuality": { "status": "ok" }, "attributeList": [], "uuid": "68352304-7bba-4609-8551-0d0b819376c3" }, "attributeList": [] } } }, "event-header": { "entity-type": "poa-entity", "top-entity-type": "poa-entity", "event-type": "POA-EVENT", "domain": "onap", "id": "5fb3ec28-835b-4053-9fb2-31f6b3e5ef71", "topic-name": "POA-RULE-VALIDATION", "source-name": "RO", "event-id": "ea981d89-ea97-4757-9e28-10ab86f08065" } } |
POA-AUDIT-RESULT event
This event type is published to DMaaP by the Validation Service.
Code Block | ||||
---|---|---|---|---|
| ||||
{ "entity": { "poa-event": { "modelVersionId": "7b4beec3-04a6-4513-8341-959589d2bd01", "modelInvariantId": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "serviceInstanceId": "68352304-7bba-4609-8551-0d0b819376c3", "xTransactionId": "1111111", "xFromAppId": "Data-Router" }, "context-list": { "sdnc": { "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpevsp_vgmux_0830 0", "vfModuleList": [ { "minInstances": 1, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "org.openecomp.resource.vf.VcpevspVgmux0830", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "abstract_vgmux", "invariantUUID": "e709ddef-8aa2-4019-beb2-48b06c27285e", "type": "vgmux", "uuid": "0f5a18b5-7470-41df-b221-8bc933d2d0fc" } ] } ], "service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpesvc_vgmux1", "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01" }, "attributeList": [] }, "sdc": { "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpevsp_vgmux_0830 0", "vfModuleList": [ { "minInstances": 1, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "org.openecomp.resource.vf.VcpevspVgmux0830", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "abstract_vgmux", "invariantUUID": "e709ddef-8aa2-4019-beb2-48b06c27285e", "type": "vgmux", "uuid": "0f5a18b5-7470-41df-b221-8bc933d2d0fc" } ] } ], "service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpesvc_vgmux", "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01" }, "attributeList": [] }, "ndcb": { "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "vfModuleList": [ { "minInstances": 0, "dataQuality": { "status": "ok" }, "attributeList": [], "vmList": [ { "dataQuality": { "status": "ok" }, "attributeList": [ { "dataQuality": { "status": "ok" }, "name": "hostName", "value": "kll0123" } ], "nfNamingCode": "vserver", "uuid": "0714ea3e-2126-4c31-b405-6796ffc955fb" } ], "maxInstances": 0, "networkList": [] } ], "vnfcList": [] } ], "service": { "dataQuality": { "status": "ok" }, "attributeList": [], "uuid": "68352304-7bba-4609-8551-0d0b819376c3" }, "attributeList": [] }, "aai": { "dataQuality": { "status": "ok" }, "vfList": [ { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpe_vnf_vcpevsp_vgmux_0830_201809061919", "vfModuleList": [ { "minInstances": 0, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "vcpesvc_vgmux/vcpevsp_vgmux_0830 0", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [] } ], "service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpe_svc_vcpesvc_vgmux_201809061919", "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01" }, "attributeList": [] } } }, "validationId": "1f2d7a60-b39c-4c51-ac53-d2965043cc00", "validationTimestamp": "20181207T143528Z", "entityId": {}, "entityType": "poa-entity", "entityLink": "", "resourceVersion": null, "violations": [ { "violationId": "948482aea330c3282680ae320f536de01b1b685808f82dcf38d88116d395cdfe", "modelName": null, "category": "Attribute Mismatch", "severity": "ERROR", "violationType": "Rule", "validationRule": "NDCB-AAI-attribute-comparison", "violationDetails": { "context-list.aai.service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpe_svc_vcpesvc_vgmux_201809061919", "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01" }, "context-list.ndcb.service": { "dataQuality": { "status": "ok" }, "attributeList": [], "uuid": "68352304-7bba-4609-8551-0d0b819376c3" } }, "errorMessage": "Error found with attribute \"uuid\"; Network-Discovery value does not match AAI value \"7b4beec3-04a6-4513-8341-959589d2bd01\"" }, { "violationId": "44084c451103c177676cb3465cec6eb25762e5a10965ddeb47b1c75a2f640436", "modelName": null, "category": "Attribute Mismatch", "severity": "ERROR", "violationType": "Rule", "validationRule": "NDCB-AAI-attribute-comparison", "violationDetails": { "context-list.aai.vfList[*].vfModuleList[*]": [ { "minInstances": 0, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "context-list.ndcb.vfList[*].vfModuleList[*]": [ { "minInstances": 0, "dataQuality": { "status": "ok" }, "attributeList": [], "vmList": [ { "dataQuality": { "status": "ok" }, "attributeList": [ { "dataQuality": { "status": "ok" }, "name": "hostName", "value": "kll0123" } ], "nfNamingCode": "vserver", "uuid": "0714ea3e-2126-4c31-b405-6796ffc955fb" } ], "maxInstances": 0, "networkList": [] } ] }, "errorMessage": "Error found with attribute \"maxInstances\"; Network-Discovery value does not match AAI value \"1\"" }, { "violationId": "e04b85a1414bcbf6812ac581a10de63e14c49a4c9de2fdc466970fbac0f614ca", "modelName": null, "category": "Attribute Mismatch", "severity": "ERROR", "violationType": "Rule", "validationRule": "SDNC-AAI-attribute-comparison", "violationDetails": { "context-list.sdnc.service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpesvc_vgmux1", "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "uuid": "7b4beec3-04a6-4513-8341-959589d2bd01" }, "context-list.aai.service": { "dataQuality": { "status": "ok" }, "attributeList": [], "name": "vcpe_svc_vcpesvc_vgmux_201809061919", "modelInvariantIdinvariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "serviceInstanceIduuid": "683523047b4beec3-7bba04a6-46094513-85518341-0d0b819376c3959589d2bd01", } "xTransactionId": "1111111", }, "xFromAppIderrorMessage": "Data-Router" "Error found with attribute \"name\"; SDN-C value does not match AAI value \"vcpe_svc_vcpesvc_vgmux_201809061919\"" }, { "context-listviolationId": { "df78e9f9029170bde8ecb98d91e18e97256d298fd8169b343304c44cd0db2c54", "sdcmodelName": {null, "dataQuality"category": {"Attribute Mismatch", "severity": "ERROR", "statusviolationType": "okRule", "validationRule": "SDNC-AAI-attribute-comparison", }, "violationDetails": { "context-list.aai.vfList[*]": [ { "dataQuality": { "status": "ok" }, "attributeList": [], , "name": "vcpe_vnf_vcpevsp_vgmux_0830 0_201809061919", "vfModuleList": [ { "minInstances": 10, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, : 1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], "invariantUUID": "17e561e9-d0c2-4959-a709-9335b2233966", "type": "org.openecomp.resource.vf.VcpevspVgmux0830vcpesvc_vgmux/vcpevsp_vgmux_0830 0", "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", "vnfcList": [] } ], { "context-list.sdnc.vfList[*]": [ "dataQuality": {{ "dataQuality": { "status": "ok" }, }, "attributeList": [], "name": "vcpevsp_vgmux_0830 0", "attributeListvfModuleList": [], { "nameminInstances": "abstract_vgmux"1, "dataQuality": { "invariantUUID "status": "e709ddef-8aa2-4019-beb2-48b06c27285e",ok" }, "type": "vgmux", "attributeList": [], "uuidinvariantUUID": "0f5a18b5ced468ed-747046ec-41df4e18-b2219bb7-8bc933d2d0fc1a861c98087c", "vmList": [], } "maxInstances": 1, ] "networkList": [], } ], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" "service": { } "dataQuality": { ], "statusinvariantUUID": "ok"17e561e9-d0c2-4959-a709-9335b2233966", }"type": "org.openecomp.resource.vf.VcpevspVgmux0830", "attributeListuuid": [], "eaabc15d-c084-4e40-9d46-4d963a4c079b", "namevnfcList": "vcpesvc_vgmux",[ "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08",{ "uuiddataQuality": "7b4beec3-04a6-4513-8341-959589d2bd01" { }, "attributeListstatus": []"ok" }, }, "aai": { "dataQualityattributeList": [], { "statusname": "okabstract_vgmux", }, "vfList"invariantUUID": ["e709ddef-8aa2-4019-beb2-48b06c27285e", { "type": "vgmux", "dataQualityuuid": { "0f5a18b5-7470-41df-b221-8bc933d2d0fc" } "status": "ok" ] } }, ] }, "attributeListerrorMessage": [],"Error found with attribute \"name\"; "name": SDN-C value does not match AAI value \"vcpe_vnf_vcpevsp_vgmux_0830_201809061919\"" }, { "violationId": "9cb4678f111204ce40d4116a142d837c3a70f03c3aa9636317be8926d60d65a3", "vfModuleListmodelName": [null, "category": "Attribute Mismatch", "severity": "ERROR", {"violationType": "Rule", "validationRule": "SDNC-AAI-attribute-comparison", "violationDetails": { "minInstancescontext-list.sdnc.vfList[*].vfModuleList[*]": 0, [ { "dataQualityminInstances": {1, "dataQuality": { "status": "ok" }, "attributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "maxInstances": 1, "networkList": [], [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" } ], } "context-list.aai.vfList[*].vfModuleList[*]": [ ],{ "invariantUUID"minInstances": "17e561e9-d0c2-4959-a709-9335b2233966", 0, "typedataQuality": "vcpesvc_vgmux/vcpevsp_vgmux_0830 0",{ "status": "ok" "uuid": "eaabc15d-c084-4e40-9d46-4d963a4c079b", }, "vnfcListattributeList": [], "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", } "vmList": [], "servicemaxInstances": {1, "dataQualitynetworkList": {[], "status"uuid": "okd2f0ea48-d996-4d9e-893e-f649cbb969aa" } }, ] }, "attributeListerrorMessage": [],"Error found with attribute \"minInstances\"; SDN-C value does not match AAI value "name": "vcpe_svc_vcpesvc_vgmux_201809061919",\"0\"" }, { "invariantUUIDviolationId": "58f20afd-6ed1-4451-a19d-4fbee4aefa087762a0621cd5328fd993acfac8223b2f177ed97d0974aeb74a079bc3ed42f8d3", "modelName": null, "uuidcategory": "7b4beec3-04a6-4513-8341-959589d2bd01"Attribute Mismatch", "severity": "ERROR", }, "violationType": "Rule", "attributeListvalidationRule": []"SDNC-NDCB-attribute-comparison", "violationDetails": { }, "networkdiscovery"context-list.sdnc.service": { "dataQuality": { "status": "ok" }, "vfListattributeList": [], "name": "vcpesvc_vgmux1", { "invariantUUID": "58f20afd-6ed1-4451-a19d-4fbee4aefa08", "dataQualityuuid": { "7b4beec3-04a6-4513-8341-959589d2bd01" }, "context-list.ndcb.service": { "statusdataQuality": "ok"{ "status": "ok" }, }, "attributeList": [], "uuid": "68352304-7bba-4609-8551-0d0b819376c3" "vfModuleList": [ } }, "errorMessage": "Error found with attribute { \"uuid\"; SDN-C value does not match Network-Discovery value \"68352304-7bba-4609-8551-0d0b819376c3\"" }, { "minInstancesviolationId": 0"863764712cf5cbabf3f600d120766181c50698627bbd68851510d9e5198855b2", "modelName": null, "category": "Attribute Mismatch", "dataQualityseverity": {"ERROR", "violationType": "Rule", "validationRule": "SDNC-NDCB-attribute-comparison", "statusviolationDetails": "ok"{ "context-list.sdnc.vfList[*].vfModuleList[*]": [ { }, "minInstances": 1, "attributeListdataQuality": [],{ "status": "ok" "vmList": [ }, "attributeList": [], { "invariantUUID": "ced468ed-46ec-4e18-9bb7-1a861c98087c", "vmList": [], "dataQualitymaxInstances": {1, "networkList": [], "uuid": "d2f0ea48-d996-4d9e-893e-f649cbb969aa" "status": "ok" } ], "context-list.ndcb.vfList[*].vfModuleList[*]": [ }, { "minInstances": 0, "attributeListdataQuality": [{ "status": "ok" }, { "attributeList": [], "vmList": [ "dataQuality": { "dataQuality": { "status": "ok" }, "attributeList": [ }, { "namedataQuality": "hostName", { "status": "ok" "value": "kll0123"}, "name": "hostName", } "value": "kll0123" } ], ], "nfNamingCode": "vserver", "uuid": "0714ea3e-2126-4c31-b405-6796ffc955fb" } "uuid": "0714ea3e-2126-4c31-b405-6796ffc955fb" ], "maxInstances": 0, } "networkList": [] } ], ] }, "errorMessage": "Error found with attribute \"maxInstances": 0,\"; SDN-C value does not match Network-Discovery value \"0\"" }, { "violationId": "1e0b4a98e9d9a5f7d9a9d7165aa5b57948c5029efac42be2eca306340597fd94", "networkListmodelName": []null, "category": "VNFC Consistency", "severity": "WARNING", } "violationType": "Rule", "validationRule": "SDC-AAI-vnfc-node-count", "violationDetails": { ], "context-list.aai.vfList[*].vnfcList[*]": [], "vnfcList"context-list.sdc.vfList[*].vnfcList[*]": [] { } "dataQuality": { ], "status": "serviceok": { }, "dataQuality": { "attributeList": [], "statusname": "okabstract_vgmux", }, "invariantUUID": "e709ddef-8aa2-4019-beb2-48b06c27285e", "attributeListtype": [], "vgmux", "uuid": "683523040f5a18b5-7bba7470-460941df-8551b221-0d0b819376c38bc933d2d0fc" } }, ] }, "attributeListerrorMessage": []"Design has specified types but not all of them exist }in AAI" } }] } |