如何监控Android应用的网络性能

本文介绍了如何在Android应用中实现网络性能监控,包括数据采集和数据上报的详细方案。针对网络请求的性能和异常,采集了基础数据、性能数据、异常信息和事件序列数据,通过字节码插桩技术在OkHttp、HttpUrlConnection和HttpClient等网络库中实现监控。数据上报则考虑了缓存和资源占用,以确保日志完整性和低业务影响。
摘要由CSDN通过智能技术生成

背景

移动互联网时代,移动端极大部分业务都需要通过App和Server之间的数据交互来实现,所以大部分App提供的业务功能都需要使用网络请求。如果因为网络请求慢或者请求失败,导致用户无法顺畅的使用业务功能,会对用户体验造成极大影响。

此外,EMAS对外提供的APM之前并不包括网络监控功能,而网络性能监控作为移动端性能监控的重要组成部分,我们急需补全这部分能力来完善APM的产品功能,进一步满足客户的需求。

“阿里巴巴应用研发平台 EMAS 是国内领先的云原生应用研发平台(移动App、H5应用、小程序、Web应用等),基于广泛的云原生技术(Backend as a Service、Serverless、DevOps、低代码等),致力于为企业、开发者提供一站式的应用研发管理服务,涵盖开发、测试、运维、运营等应用全生命周期。”

问题与挑战

网络性能监控在端上主要包括数据采集和数据上报。我们希望能尽可能采集有用的信息来帮助客户发现、定位和解决网络性能问题。我们面临如下问题和挑战:

•首先要解决的是网络请求过程中,哪些阶段会影响请求性能,如果发现网络性能有问题,需要采集哪些数据来帮助用户去定位和解决问题。

• android上主流的网络框架有okhttp2、okhttp3、okhttp4、volley、retrofit、httpclient和系统提供的httpurlconnection等,在我们不确定客户使用哪个网络库的哪个版本的情况下,如何尽量采集有用的信息。

• 网络请求各个阶段的数据采集都是离散的,如何保证单个请求各个离散的监控数据能够串联起来,不和其他请求的监控数据混在一起。

• 由于弱网环境下的网络请求日志往往更有价值,需要

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值