better error handling during connector initilization

This commit is contained in:
Mikhail Epifanov 2024-01-24 08:57:24 +01:00
parent 5f9d59317b
commit 578bb2af25
No known key found for this signature in database

View File

@ -82,6 +82,7 @@ class ConnectorManager:
item: Optional[Work] = worker_queue.get() item: Optional[Work] = worker_queue.get()
except KeyboardInterrupt: except KeyboardInterrupt:
break break
if item is None: if item is None:
break break
@ -96,11 +97,20 @@ class ConnectorManager:
loop.run_until_complete(close_connectors(connectors)) loop.run_until_complete(close_connectors(connectors))
with scope(space=space): with scope(space=space):
connectors: List[Connector] = list( connectors: List[Connector] = list()
filter( for config in space.connectorconfig_set.all():
lambda x: x is not None, config: ConnectorConfig = config
[ConnectorManager.get_connected_for_config(config) for config in space.connectorconfig_set.all() if config.enabled], if not config.enabled:
)) continue
try:
connector: Optional[Connector] = ConnectorManager.get_connected_for_config(config)
except BaseException:
logging.exception(f"failed to initialize {config.name}")
continue
connectors.append(connector)
_connectors[space.name] = connectors _connectors[space.name] = connectors
if len(connectors) == 0 or refresh_connector_cache: if len(connectors) == 0 or refresh_connector_cache: