获取帮助
DeviceChain 尚未达到 1.0,开发过程公开进行。如果某个功能无法正常工作,或某篇文档没有提供你需要的信息,请告诉我们。尽早提交一份不够完善的报告,比迟迟提交一份精心整理的报告更有价值,因为接口仍然可以根据大家遇到的问题调整。
去哪里反馈
| 反馈内容 | 反馈渠道 |
|---|---|
| 问题,或让你困惑的内容 | Discussions |
| 想法或功能请求 | Discussions → Ideas |
| 功能出现故障 | 提交 Issue |
| 安全漏洞 | 发送邮件至 admin@devicechain.io,请不要公开提交 |
无需确定问题一定是缺陷才反馈。如果你无法判断观察到的行为是否符合设计,这种不明确之处本身就值得报告。
如何提交有用的 Issue
Issue 表单会询问我们原本需要再向你索取的信息。以下两项最能节省时间:
- 使用的版本。 运行
dcctl version,或者提供你安装的 Chart 或镜像标签。 - 在哪一步停住。 不必讲述整个过程:指出最后一个成功的步骤和第一个失败的步骤。对于始终没有到达的数据,请依次说明设备是否连接、事件是否被记录,以及控制台是否显示了任何内容。
安装问题尤其需要环境信息。初次启动是我们最难复现的环节,因为我们只有自己的机器。请提供:
- Kubernetes 发行版和版本
- 主机操作系统和 CPU 架构
kubectl get pods -A的输出
dcctl preflight 本身就能发现许多环境问题。即使检查通过,也请粘贴其输出。
粘贴前先隐藏敏感信息
日志和命令输出可能包含令牌、连接字符串和内部主机名。 Issue 和 Discussions 都是公开的。
遥测数据缺失的三个常见原因
大多数遥测数据缺失的报告都源于以下三个原因。先排除它们,通常比等待回复更快。
-
设备令牌未注册,或凭据被拒绝。 未分配并不是问题:未分配设备的事件仍会被存储并投影,只是没有可归属的客户、区域或资产。平台不认识的令牌,或被拒绝的凭据,才是问题。事件解析时,传输层已经返回了响应,因此拒绝结果不会传回发送方。事件会被送入死信队列,并在 device-management 中记录为警告日志。
-
配置文件没有声明这项测量,而且它的值不是数字。 测量值以数字形式存储,因此:
- 未声明、但值为数字的测量会原样存储,不产生任何警告。
- 未声明且值不是数字的测量会被丢弃,仅丢弃这一条,并在 device-management 日志中记录警告。
- 已声明的测量,如果值不符合声明的类型,后果更严重:整个事件会被送入死信队列。
在配置文件中用正确的数据类型声明该指标,可以解决后两种情况。
-
你查看的租户与设备上报的租户不同。
可以期待什么
DeviceChain 由一个小团队维护,因此回复可能需要几天。Issue 暂时没有得到答复,并不意味着被忽略。包含版本和明确失败步骤的报告通常能最快解决,因为维护者无需先往返询问就能开始排查。