From 4c790f49841801b7d6868952471399cad9b4eb3c Mon Sep 17 00:00:00 2001 From: wtingkai <330445001@qq.com> Date: Wed, 20 Aug 2025 10:43:39 +0800 Subject: [PATCH 1/2] =?UTF-8?q?feat(OmniAdvisor):=20=E5=B0=86Spark?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E7=94=A8=E6=97=B6=E8=BF=9B=E8=A1=8C=E5=B0=8F?= =?UTF-8?q?=E6=95=B0=E4=BD=8D=E6=95=B0=E6=88=AA=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/omniadvisor/service/spark_service/spark_executor.py | 2 +- .../src/omniadvisor/service/spark_service/spark_fetcher.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/omniadvisor/src/omniadvisor/service/spark_service/spark_executor.py b/omniadvisor/src/omniadvisor/service/spark_service/spark_executor.py index 62de86f11..dfcfe386b 100644 --- a/omniadvisor/src/omniadvisor/service/spark_service/spark_executor.py +++ b/omniadvisor/src/omniadvisor/service/spark_service/spark_executor.py @@ -93,7 +93,7 @@ class SparkExecutor: match_objs = re.findall(pattern, spark_output, re.MULTILINE) if match_objs: time_taken_list = [float(obj) for obj in match_objs] - total_time_taken = sum(time_taken_list) + total_time_taken = round(sum(time_taken_list), OA_CONF.decimal_digits) global_logger.debug(f'Total time taken is {total_time_taken} seconds') else: global_logger.info('This spark task do not have Time taken message.') diff --git a/omniadvisor/src/omniadvisor/service/spark_service/spark_fetcher.py b/omniadvisor/src/omniadvisor/service/spark_service/spark_fetcher.py index 6868c59b5..4c84fc8ff 100755 --- a/omniadvisor/src/omniadvisor/service/spark_service/spark_fetcher.py +++ b/omniadvisor/src/omniadvisor/service/spark_service/spark_fetcher.py @@ -1,10 +1,10 @@ import json -import re from typing import Any import requests from dateutil import parser +from common.constant import OA_CONF from omniadvisor.utils.logger import global_logger @@ -124,4 +124,4 @@ class SparkFetcher: # 计算时间差 time_diff = max(timestamp_list) - min(timestamp_list) global_logger.debug(f"Total time diff calculate by jobs is {time_diff} seconds") - return time_diff + return round(time_diff, OA_CONF.decimal_digits) -- Gitee From 097d7eefc74469a4a7b7a9c2a601c742f7ba426e Mon Sep 17 00:00:00 2001 From: wtingkai <330445001@qq.com> Date: Wed, 20 Aug 2025 10:50:53 +0800 Subject: [PATCH 2/2] =?UTF-8?q?feat(OmniAdvisor):=20=E5=9C=A8Django=20Admi?= =?UTF-8?q?n=E4=B8=ADExamRecord=E9=A1=B5=E9=9D=A2=E4=B8=AD=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0Load=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- omniadvisor/src/server/app/admin.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/omniadvisor/src/server/app/admin.py b/omniadvisor/src/server/app/admin.py index 819ea18c7..af7a6f450 100644 --- a/omniadvisor/src/server/app/admin.py +++ b/omniadvisor/src/server/app/admin.py @@ -21,5 +21,11 @@ class TuningRecordAdmin(admin.ModelAdmin): @admin.register(DatabaseExamRecord) class ExamRecordAdmin(admin.ModelAdmin): - list_display = ('id', 'tuning_record', 'start_time', 'end_time', 'status', 'runtime', 'application_id', 'trace') + list_display = ('id', 'load', 'tuning_record', 'start_time', 'end_time', 'status', 'runtime', 'application_id', 'trace') list_filter = () + + # 增加对Load的显示 + def load(self, model): + return model.tuning_record.load + load.short_description = 'Load' + load.admin_order_field = 'load' -- Gitee