X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Fosm_ngsa%2Fdags%2Fmultivim_vm_metrics.py;h=2e67ce1b95f659266a678969085b452faec2f62d;hb=5184a3d91baf1a2ae5e4f4a462790e1c83e6e5f5;hp=6f03292da65a3f8ed80bc69a855182f4234d973c;hpb=9377117ccd1b86e62f1a3e8b63aee2880a5b9c55;p=osm%2FNG-SA.git diff --git a/src/osm_ngsa/dags/multivim_vm_metrics.py b/src/osm_ngsa/dags/multivim_vm_metrics.py index 6f03292..2e67ce1 100644 --- a/src/osm_ngsa/dags/multivim_vm_metrics.py +++ b/src/osm_ngsa/dags/multivim_vm_metrics.py @@ -23,54 +23,56 @@ from airflow import DAG from airflow.decorators import task from osm_mon.core.common_db import CommonDbClient from osm_mon.core.config import Config +from osm_mon.vim_connectors.azure import AzureCollector +from osm_mon.vim_connectors.gcp import GcpCollector from osm_mon.vim_connectors.openstack import OpenStackCollector from prometheus_client import CollectorRegistry, Gauge, push_to_gateway SCHEDULE_INTERVAL = 5 COLLECTOR_MAX_METRICS_PER_TASK = 100 -SUPPORTED_VIM_TYPES = ["openstack", "vio"] +SUPPORTED_VIM_TYPES = ["openstack", "vio", "azure", "gcp"] PROMETHEUS_PUSHGW = "pushgateway-prometheus-pushgateway:9091" PROMETHEUS_JOB_PREFIX = "airflow_osm_vm_metrics_" PROMETHEUS_METRICS = { "cpu_utilization": { - "metric_name": "cpu_utilization", + "metric_name": "osm_cpu_utilization", "metric_descr": "CPU usage percentage", }, "average_memory_utilization": { - "metric_name": "average_memory_utilization", + "metric_name": "osm_average_memory_utilization", "metric_descr": "Volume of RAM in MB used by the VM", }, "disk_read_ops": { - "metric_name": "disk_read_ops", + "metric_name": "osm_disk_read_ops", "metric_descr": "Number of read requests", }, "disk_write_ops": { - "metric_name": "disk_write_ops", + "metric_name": "osm_disk_write_ops", "metric_descr": "Number of write requests", }, "disk_read_bytes": { - "metric_name": "disk_read_bytes", + "metric_name": "osm_disk_read_bytes", "metric_descr": "Volume of reads in bytes", }, "disk_write_bytes": { - "metric_name": "disk_write_bytes", + "metric_name": "osm_disk_write_bytes", "metric_descr": "Volume of writes in bytes", }, "packets_received": { - "metric_name": "packets_received", + "metric_name": "osm_packets_received", "metric_descr": "Number of incoming packets", }, "packets_sent": { - "metric_name": "packets_sent", + "metric_name": "osm_packets_sent", "metric_descr": "Number of outgoing packets", }, "packets_in_dropped": { - "metric_name": "packets_in_dropped", + "metric_name": "osm_packets_in_dropped", "metric_descr": "Number of incoming dropped packets", }, "packets_out_dropped": { - "metric_name": "packets_out_dropped", + "metric_name": "osm_packets_out_dropped", "metric_descr": "Number of outgoing dropped packets", }, } @@ -111,7 +113,6 @@ def create_dag(dag_id, dag_number, dag_description, vim_id): }, description=dag_description, is_paused_upon_creation=False, - # schedule_interval=timedelta(minutes=SCHEDULE_INTERVAL), schedule_interval=f"*/{SCHEDULE_INTERVAL} * * * *", start_date=datetime(2022, 1, 1), tags=["osm", "vdu"], @@ -227,6 +228,10 @@ def create_dag(dag_id, dag_number, dag_description, vim_id): vim_type = "openstack" if vim_type == "openstack": collector = OpenStackCollector(vim_account) + elif vim_type == "azure": + collector = AzureCollector(vim_account) + elif vim_type == "gcp": + collector = GcpCollector(vim_account) else: logger.error(f"VIM type '{vim_type}' not supported") return None