匿名用法统计信息
TeamCity CLI 会将匿名用法统计信息发送至 JetBrains,以便了解哪些命令更受关注、何处出现故障,以及后续应投入精力的方向。 我们发送的每个值都被限制为固定枚举值或数值统计——CLI 从不传输自由格式字符串、标识符或任何你输入的内容。
收集内容
每次 CLI 调用一次 (“session”事件):
CLI 版本、TeamCity 服务器版本(例如,
2026.1},{)和服务器类型 –cloud或on_prem。操作系统(
darwin、linux、windows、freebsd、其他)和 CPU 架构(amd64、arm64、386、其他)。CLI 运行所在的 CI 系统(如有):
github_actions、gitlab、jenkins、circleci、buildkite、azure、travis、teamCity、其他或none。调用 CLI 的 AI 编码代理(如有):
claude_code、junie、cursor、gemini_cli、codex、goose、augment、github_copilot、amp、windsurf、opencode、trae、roo、其他或none。认证方式:
keyring、env、build_properties、guest或none——从不包含令牌本身。工作目录是否有
teamcity.tomllinked-project 文件(布尔值)。一个随机生成的 session ID,在 30 分钟无操作后自动轮换。 该 ID 会在离开本地计算机前先进行本地哈希处理。
每次命令一次 (“command”事件):
你运行的命令,会映射到固定枚举:
run.list、pipeline.validate、agent.term,等等。 不在枚举内的都归类为其他。是否使用了
--json。命令是否以 git 上下文运行(
--local-changes、--branch=@this或--revision=@head之一)。是否使用
teamcity.toml链接文件解析项目或作业。你设置的总标志数量(仅统计数量——不包含具体值)。
退出码(
0、1、2)、耗时(毫秒),以及命令失败时的错误类别:auth、permission、not_found、network、validation、read_only、internal或none。
针对特定命令组 (构建运行、代理 session、流水线操作、技能安装/更新、REST API 调用、登录、链接)我们会记录一些额外的行为布尔值和计数——比如: is_personal 用于 run start、 error_count 用于 pipeline validate、 had_timeout 用于 agent term。 完整且精确的架构已提交于 internal/analytics/scheme.go。
未收集内容
密钥、密码、SSH 密钥,或保存在 keyring 或
config.yml的任何信息。你的 TeamCity 服务器 URL、主机名或 IP 地址。 URL 仅作为
~/.config/tc/.analytics/server-info.json的本地缓存密钥使用,以便 CLI 记录其上次访问的服务器版本;URL 本身不会离开你的计算机。仓库内容、构建日志、构建号或你传递给命令的实参。
项目、作业、构建、代理、流水线、VCS 根、池或连接的名称或 ID。
用户名、邮箱、分支名称、文件路径或提交 SHA。
我们收集的信息无法用于识别你、你的组织、服务器或仓库。 每个值在离开本地计算机前都会经过已发布的枚举或数值验证器,CLI 无法意外泄露字符串。
选择退出的方法
可根据你的工作流选择——检测顺序如下:
Environment variable(环境变量) (一次性或每个 session):
DO_NOT_TRACK 遵循其他 CLI 工具采用的 行业约定。 任意变量优先于配置文件。
配置 (持久):
稍后重新启用:
数据流向
通过 JetBrains FUS(功能用法统计)管道——IntelliJ 系 IDE 也使用同一管道。 保留与处理详情: JetBrains 产品数据收集条款。