遥测

EMQ 通过遥测收集有关 EMQX 开源版的使用情况的信息,这种功能旨在为我们提供有关用户、社区的综合信息,以及对 EMQX 开源版使用方式的了解。与我们共享这些指标可以帮助我们更好地了解您如何使用我们的产品,并可以持续地帮助我们改进产品。

需要向您说明的是,遥测数据不能也不会用于识别或关联到您本人。即这些统计信息不包含可以标识个体的数据,如服务器型号、硬件编号、IP 地址。同时,统计数据数据永远不会与其他任何人共享。

禁用遥测

遥测默认是启用的,有些人可能对收集这样的数据感到不舒服,你在启动前、运行中都可以通过最简单的方式禁用它。

启动前禁用

您可以打开配置文件 etc/emqx.conf,通过添加以下配置项永久性的禁用遥测:

  1. telemetry {
  2. enable = false
  3. }

或者启动时通过环境变量在本次启动中禁用遥测:

  1. export EMQX_TELEMETRY__ENABLE=false && ./bin/emqx start

运行中禁用

在 Dashboard 点击页面顶部功能区的 设置 按钮,关闭启动遥测选项即可永久性禁用遥测。

指标收集

我们收集的遥测数据主要包括:

  1. 集群相关硬件信息(仅包括硬件规格,不包含硬件唯一编码)
  2. 集群相关拓扑信息
  3. 集群相关软件版本信息
  4. 集群配置信息(仅包括配置项,不包含配置值)
  5. 集群节点的组件使用信息
  6. 集群节点的插件使用情况
  7. 集群使用指标信息

遥测通过加密 HTTP 请求将数据上报至 https://telemetry.emqx.io/api/telemetry遥测 - 图1 (opens new window),数据将安全存储在我们的私有环境中,不会暴露在任何共有网络环境或者云端。

遥测数据收集代码请参考 apps/emqx_modules/src/emqx_telemetry.erl遥测 - 图2 (opens new window),如果您有任何疑问请通过 Issues遥测 - 图3 (opens new window)联系我们:

传输的数据示例如下:

  1. {
  2. "emqx_version": "5.0.9",
  3. "license": {
  4. "edition": "opensource"
  5. },
  6. "os_name": "macOS",
  7. "os_version": "12.5",
  8. "otp_version": "24",
  9. "up_time": 181903,
  10. "uuid": "5EAAF3C2-6186-11ED-AD7C-D5AAB80CED2E",
  11. "cluster_uuid": "5EAAF818-6186-11ED-AC1D-3DFDC18ED1BB",
  12. "nodes_uuid": [],
  13. "active_plugins": [],
  14. "num_clients": 0,
  15. "messages_received": 0,
  16. "messages_sent": 0,
  17. "build_info": {
  18. "wordsize": 64,
  19. "relform": "tgz",
  20. "os": "macos11",
  21. "erlang": "24.2.1-1",
  22. "elixir": "none",
  23. "arch": "x86_64-apple-darwin20.6.0"
  24. },
  25. "vm_specs": {
  26. "num_cpus": 8,
  27. "total_memory": 8589934592
  28. },
  29. "mqtt_runtime_insights": {
  30. "num_topics": 0,
  31. "messages_sent_rate": 0,
  32. "messages_received_rate": 0
  33. },
  34. "advanced_mqtt_features": {
  35. "topic_rewrite": 0,
  36. "retained": 3,
  37. "delayed": 0,
  38. "auto_subscribe": 0
  39. },
  40. "authn_authz": {
  41. "authz": [
  42. "file"
  43. ],
  44. "authn_listener": {},
  45. "authn": []
  46. },
  47. "gateway": {},
  48. "rule_engine": {
  49. "num_rules": 1
  50. },
  51. "bridge": {
  52. "num_data_bridges": 1,
  53. "data_bridge": {
  54. "webhook": {
  55. "num_linked_by_rules": 1,
  56. "num": 1
  57. }
  58. }
  59. },
  60. "exhook": {
  61. "servers": [],
  62. "num_servers": 0
  63. }
  64. }