Loading src/common/DeviceTypes.py +0 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,6 @@ class DeviceTypeEnum(Enum): OPEN_ROADM = 'openroadm' PON_CONTROLLER = 'pon-controller' # ETSI TeraFlowSDN controller TERAFLOWSDN_CONTROLLER = 'teraflowsdn' IETF_SLICE = 'ietf-slice' src/device/service/DeviceServiceServicerImpl.py +5 −14 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ from .Tools import ( check_connect_rules, check_no_endpoints, compute_rules_to_add_delete, configure_rules, deconfigure_rules, get_device_controller_uuid, populate_config_rules, populate_endpoint_monitoring_resources, populate_endpoints, populate_initial_config_rules, subscribe_kpi, unsubscribe_kpi, update_endpoints, update_sap_id, subscribe_kpi, unsubscribe_kpi, update_endpoints ) LOGGER = logging.getLogger(__name__) Loading @@ -54,15 +54,14 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): self.monitoring_loops = monitoring_loops self.mutex_queues = MutexQueues() LOGGER.debug('Servicer Created') self.sap_id =0 @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) def AddDevice(self, request : Device, context : grpc.ServicerContext) -> DeviceId: t0 = time.time() device_uuid = request.device_id.device_uuid.uuid connection_config_rules = check_connect_rules(request.device_config) connection_config_rules = check_connect_rules(request.device_config) check_no_endpoints(request.device_endpoints) t1 = time.time() Loading @@ -87,27 +86,19 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): device_id = context_client.SetDevice(device) device = get_device(context_client, device_id.device_uuid.uuid, rw_copy=True) # update device_uuid to honor UUID provided by Context device_uuid = device.device_id.device_uuid.uuid device_name = device.name update_sap_id(device, self.sap_id) self.sap_id += 1 t2 = time.time() self.mutex_queues.add_alias(device_uuid, device_name) self.mutex_queues.wait_my_turn(device_uuid) t3 = time.time() LOGGER.info('request.device_endpoints ' + str(request.device_endpoints)) LOGGER.info('device.device_endpoints ' + str(device.device_endpoints)) try: driver : _Driver = get_driver(self.driver_instance_cache, device) t4 = time.time() errors = [] Loading src/device/service/driver_api/DriverInstanceCache.py +0 −6 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ from .DriverFactory import DriverFactory from .Exceptions import DriverInstanceCacheTerminatedException from .FilterFields import FilterFieldEnum, get_device_driver_filter_fields LOGGER = logging.getLogger(__name__) class DriverInstanceCache: Loading Loading @@ -95,7 +94,6 @@ def get_driver(driver_instance_cache : DriverInstanceCache, device : Device) -> port = connect_rules.get('port', '0') settings = connect_rules.get('settings', '{}') try: settings = json.loads(settings) except ValueError as e: Loading @@ -104,9 +102,6 @@ def get_driver(driver_instance_cache : DriverInstanceCache, device : Device) -> extra_details='_connect/settings Config Rules provided cannot be decoded as JSON dictionary.' ) from e driver : _Driver = driver_instance_cache.get( device_uuid, filter_fields=driver_filter_fields, address=address, port=port, settings=settings) driver.Connect() Loading @@ -117,4 +112,3 @@ def preload_drivers(driver_instance_cache : DriverInstanceCache) -> None: context_client = ContextClient() devices = context_client.ListDevices(Empty()) for device in devices.devices: get_driver(driver_instance_cache, device) src/device/service/drivers/openconfig/OpenConfigDriver.py +1 −15 Original line number Diff line number Diff line Loading @@ -33,8 +33,6 @@ from device.service.driver_api.AnyTreeTools import TreeNode, get_subnode, set_su from .templates import ALL_RESOURCE_KEYS, EMPTY_CONFIG, compose_config, get_filter, parse, cli_compose_config from .RetryDecorator import retry DEBUG_MODE = False logging.getLogger('ncclient.manager').setLevel(logging.DEBUG if DEBUG_MODE else logging.WARNING) logging.getLogger('ncclient.transport.ssh').setLevel(logging.DEBUG if DEBUG_MODE else logging.WARNING) Loading @@ -42,8 +40,6 @@ logging.getLogger('apscheduler.executors.default').setLevel(logging.INFO if DEBU logging.getLogger('apscheduler.scheduler').setLevel(logging.INFO if DEBUG_MODE else logging.ERROR) logging.getLogger('monitoring-client').setLevel(logging.INFO if DEBUG_MODE else logging.ERROR) LOGGER = logging.getLogger(__name__) RE_GET_ENDPOINT_FROM_INTERFACE_KEY = re.compile(r'.*interface\[([^\]]+)\].*') RE_GET_ENDPOINT_FROM_INTERFACE_XPATH = re.compile(r".*interface\[oci\:name\='([^\]]+)'\].*") Loading Loading @@ -78,7 +74,6 @@ class NetconfSessionHandler: self.__manager_params = settings.get('manager_params', {}) self.__nc_params = settings.get('nc_params', {}) self.__message_renderer = settings.get('message_renderer','jinja') LOGGER.info(f"[OpenConfigDriver] Settings recibidos: {settings}") self.__manager : Manager = None self.__candidate_supported = False Loading Loading @@ -287,7 +282,6 @@ class OpenConfigDriver(_Driver): self.__out_samples = queue.Queue() self.__netconf_handler = NetconfSessionHandler(self.address, self.port, **(self.settings)) self.__samples_cache = SamplesCache(self.__netconf_handler, self.__logger) self.sap_id = 0 # Inicializar sap_id a cero def Connect(self) -> bool: with self.__lock: Loading Loading @@ -334,14 +328,6 @@ class OpenConfigDriver(_Driver): MSG = 'Exception retrieving {:s}: {:s}' self.__logger.exception(MSG.format(str_resource_name, str(resource_key))) results.append((resource_key, e)) # if validation fails, store the exception self.sap_id += 1 #LOGGER.info("RESULTS---------------") #LOGGER.info(results) #results.append(('/device/sap_id', {'sap_id': f'SAP_{self.sap_id}'})) #LOGGER.info("RESULTS---------------") #LOGGER.info(results) #OpenConfigDriver.sap_id += 1 return results @metered_subclass_method(METRICS_POOL) Loading src/device/service/drivers/openconfig/templates/EndPoints.py +1 −1 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ import logging, lxml.etree as ET from typing import Any, Dict, List, Tuple from common.proto.kpi_sample_types_pb2 import KpiSampleType from .Namespace import NAMESPACES from .Tools import add_value_from_collection, add_value_from_tag#, get_sap_id from .Tools import add_value_from_collection, add_value_from_tag LOGGER = logging.getLogger(__name__) Loading Loading
src/common/DeviceTypes.py +0 −1 Original line number Diff line number Diff line Loading @@ -52,7 +52,6 @@ class DeviceTypeEnum(Enum): OPEN_ROADM = 'openroadm' PON_CONTROLLER = 'pon-controller' # ETSI TeraFlowSDN controller TERAFLOWSDN_CONTROLLER = 'teraflowsdn' IETF_SLICE = 'ietf-slice'
src/device/service/DeviceServiceServicerImpl.py +5 −14 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ from .Tools import ( check_connect_rules, check_no_endpoints, compute_rules_to_add_delete, configure_rules, deconfigure_rules, get_device_controller_uuid, populate_config_rules, populate_endpoint_monitoring_resources, populate_endpoints, populate_initial_config_rules, subscribe_kpi, unsubscribe_kpi, update_endpoints, update_sap_id, subscribe_kpi, unsubscribe_kpi, update_endpoints ) LOGGER = logging.getLogger(__name__) Loading @@ -54,15 +54,14 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): self.monitoring_loops = monitoring_loops self.mutex_queues = MutexQueues() LOGGER.debug('Servicer Created') self.sap_id =0 @safe_and_metered_rpc_method(METRICS_POOL, LOGGER) def AddDevice(self, request : Device, context : grpc.ServicerContext) -> DeviceId: t0 = time.time() device_uuid = request.device_id.device_uuid.uuid connection_config_rules = check_connect_rules(request.device_config) connection_config_rules = check_connect_rules(request.device_config) check_no_endpoints(request.device_endpoints) t1 = time.time() Loading @@ -87,27 +86,19 @@ class DeviceServiceServicerImpl(DeviceServiceServicer): device_id = context_client.SetDevice(device) device = get_device(context_client, device_id.device_uuid.uuid, rw_copy=True) # update device_uuid to honor UUID provided by Context device_uuid = device.device_id.device_uuid.uuid device_name = device.name update_sap_id(device, self.sap_id) self.sap_id += 1 t2 = time.time() self.mutex_queues.add_alias(device_uuid, device_name) self.mutex_queues.wait_my_turn(device_uuid) t3 = time.time() LOGGER.info('request.device_endpoints ' + str(request.device_endpoints)) LOGGER.info('device.device_endpoints ' + str(device.device_endpoints)) try: driver : _Driver = get_driver(self.driver_instance_cache, device) t4 = time.time() errors = [] Loading
src/device/service/driver_api/DriverInstanceCache.py +0 −6 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ from .DriverFactory import DriverFactory from .Exceptions import DriverInstanceCacheTerminatedException from .FilterFields import FilterFieldEnum, get_device_driver_filter_fields LOGGER = logging.getLogger(__name__) class DriverInstanceCache: Loading Loading @@ -95,7 +94,6 @@ def get_driver(driver_instance_cache : DriverInstanceCache, device : Device) -> port = connect_rules.get('port', '0') settings = connect_rules.get('settings', '{}') try: settings = json.loads(settings) except ValueError as e: Loading @@ -104,9 +102,6 @@ def get_driver(driver_instance_cache : DriverInstanceCache, device : Device) -> extra_details='_connect/settings Config Rules provided cannot be decoded as JSON dictionary.' ) from e driver : _Driver = driver_instance_cache.get( device_uuid, filter_fields=driver_filter_fields, address=address, port=port, settings=settings) driver.Connect() Loading @@ -117,4 +112,3 @@ def preload_drivers(driver_instance_cache : DriverInstanceCache) -> None: context_client = ContextClient() devices = context_client.ListDevices(Empty()) for device in devices.devices: get_driver(driver_instance_cache, device)
src/device/service/drivers/openconfig/OpenConfigDriver.py +1 −15 Original line number Diff line number Diff line Loading @@ -33,8 +33,6 @@ from device.service.driver_api.AnyTreeTools import TreeNode, get_subnode, set_su from .templates import ALL_RESOURCE_KEYS, EMPTY_CONFIG, compose_config, get_filter, parse, cli_compose_config from .RetryDecorator import retry DEBUG_MODE = False logging.getLogger('ncclient.manager').setLevel(logging.DEBUG if DEBUG_MODE else logging.WARNING) logging.getLogger('ncclient.transport.ssh').setLevel(logging.DEBUG if DEBUG_MODE else logging.WARNING) Loading @@ -42,8 +40,6 @@ logging.getLogger('apscheduler.executors.default').setLevel(logging.INFO if DEBU logging.getLogger('apscheduler.scheduler').setLevel(logging.INFO if DEBUG_MODE else logging.ERROR) logging.getLogger('monitoring-client').setLevel(logging.INFO if DEBUG_MODE else logging.ERROR) LOGGER = logging.getLogger(__name__) RE_GET_ENDPOINT_FROM_INTERFACE_KEY = re.compile(r'.*interface\[([^\]]+)\].*') RE_GET_ENDPOINT_FROM_INTERFACE_XPATH = re.compile(r".*interface\[oci\:name\='([^\]]+)'\].*") Loading Loading @@ -78,7 +74,6 @@ class NetconfSessionHandler: self.__manager_params = settings.get('manager_params', {}) self.__nc_params = settings.get('nc_params', {}) self.__message_renderer = settings.get('message_renderer','jinja') LOGGER.info(f"[OpenConfigDriver] Settings recibidos: {settings}") self.__manager : Manager = None self.__candidate_supported = False Loading Loading @@ -287,7 +282,6 @@ class OpenConfigDriver(_Driver): self.__out_samples = queue.Queue() self.__netconf_handler = NetconfSessionHandler(self.address, self.port, **(self.settings)) self.__samples_cache = SamplesCache(self.__netconf_handler, self.__logger) self.sap_id = 0 # Inicializar sap_id a cero def Connect(self) -> bool: with self.__lock: Loading Loading @@ -334,14 +328,6 @@ class OpenConfigDriver(_Driver): MSG = 'Exception retrieving {:s}: {:s}' self.__logger.exception(MSG.format(str_resource_name, str(resource_key))) results.append((resource_key, e)) # if validation fails, store the exception self.sap_id += 1 #LOGGER.info("RESULTS---------------") #LOGGER.info(results) #results.append(('/device/sap_id', {'sap_id': f'SAP_{self.sap_id}'})) #LOGGER.info("RESULTS---------------") #LOGGER.info(results) #OpenConfigDriver.sap_id += 1 return results @metered_subclass_method(METRICS_POOL) Loading
src/device/service/drivers/openconfig/templates/EndPoints.py +1 −1 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ import logging, lxml.etree as ET from typing import Any, Dict, List, Tuple from common.proto.kpi_sample_types_pb2 import KpiSampleType from .Namespace import NAMESPACES from .Tools import add_value_from_collection, add_value_from_tag#, get_sap_id from .Tools import add_value_from_collection, add_value_from_tag LOGGER = logging.getLogger(__name__) Loading