跳到主要内容

遥测

SkillFlaw 使用匿名遥测来收集功能使用与性能统计信息。 SkillFlaw 团队会基于这些实际使用数据,识别最常用的功能以及最需要改进的部分,从而优先投入开发资源到最有价值的方向上。

隐私

SkillFlaw 团队尊重你的隐私,并致力于保护你的数据。

SkillFlaw 遥测不会采集个人身份信息或敏感数据。 所有遥测数据都会被匿名化,并且仅用于改进 SkillFlaw。

退出遥测

如果你不希望发送遥测数据,请在启动 SkillFlaw 前,在 SkillFlaw 环境变量 中设置 DO_NOT_TRACK=True。这样就会关闭遥测采集。

SkillFlaw 会收集哪些数据

SkillFlaw 遥测会采集流程运行、运行环境以及组件使用情况。

运行事件

每次流程执行时都会发送该事件。

  • IsWebhook:表示本次操作是否由 webhook 触发。
  • Seconds:操作耗时(秒),用于分析性能。
  • Success:布尔值,表示本次执行是否成功,用于识别潜在错误或异常。
  • ErrorMessage:如果执行失败,则包含错误信息,便于排障与改进。

关闭事件

该事件用于记录应用生命周期与运行时长。

  • TimeRunning:应用在关闭前持续运行的总时长,有助于理解应用生命周期并优化可用性。

版本事件

该事件会在遥测服务启动时发送一次。

  • Version:当前使用的 SkillFlaw 版本,用于跟踪功能采用情况与兼容性。
  • Platform:宿主机操作系统,用于了解最常见的平台分布。
  • Python:使用的 Python 版本,用于兼容性维护。
  • Arch:系统架构,例如 x86 或 ARM,用于硬件优化与测试优先级判断。
  • AutoLogin:是否启用了自动登录功能,用于反映用户偏好设置。
  • CacheType:当前使用的缓存类型,会影响性能与效率。
  • BackendOnly:SkillFlaw 是否以仅后端模式运行。
  • Desktop:SkillFlaw 是否以桌面模式(SkillFlaw Desktop)运行,用于识别不同部署类型的使用情况。

邮箱事件

该事件用于跟踪 SkillFlaw Desktop 中注册过的邮箱地址,会在以下两种场景触发:

  • 每次通过 POST /api/v2/registration/ 接口注册新邮箱地址时。

  • 在邮箱地址已经注册之后,每次启动 SkillFlaw Desktop 时。

    第一次启动 SkillFlaw Desktop 并注册邮箱时,该事件会在调用 POST /api/v2/registration/ 时上报。

该事件包含以下信息:

  • Email:已注册邮箱,用于统计注册情况并了解 SkillFlaw Desktop 用户群体。
  • ClientType:客户端类型,可能是 desktoposs

如果在 SkillFlaw Desktop 中通过 DO_NOT_TRACK 关闭了遥测,你仍然会被提示输入邮箱,但该邮箱只会保存在本地 SkillFlaw 数据库中,不会被上报。

Playground 事件

该事件用于监控 Playground 环境中的性能与使用模式。

  • Seconds:Playground 执行耗时(秒),用于分析测试或实验阶段的性能。
  • ComponentCount:Playground 中使用的组件数量,用于理解复杂度与使用方式。
  • Success:Playground 操作是否成功,用于识别实验性功能的稳定性。

组件事件

每个组件执行时都会发送该事件。

  • Name:组件名称,用于识别哪些组件最常用,或更容易出问题。
  • Seconds:组件执行耗时。
  • Success:组件是否成功执行,用于质量控制。
  • ErrorMessage:发生错误时的详细信息,对调试与改进很关键。

异常事件

当 SkillFlaw 生命周期钩子或全局异常处理器捕获到未处理异常时,会发送该事件。

  • Type:异常类名,例如 ValueError
  • Message:抛出的异常消息。
  • Context:当可用时,提供异常发生位置的上下文信息,如 route、component 或 operation 详情。
  • StackTraceHash:堆栈哈希值,用于将相似异常归组,便于分析。