华为云用户手册

  • 响应示例 状态码: 200 OK { "limit" : 10, "offset" : 1, "count" : 1, "sim_cards" : [ { "sim_card_id" : "1234XXXXXX", "cid" : "13152562XXXXX", "online_carrier" : 1, "network_switch_policy_id" : 1111111111111111, "policy_name" : "默认策略无SDK版", "version" : 2 } ] } 状态码: 400 Bad Request { "error_code" : "GSL.00010004", "error_msg" : "参数异常" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00010003", "error_msg" : "系统繁忙,请稍后重试。" }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 limit Long 每页记录数 offset Long 页码 count Long 总数 sim_cards Array of SimDeviceMultiplyVO objects 三网卡数据集合 表3 SimDeviceMultiplyVO 参数 参数类型 描述 sim_card_id Long SIM卡标识 cid String 三网卡标识 online_carrier Integer 在线运营商标识,1:中国移动 2:中国电信 3:中国联通 network_switch_policy_id Long 网络切换策略id policy_name String 网络切换策略名称 version Integer 版本信息,1:SDK版,2:无SDK版 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 limit Long 每页记录数 offset Long 页码 count Long 记录总数 attributes Array of CmAttributeVO objects 自定义属性记录 表3 CmAttributeVO 参数 参数类型 描述 id Long 自定义属性标识 default_attr_name_cn String 默认属性名称中文 default_attr_name_en String 默认属性名称英文 cust_attr_name String 自定义属性名称 status Integer 自定义属性状态:0 未启用,1 已启用。 create_time String 创建时间 modify_time String 更新时间 状态码: 400 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • URI GET /v1/attributes 表1 Query参数 参数 是否必选 参数类型 描述 cust_attr_name 否 String 自定义属性名称 limit 否 Long 分页查询时每页显示的记录数,默认值为10,取值范围为10-500的整数 offset 否 Long 分页查询时的页码数,默认值为1,取值范围为1-1000000的整数 status 否 Integer 自定义属性状态:0 未启用,1 已启用。
  • 响应示例 状态码: 400 Bad Request 示例 1 { "error_code" : "GSL.00020004", "error_msg" : "参数异常" } 示例 2 { "error_code" : "GSL.00022001", "error_msg" : "标签名称不合法,请检查!" } 示例 3 { "error_code" : "GSL.00022002", "error_msg" : "标签名称已存在,请重新输入!" } 示例 4 { "error_code" : "GSL.00022003", "error_msg" : "登录用户最多可以创建10000个标签。" } 示例 5 { "error_code" : "GSL.00022004", "error_msg" : "登录用户没有标签的访问权限。" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00020003", "error_msg" : "系统繁忙,请稍后重试。" }
  • 响应参数 状态码: 200 表2 响应Body参数 参数 参数类型 描述 id Long 标签标识 tag_name String 标签名称 status Integer 标签状态,0未使用,1使用中。 状态码: 400 表3 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表4 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用 IAM 服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 表3 请求Body参数 参数 是否必选 参数类型 描述 cid 否 String 容器ID network_switch_policy_id 是 Long 网络切换策略标识
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 work_order_id Long 业务受理单号 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求示例 切换三网卡策略 POST https://{endpoint}/v1/sim-cards/{sim_card_id}/network-switch-policy/set { "network_switch_policy_id" : 1 } 使用cid切换三网卡策略 POST https://{endpoint}/v1/sim-cards/0/network-switch-policy/set { "network_switch_policy_id" : 1, "cid" : "888888888888888881" }
  • 响应示例 状态码: 200 OK { "work_order_id" : 1000001 } 状态码: 400 Parameter Invalid { "error_code" : "GSL.00010004", "error_msg" : "参数异常" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00010003", "error_msg" : "系统繁忙,请稍后重试。" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 表3 请求Body参数 参数 是否必选 参数类型 描述 action 是 Integer 操作类型(1:设置达量断网域值,2:取消达量断网域值) quota 否 String 阈值,只能是0,-1,正整数,-1表示无限制,0表示有上网流量产生就会立即断网,取消达量断网功能时可不传,单位MB iccid 否 String iccid,传入的sim_card_id为0,则根据iccid进行处理
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 work_order_id Long 业务受理单号 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求示例 创建SIM卡达量断网/取消达量断网的申请。例如:设置指定sim_card_id卡片的达量断网阈值为10 POST https://{endpoint}/v1/sim-cards/{sim_card_id}/exceed-cut-net { "action" : 1, "quota" : 10 } 创建SIM卡达量断网/取消达量断网的申请。例如:参数sim_card_id为最小值,设置卡标识iccid为“898600xxxxxxxxxx”的达量断网阈值为10。 POST https://{endpoint}/v1/sim-cards/{sim_card_id}/cut-net { "action" : 1, "quota" : 10, "iccid" : "898600xxxxxxxxxx" }
  • 响应示例 状态码: 200 OK { "work_order_id" : 1000001 } 状态码: 400 Parameter Invalid { "error_code" : "GSL.00010004", "error_msg" : "参数异常" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00010003", "error_msg" : "系统繁忙,请稍后重试。" }
  • 响应示例 状态码: 200 OK { "limit" : 10, "offset" : 1, "count" : 2, "work_order_details" : [ { "id" : 5367068399387648, "sim_type" : 3, "status" : 1, "cid" : "8806660527032540000", "sim_card_id" : "6666660527032540666", "create_time" : "2023-07-14T11:20:00.000+00:00", "finish_time" : "2023-07-14T11:20:00.000+00:00", "description" : null }, { "id" : 5367068399387649, "sim_type" : 3, "status" : 1, "cid" : "8806660527032540001", "sim_card_id" : "6666660527032540667", "create_time" : "2023-07-14T11:20:00.000+00:00", "finish_time" : "2023-07-14T11:20:00.000+00:00", "description" : null } ] } 状态码: 400 Parameter Invalid { "error_code" : "GSL.00010004", "error_msg" : "参数异常" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00010003", "error_msg" : "系统繁忙,请稍后重试。" }
  • URI GET /v1/work-orders/{work_order_id}/details 表1 路径参数 参数 是否必选 参数类型 描述 work_order_id 是 Long 业务受理ID 表2 Query参数 参数 是否必选 参数类型 描述 main_search_key 否 String 容器ID limit 否 Long 每页的记录数 offset 否 Long 页码,最小值是1,最大值为1000000。默认值是1 sim_type 否 Integer SIM卡类型: 1.vSIM 2.eSIM 3.实体卡 status 否 Integer 业务受理明细状态:1成功、2处理中、3失败
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 limit Long 每页的记录数 offset Long 页码,最小值是1,最大值为1000000。默认值是1. count Long 记录总数 work_order_details Array of WorkOrderDetailVo objects 业务受理明细列表 表4 WorkOrderDetailVo 参数 参数类型 描述 id Long 业务受理ID sim_type Integer SIM卡类型: 1.vSIM 2.eSIM 3.实体卡 status Integer 业务受理明细状态:1成功、2处理中、3失败 cid String 容器ID:不同类型卡含义如下 iccid(实体卡),eid(eSIM)cid(vSIM) sim_card_id Long SIM卡标识 create_time String 创建时间 finish_time String 完成时间 description String 描述 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息
  • 响应示例 状态码: 200 OK { "work_order_id" : 1000001 } 状态码: 400 Parameter Invalid { "error_code" : "GSL.00010004", "error_msg" : "参数异常" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00010003", "error_msg" : "系统繁忙,请稍后重试。" }
  • 请求示例 创建SIM卡机卡重绑申请。将SIM卡通过固定机卡重绑方式,绑定到IMEI为”84584xxxxxx“的设备上。 POST https://{endpoint}/v1/sim-cards/{sim_card_id}/bind-device { "bind_type" : 2, "imei" : "84584xxxxxx" } 创建SIM卡机卡重绑申请。通过普通机卡重绑方式,当参数sim_card_id为最小值时,将卡标识iccid为“898600xxxxxxxxxx”的SIM卡绑定到正在使用的设备上。 POST https://{endpoint}/v1/sim-cards/{sim_card_id}/bind-device { "bind_type" : 1, "iccid" : "898600xxxxxxxxxx" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务 获取IAM用户Token接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。简要的获取方法样例请参见 Token认证。 表3 请求Body参数 参数 是否必选 参数类型 描述 bind_type 是 Integer 绑定类型(1:普通机卡重绑,2:固定机卡重绑) imei 否 String 设备IMEI,84584xxxxxx iccid 否 String iccid,传入的sim_card_id为0,则根据iccid进行处理
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 work_order_id Long 业务受理单号 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 OK { "limit" : 10, "offset" : 1, "count" : 1, "pools" : [ { "id" : 10000000001, "pool_name" : "流量池名称", "price_plan_name" : "中国电信消费级阶梯流量池联接服务", "price_plan_id" : "520040", "effective_time" : "2022-08-26T16:00:00.000+00:00", "expired_time" : "2022-09-26T15:59:59.000+00:00", "billing_cycle" : "2022-09", "flow_used" : 102.59, "quantity" : 100, "pool_status" : 2, "modify_time" : "2022-09-22T18:57:15.000+00:00", "activated_sim_quantity" : 2, "inactive_sim_quantity" : 0, "disassembled_sim_quantity" : 98, "order_id" : 111111111, "order_ids" : "1000000" } ] } 状态码: 400 Bad Request { "error_code" : "GSL.00010004", "error_msg" : "参数异常" } 状态码: 403 Forbidden { "error_code" : "GSL.00011004", "error_msg" : "账期不合法,请检查!" } 状态码: 500 Internal Server Error { "error_code" : "GSL.00010003", "error_msg" : "系统繁忙,请稍后重试。" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 limit Long 每页记录数 offset Long 页码 count Long 当前查询条件的后向流量池总数 pools Array of BackPoolVO objects 当前页的后向流量池记录列表 表4 BackPoolVO 参数 参数类型 描述 id Long 流量池标识 pool_name String 流量池名称 price_plan_name String 套餐名称 price_plan_id String 套餐标识 effective_time String 生效时间 expired_time String 失效时间 billing_cycle String 账期 pool_status Integer 流量池状态: 2-在用,-1-已停用,-2已废弃 flow_used Double 已用流量(查询账期所在月份), 单位MB status_time String 状态变更时间 quantity Integer 流量池成员数量 modify_time String 更新时间 order_id Long 批次号 activated_sim_quantity Integer 已激活成员数量 inactive_sim_quantity Integer 未激活成员数量 disassembled_sim_quantity Integer 已拆机成员数量 order_ids String 组成流量池的批次号列表 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息 状态码: 403 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息 状态码: 500 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误信息
  • URI GET /v1/back-pools 表1 Query参数 参数 是否必选 参数类型 描述 pool_name 否 String 流量池名称 limit 否 Long 分页查询时每页显示的记录数,默认值为10,取值范围为10-500的整数 offset 否 Long 分页查询时的页码数,默认值为1,取值范围为1-1000000的整数 billing_cycle 否 String 账期,例如:2021-04 all_billing_cycle 否 Boolean 是否查询近六个月账期标识
  • 分析方法 连接数据库。 集群实例,请参见连接集群实例。 副本集实例,请参见连接副本集实例。 单节点实例,请参见连接单节点实例。 针对慢查询可以通过如下命令检查其执行计划。 explain() 例如: db.test.find({"data_id" : "ae4b5769-896f-465c-9fbd-3fd2f3357637"}).explain(); db.test.find({"data_id" : "775f57c2-b63e-45d7-b581-3822dba231b4"}).explain("executionStats"); 对于查询而言,因为覆盖查询不需要读取文档,而是直接从索引中返回结果,这样的查询非常高效,所以尽可能使用索引覆盖查询。如果explain()的输出显示indexOnly字段为真,则说明这个查询就被一个索引覆盖。 执行计划解析。 查看执行时间。 executionStats.executionStages.executionTimeMillisEstimate和executionStats.executionStages.inputStage. executionTimeMillisEstimate时间越短越好。 表1 参数说明 参数名称 描述 executionStats.executionTimeMillis 执行计划选择和执行的所有时间 executionStats.executionStages.executionTimeMillisEstimate 执行计划的执行完成时间 executionStats.executionStages.inputStage. executionTimeMillisEstimate 执行计划下的子阶段执行完成时间 查看扫描条数。 如表2中三个条目相同为最佳。 表2 参数说明 参数名称 描述 executionStats. nReturned 匹配查询条件的文档数 executionStats .totalKeysExamined 索引扫描条目数 executionStats .totalDocsExamined 文档扫描条目数 查看Stage状态。 性能较好的Stage状态组合如下: Fetch+IDHACK Fetch+ixscan, Limit+(Fetch+ixscan) PROJECTION+ixscan 表3 状态说明 状态名称 描述 COLLSCAN 全表扫描 SORT 内存中进行排序 IDHACK 根据_id进行查询 TEXT 全文索引 COUNTSCAN 未用索引计数 FETCH 索引扫描 LIMIT 使用Limit限制返回数 SUBPLA 未用索引的$or查询阶段 PROJECTION 使用索引计数 COUNT_SCAN 使用索引计数
  • 优化方案 对于无索引覆盖的查询,则需要根据查询条件创建对应索引。 对于点查可以创建hash索引。 对于多字段查询,单字段重复度较高的场景,创建复合索引。 对于范围查找,结果集有序的查询,创建升序或者降序索引。 对于复合索引,由于复合索引是前缀排序查询,所以查询条件的顺序要与索引字段的顺序一致。 对于分区集合(表)、大集合(超过10万记录),不要直接对大数据量的表使用模糊查询(即不能使用like)。这样会造成查询扫描的记录过多,建议先基于索引字段查询,过滤出较小的数据集后再使用模糊查询。 避免使用$not。MongoDB 并不会对缺失的数据进行索引,因此$not的查询条件将会要求在一个结果集中扫描所有记录。如果$not是唯一的查询条件,会对集合进行全表扫描。 用$and时把匹配最少结果的条件放在最前面,用$or时把匹配最多结果的条件放在最前面。 检查实例规格的性能基线,分析当前的业务需求是否达到上限,如已达当前实例性能瓶颈,请及时提升实例规格。
  • 账户说明 为了给文档数据库实例提供管理服务,您在创建数据库实例时,文档数据库服务会自动为实例创建根账户root(或admin)、监控账户monitor和备份账户backup,这些账户属于华为云实例管理平台,您不能操作或者使用。如果试图删掉、重命名、修改这些账户的密码和权限,会导致出错。 对于数据库管理员账户rwuser,以及您所创建的账户,允许修改账户的密码。 默认账户rwuser以及通过rwuser创建的账户,对系统库admin和config权限受限,无法进行正常操作。对自身创建的库表,具有充分的操作权限。 MongoDB的User一般是在某个固定的认证库下创建的。连接数据库时,需要通过参数--authenticationDatabase来明确指定对应的认证库。 DDS实例中,默认的rwuser用户的认证库,是admin。 账户密码连续5次输入错误,账户会被锁定10s。
  • 创建账户 选择admin数据库。 use admin 以user1账户为例,创建数据库账户。 db.createUser({user: "user1", pwd: "****", passwordDigestor:"server", roles:[{role: "root", db: "admin"}]}) “server”是指在服务端加密密码,为固定值,无需修改。 “****”是新密码,长度8~32位,且必须为英文大小写字母、数字以及特殊字符~@#%-_!*+=^?的组合。 “roles”限制了该账户所具有的权限。若指定一个空数组,表示该账户不具有任何权限。 查看创建结果。 显示如下信息,说明创建成功。 Successfully added user: { "user" : "user1", "passwordDigestor" : "server", "roles" : [ { "role" : "root", "db" : "admin" } ] }
  • 账户密码等级设置 文档数据库服务在控制台侧管理员密码的安全策略: 密码长度为8~32个字符。 密码必须为英文大小写字母、数字、特殊字符~!@#%^*-_=+?()$的组合。 文档数据库对在客户端新创的数据库用户,设置了密码安全策略: 密码长度为8~32个字符。 密码为英文大小写字母、数字、特殊字符~@#%-_!*+=^?的组合。 创建实例数据库以及设置密码时,安全起见,为用户提供了密码复杂度校验,如果不满足要求,请根据提示信息调整密码复杂度。
  • 使用须知 实例状态为正常、恢复检查中、转包周期中、修改安全组中时,允许切换主备节点。 主备节点切换可能会造成1分钟的服务闪断,切换前请确认客户端具备重连机制。 新添加的备节点,需要重新配置高可用连接地址,且为保证实例性能,会有12个小时的冻结期,冻结期内的备节点不参与主备切换。 实例必须处于运行状态才可进行主备切换。 主备同步的延迟时间过长时,主备切换耗时可能很久。因此,当主备同步的延迟时间超过300s时,控制台将不允许下发主备切换。关于副本集主备同步的延迟时间,请参见副本集中主备同步存在多长时间的延迟。
共100000条