遥测上报

自 v2.14 起,MCDR 开始收集并上报有关 MCDR 和运行环境的一些匿名遥测数据

这些数据有助于 MCDR 开发者分析使用场景,并为未来对 MCDR 功能改进的开发提供数据支撑

遥测上报默认开启

它会上报什么

遥测数据包含以下信息:

  • 一个唯一的 UUID v4 标识符,代表当前运行的 MCDR 实例。MCDR 每次启动都会生成一个新的 UUID。MCDR 不会持久化该 UUID

  • MCDR 和 Python 的版本

  • 系统相关信息,包括:

    • 系统类型,如 Windows、Linux

    • 系统版本,如 Windows 10、Linux 5.14.0

    • 系统架构,如 AMD64

  • MCDR 相关信息,包括:

    • MCDR 运行时长

    • MCDR 运行环境相关消息,比如是否在容器 / virtualenv 里运行

    • 插件数量,按照插件类型归类

    • 当前正在使用的服务端处理器的 名字

收集的遥测数据不会包含任何个人信息,也不会用于销售或广告的目的

遥测数据样例:

{
  "schema_version": 1,
  "reporter": "MCDReforged",
  "uuid": "14bb1768-aa97-4f11-874e-deafd0c09cb0",
  "platform": {
    "mcdr_version": "2.14.0",
    "mcdr_version_pypi": "2.14.0",
    "python_version": "3.12.8",
    "python_implementation": "CPython",
    "system_type": "Windows",
    "system_release": "10",
    "system_architecture": "AMD64"
  },
  "data": {
    "uptime": 10902.91710782051,
    "container_environment": "none",
    "python_package_isolation": "venv",
    "launched_from_source": false,
    "plugin_type_counts": {
      "builtin": 2,
      "solo": 18,
      "packed": 11,
      "directory": 0,
      "linked_directory": 2
    },
    "server_handler_name": "vanilla_handler"
  }
}

你随时可以检查遥测数据上报的实现代码,以验证 MCDR 都上报了什么东西:TelemetryReporter

会在什么时候上报

MCDR 将每小时收集并上报一次遥测数据

怎样关掉它

如果你看遥测上报不爽,或者你就是不想 MCDR 上报任何东西,你可以随时通过以下任一方法禁用它

通过配置项

你可以把配置中 telemetry 的值设置为 false 来禁用遥测上报

通过环境变量

如果你希望运行前 / 初始化 MCDR 时就禁用遥测,你可以在启动 MCDR 前将环境变量 MCDREFORGED_TELEMETRY_DISABLED 设置为 true

export MCDREFORGED_TELEMETRY_DISABLED=true

当此环境变量被设置为 true 时,配置选项 telemetry 的默认值也会变为 false