Skip to content

错误码

【注意】本章只列出能在 Go 代码或响应体文案中溯源的错误码与文案。报告中已确证「Go 代码里不存在」的错误码集中放在 6.11 说明来源,不要当作可用错误码使用。

通用 / 框架级

错误码含义触发条件
200成功
-1业务失败;同时是登录失败码通用业务失败、gRPC 失败、登录失败
0成功码;也是登录签发 token 自身失败时的登录失败码gtoken 成功响应;极少走的登录失败分支
51GoFrame CodeInternalErrorerrors.New("xxx") 无错误码时由统一响应包装兜底
500HTTP 内部错误HTTP 驱动拦截通道增删改、驱动删除失败
401未登录token 缺失或失效
30000000DASS3 接口异常response.Err 调用
30000002内部错误同上
30000004gRPC 客户端初始化失败,请检查网络连接同上
30000006连接无效同上
30000008输出测点添加失败同上
30000010输出测点更新失败同上
30000012测点不存在同上
30000014测点不合法同上
30000016设置云平台配置信息失败同上
30000018云平台已宕机同上
30000020密码字段解密失败同上

【注意】30000000 系列码步长为 2,只在 response.Err(code, err) 被调用时出现,实际使用面很窄。

连接管理

错误码 / 文案含义触发条件
EmptyDeviceCode设备码为空按设备码取主机地址时传空
EmptyCloudKeyCloudKey 为空保存云配置
EmptyHost主机地址为空同上
EmptyUserId用户 ID 为空上下文无当前用户
NonexistentData数据不存在连接查不到、更新影响 0 行、删除影响 0 行
ConnAlreadyExist连接已存在同用户下 host+port 重复
OccupiedDeviceCode设备码已被使用云边一体设置时设备码已被占用
InvalidIPv4Address无效的 IPv4 地址主机地址合法性校验失败
OccupiedNickName别名已被使用同用户下别名重复
InvalidNickName别名包含特殊字符含星号、问号、小于号、大于号、竖线、冒号、双引号、正斜杠、反斜杠
当前机器[%v]设备码[%v]已由[%v]使用设备码冲突同用户下设备码已绑其它主机
设备码[%v]已由用户[%v]绑定至[%v],请使用其他设备码进行绑定跨用户设备码冲突云边一体
您所操作边缘智能终端管理平台版本[%v]过低,请升级软件重试网关版本过低版本校验失败
设备已离线,请稍后再试设备离线gRPC 连接失败
连接被关闭,请重新添加该设备的连接连接关闭同上
连接超时gRPC 超时(拨号超时 10 秒)同上

用户 / 登录

错误码 / 文案含义触发条件
账号或密码不能为空空值登录账号或密码为空
账号或密码错误认证失败用户不存在或密码哈希不匹配(不区分,防枚举)
账号[%v]已被锁定,请于[%v]后重试账号级锁定失败次数达到服务端阈值
当前设备已被锁定,请于[%v]后重试IP 级锁定同 IP 失败次数达到服务端阈值
该账户为系统特殊账户,禁止注册账号在黑名单注册时账号命中服务端黑名单
账号不能为空 / 密码不能为空 / 两次密码不相同注册校验注册接口
账号已存在重复注册注册时已存在同名账号
用户不存在更新用户 / 改密时找不到用户更新接口
当天注册账户数量已达上限,请于[%v]后重试注册上限当日注册成功次数达上限
注册请求频繁,请稍后重试注册频控60 秒窗口内注册请求过多

采集服务

错误码 / 文案含义触发条件
参数不能为空app服务命令 / 删除服务收到空数组
请求服务名不能为空app 缺失服务存在性校验
服务不存在服务不存在上 / 下行状态查询不到
服务不存在<svc>历史回补服务不存在历史数据回补
通道不存在通道不存在下行状态查询找不到通道
时间不正确 开始时间不能大于结束时间begin 大于 end历史数据回补
参数为空参数为空泛用
服务未启动gRPC Unavailable后端服务不可达
创建服务驱动配置不能为空para 为空创建服务
ServiceNameExcessMaxLimit服务名超 11 字节【存疑】该串来自设备端 gRPC,本仓库无此常量(待真机确认)

采集通道

错误码 / 文案含义触发条件
默认通道不可操作HTTP 驱动服务不可操作通道创建 / 更新 / 删除通道
APP:BOX:CHANNEL:CREATE创建拦截 / 失败标识同上或 gRPC 建通道失败
APP:BOX:CHANNEL:UPDATE编辑拦截标识同上
APP:BOX:CHANNEL:DELETE删除拦截标识同上
不允许创建DEC通道通道名为 dec创建通道
驱动名字不能为空app通道命令
管道为空channels通道命令
错误的 token 或已经过期批量任务 token 失效批量进度查询
找不到使用驱动 %s,名为 %s 的服务批量建通道时服务不存在批量建通道
不合法的通道文件: driver sheet 存在错误模板 driver sheet 有问题导入通道模板
不合法的通道文件: channel sheet 存在错误模板 channel sheet 有问题导入通道模板
通道名不得为空通道名为空导入通道模板
通道名不能为 driver 或 channel保留名导入通道模板
点表(Sheet)名不能为 driver 或 channel保留名导入通道模板
驱动 config.json 存在错误key-value 未成对导入通道模板【存疑】精确触发行未定位(待真机确认)
通道已存在通道重复【存疑】常量已定义但未见引用,实际应由设备端返回(待真机确认)
28101403通道重复码【存疑】同上,常量已定义未引用(待真机确认)
28101404DEC 通道码【存疑】常量已定义未引用,但被备份恢复流程使用(待真机确认)

采集测点 / 上传测点

错误码 / 文案含义触发条件
比例系数(FK) float类型,不能为0, 默认为1比例系数非法FK 解析失败或为 0
比例系数不得为 0比例系数为 0文件导入
偏移量(FB) float类型,默认为0偏移量非法FB 解析失败
量程上限(TV) float类型,默认为100量程上限非法TV 解析失败
量程下限(BV) float类型,默认为0量程下限非法BV 解析失败
tv <= bv 不合法量程上限不大于下限TV 小于等于 BV
分辨率不能为负整数分辨率非法FQ 解析失败或为负
控制属性不能为空ae 为空JSON 新增测点
控制属性(AE) string类型,他是一个枚举类型,只能是 读、写、读写控制属性非法文件导入
int类型 , 必须不小于1024测点 ID 非法文件导入(服务端实际只拒绝负数)
验证点名长度不能超过60点名超长文件导入
点名 string类型, 支持中文、支持数字、字母和特殊字符-、#、_、:、@ ,长度不大于60字节点名含非法字符(如 .文件导入
验证别名长度不能超过256别名超长文件导入
验证量纲长度不能超过12量纲超长文件导入
验证描述长度不能超过512描述超长文件导入
验证特征字长度不能超过16特征字超长文件导入
验证地址信息长度不能超过4096地址信息超长文件导入与上传点新增/更新
压缩类型 string类型…只能是死区、线性、无压缩压缩类型非法文件导入
显示格式 uint类型,默认为2,必须是正整数显示格式非法文件导入
死区 float类型,默认为0.2 非负数死区非法文件导入
死区类型 string类型…只能是PCT、ENG死区类型非法文件导入
点的类型 string类型…只能是模拟量、开关量、短整数、长整数、浮点数、长整型、文本、二进制点的类型非法文件导入
invalid filter RT: %s查询筛选的点的类型非法测点查询
invalid filter DS: %s查询筛选的数据状态非法测点查询
点表文件不包含任何工作簿导入空 xlsx测点 / 上传点导入
数据不合法报警相关参数非法报警规则接口
ID不能为空上传点导入缺 ID上传点导入
同步属性不能为空上传点导入缺同步属性上传点导入
量程上限不能为空 / 量程下限不能为空 / 比例系数不能为空 / 偏移量不能为空上传点导入缺字段上传点导入
同步属性未知 / 同步属性不能为空同步属性非法 / 为空【存疑】校验常量在控制器中未见引用(待真机确认)
测点已存在计算点重复计算点
计算点的id不能修改计算点 ID 被改计算点
不存在该点类型 / 不存在该计算类型计算点类型非法计算点
计算公式长度超过限制4096计算公式超长计算点

应用包管理

控制器内联文案

错误码 / 文案含义触发条件
驱动不存在动态表单查不到驱动驱动动态表单
系统服务不存在查不到系统服务表单驱动动态表单(type=system
应用下载信息获取失败在线应用信息获取失败在线应用
未找到应用列表接口应用市场 URL 未配置应用市场
访问应用列表接口失败应用市场请求失败应用市场
当前设备上已存在该版本[%v]驱动[%v],无需下载或导入版本相同驱动包上传
驱动不支持跨大版本升(降)级,请删除已有驱动后重试主版本不同驱动包上传
版本验证失败版本号格式无法解析主版本驱动包上传
平台验证失败包平台与设备平台不符驱动包上传
升级包版本不兼容,请检查后重试版本校验失败驱动包上传
上传包类型验证失败,请上传系统升级包类型校验失败驱动包上传
类型不存在Version.initype 不是 das / upload / system驱动包上传
请选择需要上传的文件file 为空驱动包上传

备份恢复

【注意】以下错误码来自设计层定义,未在服务端代码常量中确证,使用时请以真机返回为准。

错误码含义触发条件
200成功
-1失败(通用)设备忙 / 任务不存在
400请求参数错误analyze 文件非 .xlsx 或为空;execute policies 非法
403禁止execute 缺 confirm:true;下载错误文件名不在白名单
404不存在plan token 过期或跨设备;progress token 无效
409冲突(设备忙)同设备已有进行中的备份 / 恢复 / 分析任务
410token 过期execute 的 recover_token 已过期
422解析 / 业务校验失败备份文件损坏、版本过高、设备不存在
28101104文件格式不合法(v1 恢复)v1 恢复 Excel 打开失败
28101404默认通道 DEC 校验失败(v1 恢复)v1 恢复通道检测

数据镜像(设计层错误码,当前未使用)

错误码场景现状
21001参数校验失败全仓库无命中;控制器统一返回 -1 + 字符串
21002名称已存在同上
21003IP / 端口格式错误同上
21004目标资源不存在同上
21005链接检测失败同上
21006导入文件格式错误同上
21007应用配置失败同上
21008并发操作被拒同上(并发互斥锁在控制器未实现)

响应恒成功的接口(无错误码,必须回查)

以下接口的设备端调用结果被完全丢弃,响应恒为成功,不能以响应判断成败

接口现象
POST /config/das/channel/cmdrestart 分支)err.code 恒为 0、msg 恒为空
POST /config/upoint/insert恒返回成功
POST /config/upoint/update恒返回成功
DELETE /config/upoint/delete恒返回成功
DELETE /config/upoint/clear恒返回成功(msgCLEAR_SUCCESS
POST /config/point/upload恒返回 {"err":{"code":200,"msg":"ok"}}
POST /config/point/erase【存疑】是否同属此列未确证(待真机确认)

统一规避方式:写操作完成后,用下列只读接口回查真实状态。

写操作回查接口
通道命令 / 通道增删POST /config/das/channel/list/{dc}GET /config/das/tree/{dc}
上传点增删改 / 批量生成上传点POST /config/upoint/list/{dc}
服务增删改 / 命令GET /config/das/tree/{dc}GET /config/das/state/{dc}
测点导入 / 增删改POST /config/point/select/{dc}

报告中已确证「代码里不存在」的错误码(仅说明来源)

以下错误码在现有文档中出现过,但在 DASSConsole 的 Go 代码中不存在,本指南不将其列为可用错误码:

错误码族现有文档中的来源实际情况
SVC_xxx / CHL_xxx服务管理、通道管理接口文档全仓库检索无命中,属设计层编号,未被使用
21001 ~ 21008数据镜像接口文档代码中不存在,控制器统一返回 -1 + 字符串
2000140001 ~ 50701应用管理接口文档代码中不存在,由设备端 gRPC 服务返回,控制器只做字符串透传

【注意】真正要处理的错误码是 200-15140150030000000 系列,以及各接口的错误文案。判成败建议同时看 codemsg