mirror of
https://github.com/infiniflow/ragflow.git
synced 2025-12-08 20:42:30 +08:00
Fix: check task executor alive and display status (#11270)
### What problem does this PR solve? Correctly check task executor alive and display status. ### Type of change - [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
@ -393,7 +393,9 @@ class AdminCLI(Cmd):
|
|||||||
print(f"Can't access {self.host}, port: {self.port}")
|
print(f"Can't access {self.host}, port: {self.port}")
|
||||||
|
|
||||||
def _format_service_detail_table(self, data):
|
def _format_service_detail_table(self, data):
|
||||||
if not any([isinstance(v, list) for v in data.values()]):
|
if isinstance(data, list):
|
||||||
|
return data
|
||||||
|
if not all([isinstance(v, list) for v in data.values()]):
|
||||||
# normal table
|
# normal table
|
||||||
return data
|
return data
|
||||||
# handle task_executor heartbeats map, for example {'name': [{'done': 2, 'now': timestamp1}, {'done': 3, 'now': timestamp2}]
|
# handle task_executor heartbeats map, for example {'name': [{'done': 2, 'now': timestamp1}, {'done': 3, 'now': timestamp2}]
|
||||||
@ -404,7 +406,7 @@ class AdminCLI(Cmd):
|
|||||||
task_executor_list.append({
|
task_executor_list.append({
|
||||||
"task_executor_name": k,
|
"task_executor_name": k,
|
||||||
**heartbeats[0],
|
**heartbeats[0],
|
||||||
})
|
} if heartbeats else {"task_executor_name": k})
|
||||||
return task_executor_list
|
return task_executor_list
|
||||||
|
|
||||||
def _print_table_simple(self, data):
|
def _print_table_simple(self, data):
|
||||||
@ -415,7 +417,8 @@ class AdminCLI(Cmd):
|
|||||||
# handle single row data
|
# handle single row data
|
||||||
data = [data]
|
data = [data]
|
||||||
|
|
||||||
columns = list(data[0].keys())
|
columns = list(set().union(*(d.keys() for d in data)))
|
||||||
|
columns.sort()
|
||||||
col_widths = {}
|
col_widths = {}
|
||||||
|
|
||||||
def get_string_width(text):
|
def get_string_width(text):
|
||||||
|
|||||||
@ -173,7 +173,8 @@ def check_task_executor_alive():
|
|||||||
heartbeats = [json.loads(heartbeat) for heartbeat in heartbeats]
|
heartbeats = [json.loads(heartbeat) for heartbeat in heartbeats]
|
||||||
task_executor_heartbeats[task_executor_id] = heartbeats
|
task_executor_heartbeats[task_executor_id] = heartbeats
|
||||||
if task_executor_heartbeats:
|
if task_executor_heartbeats:
|
||||||
return {"status": "alive", "message": task_executor_heartbeats}
|
status = "alive" if any(task_executor_heartbeats.values()) else "timeout"
|
||||||
|
return {"status": status, "message": task_executor_heartbeats}
|
||||||
else:
|
else:
|
||||||
return {"status": "timeout", "message": "Not found any task executor."}
|
return {"status": "timeout", "message": "Not found any task executor."}
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
|||||||
@ -110,7 +110,7 @@ class RedisDB:
|
|||||||
info = self.REDIS.info()
|
info = self.REDIS.info()
|
||||||
return {
|
return {
|
||||||
'redis_version': info["redis_version"],
|
'redis_version': info["redis_version"],
|
||||||
'server_mode': info["server_mode"],
|
'server_mode': info["server_mode"] if "server_mode" in info else info.get("redis_mode", ""),
|
||||||
'used_memory': info["used_memory_human"],
|
'used_memory': info["used_memory_human"],
|
||||||
'total_system_memory': info["total_system_memory_human"],
|
'total_system_memory': info["total_system_memory_human"],
|
||||||
'mem_fragmentation_ratio': info["mem_fragmentation_ratio"],
|
'mem_fragmentation_ratio': info["mem_fragmentation_ratio"],
|
||||||
|
|||||||
Reference in New Issue
Block a user