From 65ceade489c4018c3f315104d70be0550a28d9d9 Mon Sep 17 00:00:00 2001
From: shixuantong <shixuantong1@huawei.com>
Date: Wed, 11 Sep 2024 10:23:41 +0800
Subject: [PATCH] fix configparser.InterpolationSyntaxError

---
 src/python/syssentry/sentry_config.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/python/syssentry/sentry_config.py b/src/python/syssentry/sentry_config.py
index 01f3df8..a0e7b79 100644
--- a/src/python/syssentry/sentry_config.py
+++ b/src/python/syssentry/sentry_config.py
@@ -103,14 +103,18 @@ class CpuPluginsParamsConfig:
         """read config file"""
         config_param_section_args = {}
         if os.path.exists(self.config_file):
-            self.config.read(self.config_file)
             try:
+                self.config.read(self.config_file)
                 config_param_section_args = dict(self.config[self.param_section_name])
-            except (ValueError, KeyError):
+            except (ValueError, KeyError, configparser.InterpolationSyntaxError):
                 config_param_section_args = {}
+                logging.error("Failed to parse cpu_sentry.ini!")
         return config_param_section_args
 
     def join_cpu_start_cmd(self, cpu_param_dict: dict) -> str:
+        if not cpu_param_dict:
+            return ""
+
         cpu_list = cpu_param_dict.get("cpu_list", "default")
         if cpu_list == "default":
             cpu_list = CpuPluginsParamsConfig.get_cpu_info()
-- 
2.27.0

