Prometheus is selected to be monitoring system for ONAP. Prometheus service, alert manager and Grafana are instantiated by MSB for monitoring various ONAP projects.
OOF is one of the first projects to provide metrics to Prometheus.
As part of that, OOF integrated Python based exporter client software.
HPA matching logic is the first one in OOF to export its metrics.
OOF-HPA metrics (Dileep Ranganathan)
OOF-HPA metrics provide information for the user to visualize following:
- Number of times there is successful flavor match : flavor_match_successful
- Number of times there is unsuccessful flavor match: flavor_match_unsuccessful
- Number of times cloud region is selected successfully : cloud_region_successful_selection
- Number of times no cloud region is selected: cloud_region_unsuccessful_selection
Metrics alone does not provide much information. Labels for each metric quality the metric.
Current thinking is that we have following labels for each metric
Labels for flavor_match_successful and flavor match_unsuccessful
- vnf_name
- vnfc_name
- service_name (if available in R3. Make it available in R4)
- customer_name (if available in R3. Make it available in R4)
- cloud_region
- policy_name
In case of flavor_match_unsuccessful, few additional labels help
- mandatory_match_failed
- not_enough_capacity (R4)
- ???
Labels for cloud_region_successful_selection and cloud_region_unsuccessful_selection
- cloud_region
- service_name
- customer_name
In case of cloud_region_unsuccessful_selection, few more additional labels would help
- no_selection_due_to_flavors
- no_selection_due_to_distance
- no_selection_due_to_cost
OOF Metrics
VNF_COMPUTE_PROFILES = Counter(
'vnf_compute_profile',
'Compute Profiles used by VNFs over time',
['vnf', 'flavor', 'vim_type']
)
VNF_FAILURE = Counter(
'vnf_no_solution',
'VNFs with no Homing solution',
['vnf']
)
VNF_SUB_OPTIMUM = Counter(
'vnf_sub_optimum_solution',
'VNFs with sub-optimum solution',
['vnf']
)
VNF_SCORE = Counter(
'vnf_scores',
'HPA Scores of vnf',
['vnf', 'hpa_score']
)