网络探测
网络探测是基调听云 App 针对运维人员提供的故障根因定位工具,提供针对真实用户的网络探测服务,为运维人员了解真实用户的网络环境提供助力。基调听云App SDK 可以基于不同场景、不同维度执行特定任务,用以进行网络探测、CDN 选型对比等。
网络探测可实现的功能如下:
- 针对特定场景执行 TCP Ping 任务
- 针对特定场景执行 ICMP Ping 任务
- 针对特定场景执行 MTR 任务
- 针对特定场景执行 单文件下载 任务
- 自动采集Server IP
- 自动采集丢包率、网络延时数据
- 自动采集CNAME 用以获取CDN厂商信息
说明:SDK 无法获取域名请求的 Server IP ,现在通过网络探测的方式使其能够准确获取 Server 端的 IP地址,并同时采集域名的 CNAME 信息及性能指标数据。开启网络探测开关后,SDK会针对当前 1 分钟内应用请求过的域名执行三次 Ping 命令,用以获取Server IP 、CNAME及性能数据。
使用场景
如何判断网络错误是否由于客户端网络环境较差导致的
通过「TCP Ping/ICMP Ping」任务,可以在请求错误后针对错误域名执行一次 Ping 命令,获取当前网络延时和丢包率用以判断该错误是否是客户端网路环境较差导致。
如何了解客户端的网络链路质量
通过「MTR」任务可以及时了解更全面的网络诊断信息,运维人员可以通过它实时诊断和隔离真实用户出现的网络错误,并向运营商提供有关网络状态的报告。分析MTR数据数据时,需要关注两个指标:【丢包率】和【延迟】。如果在任何特定跳看到一定百分比的丢失,这可能表明该特定路由器存在问题。
如何进行CDN 选型对比
通过「单文件下载」任务,可以针对相同维度探测同一资源在不同 CDN厂商下的加速效果,并提供任务对比功能,能够详细的查看每个节点的性能数据情况。
功能说明
该功能受网络探测开关控制。在导航栏中选择全局设置,单击安全设置页签,进入安全设置页面,即可看到网络探测开关,网络探测功能默认开启,若关闭「网络探测」开关则无法执行任务。
在导航栏中依次选择远程调试>网络探测,进入拨测任务概览页面,该页面展示了所有的探测任务以及执行情况。
任务统计
任务总次数:购买的「网络探测」任务次数。
已执行次数:客户端已经执行任务的次数,包括TCP Ping执行次数、ICMP Ping执行次数、MTR执行次数和单文件下载执行次数。
剩余执行次数:购买的「网络探测」任务剩余执行次数。
任务列表
下方展示的是已创建的任务列表,支持根据任务状态过滤列表,根据执行域名/URL查询列表。列表中展示以下内容:
任务开始时间:当前任务开始下发的时间。
任务名称:新建任务时,添加的任务名称。
任务状态:包括四种。
执行中:当前任务正处于执行状态。
未完成:当前任务执行点次大于剩余任务点次。
已完成:当前任务已经全部执行完毕。
已暂停:任务详情页中可暂停当前任务。
完成情况:展示当前执行任务数和当前配置任务数。
执行条件:
立即执行:SDK收到下发任务后,立即针对「任务域名」执行一次拨测任务(单文件下载任务仅支持立即执行场景)。
请求结束后执行:SDK收到下发任务后,在应用访问「条件域名」请求结束后,执行一次「拨测任务」。
请求错误后执行:SDK收到下发任务后,在应用访问「条件域名」发生错误后,执行一次「拨测任务」。
执行域名/URL:
- Ping 任务(TCP Ping/ICMP Ping)为执行域名。
- MTR 任务为执行域名
- 单文件下载任务为 URL。
性能:
Ping 任务(TCP Ping/ICMP Ping):网络延时。
MTR 任务:网络延时、抖动、跃点个数
- 单文件下载任务:响应时间。
可用性:
Ping 任务(TCP Ping/ICMP Ping):丢包率。
MTR 任务:丢包率
- 单文件下载任务:1-(错误任务次数 / 任务总数)
操作:
- 复制:复制一条当前任务,需重新填写执行时间和执行次数。
新建任务
单击任务列表右上角的新建任务按钮,进入新建任务页面。配置说明如下:
任务名称:当前任务的名称。
任务类型:支持 Ping 任务(TCP)、ICMP Ping 任务、MTR 任务和Download任务。
Ping 任务(TCP Ping/ICMP Ping)
执行条件
立即执行
- 执行域名:自定义域名。
- 域名:配置当前任务需要测试的域名。
- 端口号:配置域名对应的端口号。
- 执行域名:自定义域名。
请求错误后执行
条件域名:当App触发配置「条件域名」后,SDK 会根据不同条件来执行任务。可用逗号分隔输入多个「条件域名」。
错误类型:可选择针对HTTP错误或网络错误执行拨测任务。单击图标,可更细粒度的选择错误类型,例如选择了400,只有应用发生400错误时,才会触发执行拨测任务。
执行域名
- 自定义域名:同「立即执行」场景。
- 自动识别:任务执行域名与条件域名相同,即应用请求条件域名后,针对该条件域名执行一次 Ping 任务。
请求结束后执行:同「请求错误后执行」场景。
ICMP Ping(TCP Ping不支持配置次数及包大小)
- Ping 次数(仅支持 ICMP Ping):支持配置任务 Ping 的次数,默认 3次,最小 3 次,最多 100 次。
- 包大小(仅支持 ICMP Ping):支持配置任务 Ping 包大小,默认 56 Byet,最小 16,最大 1024 。
MTR 任务
执行条件
- 立即执行
- 执行域名:自定义域名。
- 域名:配置当前任务需要测试的域名。
- 端口号:配置域名对应的端口号。
- 执行域名:自定义域名。
- 请求错误后执行
- 条件域名:当App触发配置「条件域名」后,SDK 会根据不同条件来执行任务。可用逗号分隔输入多个「条件域名」。
- 错误类型:可选择针对HTTP错误或网络错误执行拨测任务。单击图标,可更细粒度的选择错误类型,例如选择了400,只有应用发生400错误时,才会触发执行拨测任务。
- 执行域名
- 自定义域名:同「立即执行」场景。
- 自动识别:任务执行域名与条件域名相同,即应用请求条件域名后,针对该条件域名执行一次 Ping 任务。
- 请求结束后执行
- 同「请求错误后执行」场景。
- 立即执行
跃点ping次数
每次跃点执行 Ping 命令的次数,默认 10次,最小 3 次,最多 100 次。
注意:Ping 的次数越多,任务执行时间越长可能存在因为用户停止使用 App 导致任务未完成而丢数据的情况。
Download任务
- 执行条件:立即执行。
- 执行URL:配置当前任务需要测试的URL。
- 响应头:输入需要采集的响应头,如【User-Agent:1234】,请输入「User-Agent」。
执行时间:执行当前任务的开始时间和结束时间。
执行次数:配置当前任务的可执行次数,上限为所购买拨测套餐的剩余次数。
任务下发频率限制:
不限制:在规定「任务执行时间」周期内,服务端一次性下发所有任务「配额」,客户端满足「任务场景」后执行,如「任务执行时间」是13点~14点,「频率限制」为“不限制”,任务「配额」为300次,则服务器在13:01一次性下发300次任务。
每分钟 N 次:服务端根据客户指定频率下发「执行次数」,如「频率限制」为“每分钟5次”,任务「执行次数」为300次,则服务器每分钟下发5 次任务,一小时内供下发300次。
任务执行频率限制:可选择每隔15s、30s、60s执行一次拨测任务。
节点筛选:支持指定地域、运营商和接入方式维度下发任务(默认为所有维度)。
UserID:支持针对指定用户下发任务。
任务详情
单击列表中的任务名称,可进入任务详情页面,查看当前任务的详细信息,包括:节点筛选、任务配额、开始时间、结束时间、完成次数、任务状态、执行条件、完成进度及执行域名。如果由于各种原因需要暂停任务的执行,可单击右上角的暂停任务按钮。
任务趋势图
任务趋势图展示当前任务的数据采集的性能指标及可用性。每个图的右上角会显示整个统计周期内指标的平均值。
Ping任务(TCP Ping/ICMP Ping)趋势图:展示网络延时及丢包率。
MTR任务趋势图:展示网络延时、丢包率、跃点数和抖动。
单文件下载任务趋势图:展示网络时间、DNS时间、TCP时间及可用性。
维度分析
维度分析展示当前任务数据采集的所有维度数据 Top 15的指标数据,可以按照地域、运营商、接入方式任意组合。
任务详情
任务详情展示当前任务所有单样本数据,可以按照时间和维度筛选表格数据。
单击图标添加过滤维度,支持User ID、客户端IP、客户端地域、客户端运营商、服务端IP、服务端地域、服务端运营商、网络时间、DNS时间、TCP时间、响应头和错误详情。当选择移除选项时,可清空维度设置。
单击重置按钮,可将所有的时间和维度设置清空,恢复到默认状态。
单击右上角的图标,可将当前列表数据以Excel形式下载到本地,最多可下载10000条数据。
任务对比
在任务详情页面的右上角,可选择同类型的任务进行任务对比,任务执行数据、指标统计图和维度分析都会进行对比。至多添加三个任务,以便进行数据对比验证。