Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

项目统计页面增加统计信息 #1629

Closed
ColdWaterLW opened this issue Jul 3, 2023 · 1 comment
Closed

项目统计页面增加统计信息 #1629

ColdWaterLW opened this issue Jul 3, 2023 · 1 comment
Assignees
Labels
api_upgraded feature need_update_doc 需要修改用户手册 publish-pre1 ui this issue is is related to the FE verified the issue all pr is verified
Milestone

Comments

@ColdWaterLW
Copy link
Collaborator

ColdWaterLW commented Jul 3, 2023

需求

用户可通过项目概览页面了解项目进展、项目风险,触达项目基本功能,包括以下9个面板:

  • 项目评分
  • SQL统计
  • 数据源
  • 工单
  • 工单潜在风向
  • 扫描任务
  • 扫描任务潜在风险
  • 成员
  • 审核流程

项目评分

当项目内既有工单又有扫描任务时

  • 项目分数=工单上线成功率2/5+扫描任务通过率3/5
  • 工单上线成功率=成功上线的工单数量/执行上线的工单总数
  • 扫描任务通过率=报告>60分的扫描任务数量/扫描任务报告总数
  • 当项目内仅有工单时
  • 项目分数=工单上线成功率
  • 工单上线成功率=成功上线的工单数量/执行上线的工单总数

当项目内仅有扫描任务时

  • 项目分数=扫描任务通过率
  • 扫描任务通过率=报告>60分的扫描任务数量/扫描任务报告总数

默认状态:

  • 默认值为100,产生数据后依据实际展示

SQL统计

统计维度

  • SQL总数:统计工单和扫描任务中审核的SQL总数
  • 风险SQL:统计工单和扫描任务中不规范SQL的总数(指触发了审核规则的SQL)
  • 风险率:风险SQL/SQL总数

默认状态

  • 初始时,显示SQL总数,初始值为0,产生SQL数据后,显示实际数据量;
  • 初始时,不显示风险SQL,产生风险SQL数据后,显示实际数据量;
  • 初始时,显示风险率,初始值为0%,产生SQL数据后,显示实际值;

数据源

统计维度:

  • 纵轴:提示已添加的数据源类型
  • 横轴:提示实例数量
  • 柱:提示实例健康状态

实例状态:

  • 风险实例:表示该数据源上,工单存在上线失败/被驳回的,扫描任务最新报告评分<60;
  • 备注tips,文案“当实例上存在工单上线失败/被驳回、扫描扫描任务最新报告评分<60时,该实例为风险实例”
  • 健康实例:表示该数据源上,工单没有上线失败/被驳回的,扫描任务最新报告评分>=60;

默认状态

  • 初始时,仅显示MySQL标签,数值为0;
  • 柱状图横轴默认宽度为五列,当添加的数据源类型>5时,缩小柱状图宽度,需要在面板中查看所有类型;

工单

范围:该项目下所有工单;
统计维度

  • 平台已创建的工单总数
  • 工单对应状态及数量

默认状态

  • 初始时,默认数值为零
  • 产生数据后,显示实际有的工单状态及数量;

工单潜在风险

范围:该项目下所有工单;
条件:统计被驳回/上线失败的工单;
排序:按工单状态发生时间倒序排序;

  • 列表字段:
  • 工单名称;
  • 工单状态;
  • 状态变更发生时间;
  • 工单创建人;

默认状态:

  • 初始时,列表无数据;产生数据后,显示实际有的工单风险信息;

扫描任务

范围:该项目下已创建所有扫描任务
统计维度:

  • 横轴:提示已添加的数据源类型
  • 纵轴:提示该类型数据源上创建的扫描任务数量
  • 柱:提示扫描任务类型及对应数量

默认状态

  • 初始时,仅显示MySQL类型,数值为0
  • 柱状图横轴默认宽度为五列,当数据源类型>5时,缩小柱状图宽度,需要在面板中查看所有类型;

实时扫描任务潜在风险

范围:该项目下所有扫描任务的扫描任务报告;
条件:统计评分<60的扫描任务报告;(目前评分方式参考https://github.com/actiontech/sqle/issues/284)
排序:按扫描任务生成时间倒序排序;
列表字段:

  • 扫描任务报告名称;
  • 扫描任务报告来源;
  • 触发该份扫描任务的时间;
  • 扫描任务中出现的风险SQL数量;

默认状态

  • 初始时,列表无数据;产生数据后,显示实际有的扫描任务风险信息;

成员

数据来源:统计项目中各角色类型对应的成员数量
统计维度

  • 横轴:提示项目中角色类型
  • 纵轴:提示项目中角色对应数量

默认状态

  • 初始时,仅显示默认的两个角色类型,成员数值为0,产生数据后,显示实际角色类型及对应成员数量;
  • 柱状图横轴默认宽度为五列,当成员类型>5时,缩小柱状图宽度,需要在面板中查看所有类型;

审批流程

数据来源:审核流程模板;
默认状态:初始时,显示默认审批流程模板节点信息,编辑数据后,显示编辑后的节点及信息
交互:点击面板左上角的“编辑审核流程模板”按钮,可直接跳转至审核流程编辑页面;

@ColdWaterLW ColdWaterLW added ui this issue is is related to the FE feature labels Jul 3, 2023
@ColdWaterLW ColdWaterLW added this to the v2.2307.0 milestone Jul 3, 2023
This was referenced Jul 4, 2023
@hasa1K hasa1K mentioned this issue Jul 6, 2023
@hasa1K
Copy link
Contributor

hasa1K commented Jul 7, 2023

功能对应的接口
项目评分: /v1/projects/{project_name}/statistic/project_score
SQL统计: /v1/projects/{project_name}/statistic/audited_sqls
数据源: /v1/projects/{project_name}/statistic/instance_health
工单: /v1/projects/{project_name}/statistic/workflow_status
工单潜在风向: /v1/projects/{project_name}/statistic/risk_workflow
扫描任务: /v1/projects/{project_name}/statistic/audit_plans
扫描任务潜在风险: /v1/projects/{project_name}/statistic/risk_audit_plans
成员: /v1/projects/{project_name}/statistic/role_user
审核流程: 复用之前的接口不用测试

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api_upgraded feature need_update_doc 需要修改用户手册 publish-pre1 ui this issue is is related to the FE verified the issue all pr is verified
Projects
None yet
Development

No branches or pull requests

3 participants