!238 fix period task some bugs and fix env config

From: @tong_1001 
Reviewed-by: @hubin95 
Signed-off-by: @hubin95
This commit is contained in:
openeuler-ci-bot 2025-03-29 07:44:34 +00:00 committed by Gitee
commit a580b7945a
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
3 changed files with 120 additions and 1 deletions

View File

@ -0,0 +1,56 @@
From 71fe4393402427b3fbcd147626406cbd70186046 Mon Sep 17 00:00:00 2001
From: shixuantong <shixuantong1@huawei.com>
Date: Sat, 29 Mar 2025 11:06:47 +0800
Subject: [PATCH] fix env_file and environ_conf
---
src/python/syssentry/global_values.py | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
diff --git a/src/python/syssentry/global_values.py b/src/python/syssentry/global_values.py
index 9c7800b..48a9f2d 100644
--- a/src/python/syssentry/global_values.py
+++ b/src/python/syssentry/global_values.py
@@ -75,6 +75,8 @@ class InspectTask:
self.onstart = False
# ccnfig env_file
self.env_file = ""
+ # env conf to popen arg
+ self.environ_conf = None
# start mode
self.conflict = "up"
# alarm id
@@ -112,7 +114,7 @@ class InspectTask:
logging.error("task %s log_file %s open failed", self.name, self.log_file)
logfile = subprocess.PIPE
try:
- child = subprocess.Popen(cmd_list, stdout=logfile, stderr=subprocess.STDOUT, close_fds=True)
+ child = subprocess.Popen(cmd_list, stdout=logfile, stderr=subprocess.STDOUT, close_fds=True, env=self.environ_conf)
except OSError:
logging.error("task %s start Popen error, invalid cmd", cmd_list)
self.result_info["result"] = ResultLevel.FAIL.name
@@ -199,7 +201,7 @@ class InspectTask:
return
# read config
- environ_conf = {}
+ self.environ_conf = dict(os.environ)
with open(self.env_file, 'r') as file:
for line in file:
line = line.strip()
@@ -210,11 +212,6 @@ class InspectTask:
if not key or not value:
logging.error("env_file = %s format is error, use default environ", self.env_file)
return
- environ_conf[key] = value
-
- # set environ
- for key, value in environ_conf.items():
- logging.debug("environ key=%s, value=%s", key, value)
- os.environ[key] = value
+ self.environ_conf[key] = value
logging.debug("the subprocess=[%s] begin to run", self.name)
--
2.27.0

View File

@ -0,0 +1,54 @@
From f2e384ea0cf6a323a41c293f981952b48ff3052f Mon Sep 17 00:00:00 2001
From: shixuantong <shixuantong1@huawei.com>
Date: Sat, 29 Mar 2025 10:50:47 +0800
Subject: [PATCH] fix period task some bugs
---
src/python/syssentry/cron_process.py | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/src/python/syssentry/cron_process.py b/src/python/syssentry/cron_process.py
index 5543d67..52e6e1f 100644
--- a/src/python/syssentry/cron_process.py
+++ b/src/python/syssentry/cron_process.py
@@ -59,7 +59,6 @@ class PeriodTask(InspectTask):
self.result_info["details"] = {}
if not self.period_enabled:
self.period_enabled = True
- self.upgrade_period_timestamp()
if self.conflict != 'up':
ret = self.check_conflict()
@@ -87,6 +86,7 @@ class PeriodTask(InspectTask):
self.runtime_status = FAILED_STATUS
return False, "period task start popen failed, invalid command"
finally:
+ self.upgrade_period_timestamp()
if isinstance(logfile, io.TextIOWrapper) and not logfile.closed:
logfile.close()
@@ -127,7 +127,6 @@ class PeriodTask(InspectTask):
res, _ = self.start()
if res:
set_runtime_status(self.name, RUNNING_STATUS)
- self.upgrade_period_timestamp()
def period_tasks_handle():
@@ -142,7 +141,7 @@ def period_tasks_handle():
logging.debug("period not enabled")
continue
- if not task.onstart:
+ if not task.onstart and task.last_exec_timestamp == 0:
logging.debug("period onstart not enabled, task: %s", task.name)
task.runtime_status = EXITED_STATUS
continue
@@ -153,4 +152,3 @@ def period_tasks_handle():
res, _ = task.start()
if res:
set_runtime_status(task.name, RUNNING_STATUS)
- task.upgrade_period_timestamp()
--
2.27.0

View File

@ -4,7 +4,7 @@
Summary: System Inspection Framework
Name: sysSentry
Version: 1.0.2
Release: 33
Release: 34
License: Mulan PSL v2
Group: System Environment/Daemons
Source0: https://gitee.com/openeuler/sysSentry/releases/download/v%{version}/%{name}-%{version}.tar.gz
@ -43,6 +43,8 @@ Patch30: add-avg_block_io-and-ai_block_io.patch
Patch31: fix-bug-of-ebpf-and-ai_block_io.patch
Patch32: fix-the-sentryCollector-service-can-t-be-stopped-for.patch
Patch33: ai-block-io-exit-when-stage-is-not-supported.patch
Patch34: fix-period-task-some-bugs.patch
Patch35: fix-env_file-and-environ_conf.patch
BuildRequires: cmake gcc-c++
BuildRequires: python3 python3-setuptools
@ -360,6 +362,13 @@ rm -rf %{buildroot}
%attr(0550,root,root) %{python3_sitelib}/sentryCollector/__pycache__/collect_plugin*
%changelog
* Sat Mar 29 2025 shixuantong <shixuantong1@huawei.com> - 1.0.2-34
- Type:bugfix
- CVE:NA
- SUG:NA
- DESC:fix period task some bugs
fix env_file and environ_conf
* Thu Mar 13 2025 luckky <guodashun1@huawei.com> - 1.0.2-33
- Type:bugfix
- CVE:NA