鸿蒙中网络诊断:Network分析
上面的图很熟悉吧 Network 面板的表格列出了所有请求,每一列都提供了关键信息:
-
Name: 请求的资源名称和路径。
-
Status: HTTP 状态码(诊断核心)。
200
成功,304
未修改(缓存),404
找不到,500
服务器错误等。 -
Type: 请求类型。
document
(HTML),stylesheet
(CSS),script
(JS),font
,img
,xhr
(Ajax请求),fetch
等。 -
Initiator: 发起请求的来源。是谁发起了这个请求?可能是
Parser
(HTML解析器),Script
(某个JS文件),或其他。 -
Size: 资源大小。包括“资源本身大小”和“响应头大小”。如果显示
(disk cache)
,则表示该资源直接从磁盘缓存加载,未产生网络请求。 -
Time: 总耗时。从请求开始到接收完响应数据的总时间。
-
Waterfall: 瀑布流。这是最强大的分析工具,以图形化方式展示了请求生命周期的各个阶段
但是鸿蒙中有吗? 鸿蒙中是不是怎么查看NetWork
肯定是有的
DevEco Profiler提供Network模板,帮助用户在应用运行过程中查看http协议栈网络信息和网络流量信息,http协议栈包括请求分段耗时以及请求具体内容,方便对网络问题进行调优。请求耗时按照以下五种阶段进行划分:DNS 解析、TCP连接、TLS连接、请求等待、接收响应,分别展示在各阶段的耗时,可以针对性的优化时延问题。同时,详情信息将展示每个请求中携带的信息,包含request、response侧及其携带的header、body、cookie信息,方便网络问题定位
说明
- 当前Network模板任务仅支持对Network kit接口中request 类型接口进行录制和调优。
- 由于隐私安全政策,已上架应用市场的应用不支持录制Network分析模板
使用方法
第一步编辑器的最下面找到Profiler
第二步找到需要查看的应用BundleName
第三步找到Network就可以了
查看网络流量消耗信息
点击Network Traffic泳道,可在下方数据区查看录制过程中发生的网络流量消耗情况。Summary区域可以查看按照网络接口(Network Interfaces)维度统计每个类型的流量消耗,展示信息包含平均下行流量、下行总流量、下行数据包数、平均上行流量、上行总流量、上行数据包数。
Details区域将展示按时间戳排序的周期上报的网络数据,每个网络数据包含上报时间戳、持续时间、下行流量、下行流量包数、网络数据类型、上行流量、上行流量包数。
查看网络请求各阶段耗时
- 创建Network模板任务并录制相关数据,操作方法可参考性能问题定位:深度录制,或在会话区选择Open File,导入历史数据。
- 录制结束等待处理数据完成。点击Network Request泳道,可在下方数据区查看录制过程中发生的网络请求数量变化。Summary区域可查看按照域名(Domain)维度统计展示网络请求耗时,展示信息包含Domain、线程名称、数量、平均耗时、最大耗时、DNS解析/TCP连接/TLS连接/等待响应/接收数据平均耗时、DNS解析/TCP连接/TLS连接/等待响应/接收数据最大耗时。
- 选择任意Domain,Details区域将展示请求该Domain的所有网络请求耗时,展示信息包含请求ID、线程名称、请求url、重定向url、IP 地址、总耗时、DNS 解析耗时、TCP连接耗时、TLS连接耗时、请求等待耗时、接收响应耗时、请求类型、状态码、使用的版本。
- 选择Details中某条数据,泳道区域将以虚线框选展示其耗时方块。同时,右侧More区域展示该请求的Request Headers、Response Headers、Response Body。
- 定位到可能造成网络卡顿的网络请求,点选其耗时方块,可以看见该请求各阶段耗时。
分析启动过程网络问题
DevEco Profiler的Network分析任务,提供了启动过程网络问题分析能力,协助开发者解决启动过程的网络问题。
针对调测应用的当前运行情况,DevEco Profiler对其做如下处理:
- 如选择的是已安装但未启动的应用,在启动该分析任务时,会自动拉起应用,进行数据录制,结束录制后可正常进入解析阶段。
- 如选择的是正在运行的应用,在启动该分析任务时,会先将应用关停,再自动拉起应用,进行数据录制,结束录制后可正常进入解析阶段。
具体操作方法为:在任务列表中单击Network任务后的按钮。
在分析结束后,呈现出的数据类型以及相应的处理方法,与非启动过程的分析相同。
你学废了吗 可以看看官网班级