support monitoring task executor (#2069)

### What problem does this PR solve?
#1383

### Type of change

- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
Kevin Hu 2024-08-23 15:55:58 +08:00 committed by GitHub
parent 19396998eb
commit cc6a48b128
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 8 additions and 4 deletions

View File

@ -68,7 +68,10 @@ def status():
res["redis"] = {"status": "red", "elapsed": "{:.1f}".format((timer() - st)*1000.), "error": str(e)}
try:
obj = json.loads(REDIS_CONN.get("TASKEXE"))
v = REDIS_CONN.get("TASKEXE")
if not v:
raise Exception("No task executor running!")
obj = json.loads(v)
color = "green"
for id in obj.keys():
arr = obj[id]

View File

@ -379,11 +379,12 @@ def report_status():
while True:
try:
obj = REDIS_CONN.get("TASKEXE")
obj = json.load(obj)
if not obj: obj = {}
else: obj = json.load(obj)
if id not in obj: obj[id] = []
obj[id].append(timer()*1000)
obj[id] = obj[id][:-60]
REDIS_CONN.set_obj("TASKEXE", obj)
obj[id] = obj[id][-60:]
REDIS_CONN.set_obj("TASKEXE", obj, 60*2)
except Exception as e:
print("[Exception]:", str(e))
time.sleep(60)