A-Tune-Collector/fix-bug-procsched-report-list-index-out-of-range.patch
weiyaping b9aaf76c07 fix bug: procSched.report: list index out of range
Signed-off-by: weiyaping <weiyaping@xfusion.com>
(cherry picked from commit ed026d30b2ef1a9d841c6648131f915f9d581a08)
2023-12-19 16:02:56 +08:00

46 lines
1.6 KiB
Diff

From 009428bbf8f38bf9754999ec77403c4b181cf8ed Mon Sep 17 00:00:00 2001
From: weiyaping <weiyaping@xfusion.com>
Date: Fri, 15 Dec 2023 03:37:02 -0500
Subject: [PATCH] fix bug:ProcSched.report: list index out of range
---
atune_collector/plugin/monitor/process/sched.py | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/atune_collector/plugin/monitor/process/sched.py b/atune_collector/plugin/monitor/process/sched.py
index 5289d84..f184957 100644
--- a/atune_collector/plugin/monitor/process/sched.py
+++ b/atune_collector/plugin/monitor/process/sched.py
@@ -36,10 +36,12 @@ class ProcSched(Monitor):
self.__interval = 1
self.__applications = []
self.__pids = []
+ self.__proc_flag = []
def _get(self, para=None):
output = ""
pids = []
+ proc_flag = []
if para is not None:
opts, _ = getopt.getopt(para.split(), None, ['interval=', 'app='])
for opt, val in opts:
@@ -67,9 +69,13 @@ class ProcSched(Monitor):
for app in self.__applications:
pid = subprocess.getoutput(
- "ps -A | grep {} | awk '{{print $1}}'".format(app)).split()[0]
- pids.append(pid)
+ "ps -A | grep {} | awk '{{print $1}}'".format(app)).split()
+ app_pid_flag = True if pid else False
+ proc_flag.append(app_pid_flag)
+ if pid:
+ pids.append(pid[0])
self.__pids = pids
+ self.__proc_flag = proc_flag
for pid in self.__pids:
out = subprocess.check_output(
--
1.8.3.1