From 7deed55c2d94471842c6a81a02fa6c00fe82afac Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Mon, 10 Aug 2020 13:23:50 +0200 Subject: [PATCH] Make plugin more robust (#1881) --- supervisor/plugins/__init__.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/supervisor/plugins/__init__.py b/supervisor/plugins/__init__.py index c3b5b4c6a..828670971 100644 --- a/supervisor/plugins/__init__.py +++ b/supervisor/plugins/__init__.py @@ -60,8 +60,9 @@ class PluginManager(CoreSysAttributes): ): try: await plugin.load() - except Exception: # pylint: disable=broad-except + except Exception as err: # pylint: disable=broad-except _LOGGER.warning("Can't load plugin %s", type(plugin).__name__) + self.sys_capture_exception(err) # Check requirements for plugin, required_version in ( @@ -95,6 +96,9 @@ class PluginManager(CoreSysAttributes): type(plugin).__name__, required_version, ) + except Exception as err: # pylint: disable=broad-except + _LOGGER.warning("Can't update plugin %s", type(plugin).__name__) + self.sys_capture_exception(err) async def repair(self) -> None: """Repair Supervisor plugins.""" @@ -122,5 +126,6 @@ class PluginManager(CoreSysAttributes): ): try: await plugin.stop() - except Exception: # pylint: disable=broad-except + except Exception as err: # pylint: disable=broad-except _LOGGER.warning("Can't stop plugin %s", type(plugin).__name__) + self.sys_capture_exception(err)