diff --git a/omniadvisor/src/omniadvisor/service/spark_service/spark_executor.py b/omniadvisor/src/omniadvisor/service/spark_service/spark_executor.py index dfcfe386bd48533dba9026f73d88b92fb412bd3a..62de86f11a2eea5fffb4cf54699f4b78bbb74323 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 = round(sum(time_taken_list), OA_CONF.decimal_digits) + total_time_taken = sum(time_taken_list) 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 4c84fc8ffe09f1c9152804b44098af9d13ad6178..329fb3581d1fb07f9d042ac0350362bc6b78aed3 100755 --- a/omniadvisor/src/omniadvisor/service/spark_service/spark_fetcher.py +++ b/omniadvisor/src/omniadvisor/service/spark_service/spark_fetcher.py @@ -4,7 +4,6 @@ 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 +123,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 round(time_diff, OA_CONF.decimal_digits) + return time_diff diff --git a/omniadvisor/src/server/app/admin.py b/omniadvisor/src/server/app/admin.py index af7a6f4500e24f1f676555a04514ffdcf80ff845..191e9e955a913993e3159eb105925bc04ea18862 100644 --- a/omniadvisor/src/server/app/admin.py +++ b/omniadvisor/src/server/app/admin.py @@ -21,11 +21,15 @@ class TuningRecordAdmin(admin.ModelAdmin): @admin.register(DatabaseExamRecord) class ExamRecordAdmin(admin.ModelAdmin): - list_display = ('id', 'load', 'tuning_record', 'start_time', 'end_time', 'status', 'runtime', 'application_id', 'trace') + list_display = ('id', 'load', 'tuning_record', 'start_time', 'end_time', 'status', 'runtime_f', 'application_id', 'trace') list_filter = () # 增加对Load的显示 def load(self, model): return model.tuning_record.load load.short_description = 'Load' - load.admin_order_field = 'load' + + # 对Runtime的浮点数保留3位有效数字 + def runtime_f(self, model): + return round(model.runtime, 3) + runtime_f.short_description = 'Runtime'