概述
移动解析 HTTPDNS 主要是通过 HTTP 协议代替 DNS 协议,为移动 APP 解决 LocalDNS 解析劫持的问题。
一般情况下,未接入 HTTPDNS SDK 的 APP 存在以下问题:
1. 域名资源的访问/下载成功率低(接入 HTTPDNS SDK 前:成功率大致在 93%~98%);
2. 难以定位业务异常是否发生在 DNS 解析阶段,也无法确定 APP 访问异常是否是解析劫持或者 LocalDNS 解析导致。
此时可以通过接入 HTTPDNS SDK,将域名资源的访问/下载成功率提升至 99% 以上,并且通过 SDK 的解析日志上报能力,可以统计解析劫持、域名解析成功率、缓存率等数据,更进一步协助业务排查定位优化 APP 可用性。
3. 解析监控页面的解析量不作为实际解析过程中的计费依据,解析监控内的解析量目前仅支持 SDK 上报,上报的解析量与开启时间、SDK 版本、网络环境有关。实际的解析量请前往 域名管理 页面查看或下载。
前提条件
1. 开通移动解析 HTTPDNS 服务,详情请参见 开通移动解析 HTTPDNS。
2. 服务开通后,您需在移动解析 HTTPDNS 控制台添加解析域名才可正常使用,详情请参见 添加域名。
3. 在移动解析 HTTPDNS 控制台申请接入 SDK,详情请参见 开通 SDK。
4. SDK 开通后,移动解析 HTTPDNS 将为您分配授权 ID、AES 和 DES 加密密钥及 HTTPS Token 等配置信息。您可前往 开发配置 页面查看,如下图所示:
5. APP 接入 HTTPDNS Android SDK V4.4.0、iOS SDK 1.7.0 或更高版本。
接入步骤
1. 启用 HTTPDNS 解析监控前,请参照 iOS SDK 接入、Android SDK 接入,使用 Android SDK V4.4.0、iOS SDK 1.7.0 或更高版本;
2. 在HTTPDNS控制台 解析监控 页面,单击“解析监控开关”开启解析日志上报,HTTPDNS 后台系统将会分析上报数据,将相关数据呈现出来。
说明:
目前解析监控正处于公测阶段,在公测结束后,该功能将正常计费,腾讯云将正式通知您何时启动计费,如您此前已经启用该项功能,即代表您同意相关协议,并且您可以通过开关控制该功能的启用。
指标说明
腾讯云移动解析 HTTPDNS 利用自有数据分析能力实现国内领先的 APP DNS 解析大数据分析平台, 解析监控页面功能如下:
具体指标说明如下:
总劫持量:统计 LocalDNS 与 HTTPDNS 返回结果完全不一致的数量;
减少劫持量:统计 HTTPDNS 请求正常返回(err_code = 0),且解析结果与 LocalDNS 完全不一致的数量;
SDK 缓存率:命中缓存解析量/客户总解析量;
地区视图:各个国家、省份及地区 HTTPDNS 的解析量、解析成功率、平均解析时延;
ISP 视图:国内各个运营商的 HTTPDNS 的解析量、解析成功率、平均解析时延;
被劫持TOP10 域名:HTTPDNS 解析结果与 LocalDNS 解析结果完全不一致的 TOP10 域名、解析量;
TOP10 异常域名监控:HTTPDNS API 请求报错(err_code!=0)的解析量,一般为解析超时/网络不可达等用户网络异常情况;
错误码监控:HTTPDNS SDK 上报以下错误码以及数量统计。
错误码(err_code) | 含义 | 错误码(err_code) | 含义 |
1 | 解析请求未连接成功 | 2 | 解析超时 |
1001 | 创建socket连接失败 | 21001 | 发送请求失败 |
1004 | 调整通道非阻塞模式失败 | 3 | 没有解析数据 |
1005 | 注册channel通道失败 | 31001 | 返回失败,需要重连 |
1006 | 创造套接字地址失败 | 31002 | 返回异常失败 |
1007 | 加密请求内容失败 | 41001 | 返回内容解密失败 |
1008 | 创造请求包体失败 | 41002 | 返回内容解析失败 |
11001 | 连接失败 | 0 | 解析成功 |
DNS 会话数据统计:以一个 APP 周期作为一个会话进行统计 UV、WAU、MAU 数据。