遥测
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:客户端类型,可能是
desktop或oss。
如果在 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:堆栈哈希值,用于将相似异常归组,便于分析。