From bbec11318f98b3e72a5a0b6405a9564c862d87ff Mon Sep 17 00:00:00 2001 From: qz_cx Date: Tue, 30 Sep 2025 11:38:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=94=99=E8=AF=AF=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=90=8E=E7=AB=AF=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- appStore/errorList/__init__.py | 7 +++++ appStore/errorList/admin.py | 11 +++++++ appStore/errorList/apps.py | 13 ++++++++ appStore/errorList/filters.py | 28 +++++++++++++++++ appStore/errorList/migrations/__init__.py | 0 appStore/errorList/models.py | 37 +++++++++++++++++++++++ appStore/errorList/serializers.py | 20 ++++++++++++ appStore/errorList/tests.py | 10 ++++++ kytuningProject/settings.py | 1 + 9 files changed, 127 insertions(+) create mode 100644 appStore/errorList/__init__.py create mode 100644 appStore/errorList/admin.py create mode 100644 appStore/errorList/apps.py create mode 100644 appStore/errorList/filters.py create mode 100644 appStore/errorList/migrations/__init__.py create mode 100644 appStore/errorList/models.py create mode 100644 appStore/errorList/serializers.py create mode 100644 appStore/errorList/tests.py diff --git a/appStore/errorList/__init__.py b/appStore/errorList/__init__.py new file mode 100644 index 0000000..965d7e1 --- /dev/null +++ b/appStore/errorList/__init__.py @@ -0,0 +1,7 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" diff --git a/appStore/errorList/admin.py b/appStore/errorList/admin.py new file mode 100644 index 0000000..49b739b --- /dev/null +++ b/appStore/errorList/admin.py @@ -0,0 +1,11 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" + +from django.contrib import admin + +# Register your models here. diff --git a/appStore/errorList/apps.py b/appStore/errorList/apps.py new file mode 100644 index 0000000..8646453 --- /dev/null +++ b/appStore/errorList/apps.py @@ -0,0 +1,13 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" +from django.apps import AppConfig + + +class ErrorListConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'appStore.errorList' diff --git a/appStore/errorList/filters.py b/appStore/errorList/filters.py new file mode 100644 index 0000000..9f638b8 --- /dev/null +++ b/appStore/errorList/filters.py @@ -0,0 +1,28 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" +import django_filters +from django_filters import rest_framework as filters + +from appStore.errorList.models import KytuningError + + +class ErrorFilter(filters.FilterSet): + """ + 错误排查 + """ + mix_id = django_filters.NumberFilter(field_name='id', lookup_expr='gt') + error_type = django_filters.CharFilter(field_name='error_type', lookup_expr='icontains') + test_type = django_filters.CharFilter(field_name='test_type', lookup_expr='icontains') + error_description = django_filters.CharFilter(field_name='error_description', lookup_expr='icontains') + error_log_excerpt = django_filters.CharFilter(field_name='error_log_excerpt', lookup_expr='icontains') + class Meta: + model = KytuningError + fields = ['mix_id',] # 允许精准查询的字段 + search_fields = ['error_type','test_type','error_description','error_log_excerpt'] # 允许模糊查询的字段 + + diff --git a/appStore/errorList/migrations/__init__.py b/appStore/errorList/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/appStore/errorList/models.py b/appStore/errorList/models.py new file mode 100644 index 0000000..d154036 --- /dev/null +++ b/appStore/errorList/models.py @@ -0,0 +1,37 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" +from django.db import models + +# Create your models here. +class KytuningError(models.Model): + """错误收集列表""" + ErrorType = ( + ("编译类型错误", "编译类型错误"), + ("运行类型错误", "运行类型错误"), + ) + TestType = ( + ("stream", "stream"), + ("lmbench", "lmbench"), + ("unixbench", "unixbench"), + ("fio", "fio"), + ("iozone", "iozone"), + ("jvm2008", "jvm2008"), + ("cpu2006", "cpu2006"), + ("cpu2017", "cpu2017"), + ("other", "other"), + ) + error_type = models.CharField(choices=ErrorType,max_length=50, verbose_name='错误类型') + user_name = models.CharField(max_length=250, verbose_name='操作人员') + test_type = models.CharField(choices=TestType,max_length=50, verbose_name='测试类型') + error_description = models.CharField(max_length=250, verbose_name='错误描述') + error_log_excerpt = models.CharField(max_length=250, verbose_name='错误日志节选') + error_log_path = models.CharField(max_length=250, verbose_name='错误日志路径') + solution = models.CharField(max_length=50, verbose_name='解决方案') + + class Meta: + db_table = 'KytuningError' \ No newline at end of file diff --git a/appStore/errorList/serializers.py b/appStore/errorList/serializers.py new file mode 100644 index 0000000..c69cfcc --- /dev/null +++ b/appStore/errorList/serializers.py @@ -0,0 +1,20 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" +from rest_framework import serializers +from appStore.errorList.models import KytuningError + + +class ErroirListSerializer(serializers.ModelSerializer): + """ + errorList数据序列化 + """ + + class Meta: + model = KytuningError + fields = '__all__' + diff --git a/appStore/errorList/tests.py b/appStore/errorList/tests.py new file mode 100644 index 0000000..20c762d --- /dev/null +++ b/appStore/errorList/tests.py @@ -0,0 +1,10 @@ +""" + * Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved. + * PilotGo-plugin licensed under the Mulan Permissive Software License, Version 2. + * See LICENSE file for more details. + * Author: wangqingzheng + * Date: Fri Feb 23 11:19:26 2024 +0800 +""" +from django.test import TestCase + +# Create your tests here. diff --git a/kytuningProject/settings.py b/kytuningProject/settings.py index 449d06a..5a92fd6 100644 --- a/kytuningProject/settings.py +++ b/kytuningProject/settings.py @@ -64,6 +64,7 @@ INSTALLED_APPS = [ 'appStore.testCase.apps.TestcaseConfig', 'appStore.testMachine.apps.TestmachineConfig', 'appStore.userConfig.apps.UserconfigConfig', + 'appStore.errorList.apps.ErrorListConfig', ] AUTH_USER_MODEL = 'users.UserProfile' MIDDLEWARE = [ -- Gitee