不期速成 日拱一卒 不期速成 日拱一卒
首页
技术
测试
分类
标签
归档
关于
首页
技术
测试
分类
标签
归档
关于
  • 测试样本

  • 测试框架

    • AITLibra智能算法效果测试框架
    • AITLibraManager埋点服务设计
      • 1. 背景
      • 2. 需求分析与数据库设计
      • 3. API服务设计
      • 4. AITLibra框架与API的通信设计
      • 5. 设计DashBoard
  • AITLibra-智能算法效果测试提效降本的实践
  • NLU(自然语言理解)智能算法测试从1到N的改进
  • 智能算法测试平台基础设施
  • AIT
  • 测试框架
2021-05-28

AITLibraManager埋点服务设计

# 1. 背景

《AITLibra算法效果测试框架》发布使用后,我们要关注其价值和收益,是否给算法效果测试自动化带来了效率提升。

各位工程师有没有使用呢?又是如何使用的?使用情况怎么样?使用AITLibra框架创建了哪些项目?执行了哪些任务?哪些工程师在哪些设备上用什么版本的AITLibra进行了测试?有太多问号,但不能挨个去问各位同学,也不能让大家手动去填表记录,应该让数据多跑路,工程师少动手。

因此我们要进行“埋点”。埋点的专业术语应该是“事件追踪”,但又不仅仅是“事件”而已。

本着能现成就不改造,能改造就不创造的原则,首先我们去开源社区找轮子。

看到了很多项目,但大多数都是适配Web项目前端埋点,或者移动端埋点的系统,且系统庞大复杂,在我们这里有些杀鸡用牛刀。

还有一种方案就是Prometheus生态系统的PushGateway,利用prometheus_client的SDK,主动push数据给PushGateway,然后由Prometheus从PushGateway服务pull数据,最后用Grafana设计DashBoard,完成整个需求。一切看起来都很美好,但这里有一个最重要的我问题,AITLibra属于单次运行,但其统计数据却是持续且持久的,需要把每个单次任务的数据都整合在一起分析;Promethues的设计逻辑是持续在线的时序统计,一旦服务重启或停止运行后,统计将从零开始,这使得我们不得不放弃Prometheus这个好轮子。

# 2. 需求分析与数据库设计

首先要考虑清楚,我们需要统计哪些数据:

  • 谁在用

    • 姓名
    • IP
    • 操作系统
    • ATILibra的版本
  • 在干什么

    • 项目信息
    • 任务信息
    • 配置文件内容
    • 插件代码内容
  • 结果怎么样

    • 各个pipeline的事件状态统计
    • 任务成功/失败数
    • 项目成功/失败数
    • 统计指标数据json文件

想清楚这些后,我们就可以设计数据库表了,我们选则最熟悉的MySQL数据库:

image-20210528101055106

# 3. API服务设计

AITLibra框架运行在各台服务器或PC上,作为服务端的AITLibraMangaer不知道客户端会在哪些设备上运行,最简单直接方式就是客户端主动push数据到服务端。

设计几个API来完成数据push的功能:

  • 用户信息注册:
    • 支持通过json文件批量注册用户信息
    • 支持单个用户信息注册
  • 用户信息验证
    • 校验是否用户已注册
  • 获取最新的AITLibra版本信息(后台服务定时自动从PyPiManger更新版本信息)
  • 上报设备信息(关联用户)
  • 上报项目信息
  • 上报任务信息(关联项目、用户)
  • 上报事件信息(关联任务)
  • 上附件数据(关联事件)

# 4. AITLibra框架与API的通信设计

AITLibra框架按照设计划分了多个pipeline,每个pipeline内又有子步骤,这每个步骤我们称之为“事件”,这是我们需要收集的用户使用状态的最细粒度。

按照整个运行逻辑,我们设计时序图如下:

智能化算法自动化开发标准指导-WithManager

# 5. 设计DashBoard

通过在AITLibra框架内埋点,只要AITLibra被使用,AITLibraManager就会源源不断的收到上报的数据。

现在需要一个DashBoard来实时查看当前的数据统计信息,我们选用Grafana,其支持MySQL数据源。

关于Grafana的部署和详细介绍,见《Prometheus+Grafana打造性能测试监控服务》 (opens new window)

我们主要使用Grafana的Table和Stat控件,直接编写SQL语句即可,看效果

image-20210528163857085

在线查看: AITLibraManagerDashBoard (opens new window)

#智能算法测试
上次更新: 7/26/2026, 4:44:44 PM
AITLibra智能算法效果测试框架
AITLibra-智能算法效果测试提效降本的实践

← AITLibra智能算法效果测试框架 AITLibra-智能算法效果测试提效降本的实践→

最近更新
01
测试覆盖度量全景图
11-30
02
Prism测试覆盖度量
11-30
03
AITDBClient使用文档
11-15
更多文章>
Theme by Vdoing | Copyright © 2021-2026 toddlerya | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式