CN112882891A - 一种客户端Web访问链路监控的方法 - Google Patents

一种客户端Web访问链路监控的方法 Download PDF

Info

Publication number
CN112882891A
CN112882891A CN202110160029.6A CN202110160029A CN112882891A CN 112882891 A CN112882891 A CN 112882891A CN 202110160029 A CN202110160029 A CN 202110160029A CN 112882891 A CN112882891 A CN 112882891A
Authority
CN
China
Prior art keywords
data
client
monitoring
reporting
loading
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110160029.6A
Other languages
English (en)
Other versions
CN112882891B (zh
Inventor
林启明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Dewu Information Group Co.,Ltd.
Original Assignee
Shanghai Shizhuang Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Shizhuang Information Technology Co ltd filed Critical Shanghai Shizhuang Information Technology Co ltd
Priority to CN202110160029.6A priority Critical patent/CN112882891B/zh
Publication of CN112882891A publication Critical patent/CN112882891A/zh
Application granted granted Critical
Publication of CN112882891B publication Critical patent/CN112882891B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • G06F11/3072Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种客户端Web访问链路监控的方法,所述方法包括如下步骤:服务端获取客户端上报的监控数据;所述服务端对所述监控数据进行数据整理;所述服务端监控到异常数据时进行告警处理。本发明通过对于移动端Web容器从初始化创建到网页加载结束,这一整个过程进行埋点全记录,搜集客户端在网页访问过程中的全链路性能参数,再由客户端统一数据收集整合上报,实现对整个加载流程的性能监控。通过完整、实时的全链路数据监控,可以得知该流程中存在的所有缺陷不足,帮助相关开发人员有针对性地进行性能优化及问题改进。

Description

一种客户端Web访问链路监控的方法
技术领域
本发明涉及互联网技术领域,特别涉及一种客户端Web访问链路监控的方法。
背景技术
随着互联网技术的不断发展,网络应用规模不断扩大,互联网逐渐融入社会的各个领域,伴随着政治、经济、教育、医疗、文化等各领域的发展,新兴的移动互联网服务平台不断涌现,在越来越复杂的平台架构下,定位系统性能缺陷也越来越困难。目前关于行业内客户端html网页加载性能监控,大致有如下三种应对方式:
1、不监控,其弊端是网页加载性能无从考证,不利于APP开发人员发现性能改进方向,对产品上线存在一定风险。
2、接入第三方性能监控平台全链路监控,根据集成第三方SDK,来得知具体性能情况。接入第三方监控平台,虽然有一定便利性,但是对移动端Web容器初始化、主文档加载结果、以及登录态同步等性能指标上无法采集,也无法自定义告警通知,存在一定弊端,缺失业务自定义扩展性。
3、搭建内部监控,其弊端是无法成为一个完整体系,往往存在数据丢失严重的问题。
发明内容
本发明针对现有技术存在的上述问题,提供了一种客户端Web访问链路监控的方法,能够实现客户端网页访问过程中整个加载流程的实时性能监控及异常告警。
为实现上述目的,本发明提供了一种客户端Web访问链路监控的方法,包括如下步骤:
服务端获取客户端上报的监控数据;
所述服务端对所述监控数据进行数据整理;
所述服务端监控到异常数据时进行告警处理。
优选地,所述客户端上报的监控数据包括:
APP端在Web容器初始化时进行埋点,获得的埋点数据;以及
Web端通过html植入脚本的方式,获得的性能数据。
优选地,所述埋点数据的获得,包括如下步骤:
在链接加载过程中,对html主文档加载的生命周期进行埋点,获得一个链接在整个生命周期的加载过程中的全部埋点数据,包括但不限于加载起点时间、加载结束时间、加载是否成功;
在html网页需要同步原生APP内的登录态,通过方法调用通知APP端登录并获取登录态,同时收集对应的埋点数据;
搜集其他埋点数据,包括但不限于:资源离线后请求命中数据、黑名单链接访问历史数据。
优选地,所述性能数据的获得,包括如下步骤:
从html网页中获取子资源加载性能的各个时间点,包括但不限于请求网络开始时间点、获取网络资源第一个字节的时间点、获取网络资源最后一个字节的时间点、白屏时间、页面首屏时间;
通过引入axios库,拦截网络请求和响应,从而获取每个网络请求的请求结果数据。
优选地,所述客户端上报包括:
APP端将埋点数据导入本地数据库并触发上报;以及
Web端将获取到的性能数据投递到客户端,由客户端导入本地数据库并上报。
优选地,所述客户端上报包括:
通过数据聚合器聚合所述埋点数据和所述性能数据;
将聚合后的监控数据导入所述本地数据库;
触发数据上报。
优选地,所述服务端获取客户端上报的监控数据包括如下步骤:
客户端上报本地数据库中所有数据状态为非上传中的数据;
在本地数据库中将所述非上传中的数据状态修改为上传中;
判断数据上报是否成功,当所述数据上报成功时,从所述本地数据库中删除状态为上传中的数据,当所述数据上报失败时,启动重试机制,即重新进行数据上报。
优选地,所述启动重试机制前,会对该条数据的重试次数进行判断,当所述重试次数超过3次时,将本地数据库中该条数据恢复为初始状态。
优选地,所述服务端获取客户端上报的监控数据前先判断网络是否可用,当网络不可用时不对本地数据库中的数据进行处理。
优选地,在所述服务端获取客户端上报的监控数据前,对监控数据进行加密处理。
本发明的有益效果为:
一种客户端Web访问链路监控的方法,通过对于移动端Web容器从初始化创建到网页加载结束,这一整个过程进行埋点全记录,搜集客户端在网页访问过程中的全链路性能参数,保证了数据的完整性、实时性,通过实时完整的数据分析,根据异常数据预警规则对客户端网页访问过程中对整个加载流程进行性能监控,异常数据预警规则和通知方式可以由开发人员根据实际需要进行设定,更加方便灵活。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中上所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一种客户端Web访问链路监控的方法的流程示意图;
图2为本发明实施例一种客户端Web访问链路监控的方法的数据处理流程示意图;
图3为本发明实施例一种客户端Web访问链路监控的方法的拓扑结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供了一种客户端Web访问链路监控的方法,通过在客户端APP访问Web网页时,采集web网页加载过程中的重要性能参数,实现对整个加载流程的性能监控。
下面将结合具体实施例对本发明请求保护的一种客户端Web访问链路监控的方法作进一步地详细阐述。
请参阅图1-图3,本发明实施例提供一种客户端Web访问链路监控的方法,包括如下步骤:
服务端获取客户端上报的监控数据;需要说明的是,这里的监控数据包括移动端Web容器,从初始化创建到网页加载结束,这一整个过程进行埋点全记录,之后再由客户端统一数据收集整合上报,解决了数据属性不全和数据丢失的问题。
所述服务端对所述监控数据进行数据整理;需要说明的是,这里的数据整理包括数据清洗和数据分类,整理后的数据用于数据的实时展示和数据的监控告警。
所述服务端监控到异常数据时进行告警处理。需要说明的是,本发明根据全链路性能指标监控,设立监控标准,可以实现自定义告警。例如,可以设定当某个html链接在30分钟内加载失败次数超过20000次时,通过邮件、短信等方式通知相关人员,异常告警规则可以由开发人员根据实际需要进行设定。
优选地,所述客户端上报的监控数据包括:
APP端在Web容器初始化时进行埋点,获得的埋点数据;以及
Web端通过html植入脚本的方式,获得的性能数据。
优选地,所述埋点数据的获得,包括如下步骤:
在链接加载过程中,对html主文档加载的生命周期进行埋点,获得一个链接在整个生命周期的加载过程中的全部埋点数据,包括但不限于加载起点时间、加载结束时间、加载是否成功;具体的,在链接加载过程中,对html主文档加载的生命周期进行埋点,获得加载起点时间、加载结束时间、加载是否成功等埋点数据,完成一个链接在整个生命周期的加载,保证了数据的完整性。
在html网页需要同步原生APP内的登录态,通过方法调用通知APP端登录并获取登录态,同时收集对应的埋点数据;
搜集其他埋点数据,包括但不限于:资源离线后请求命中数据、黑名单链接访问历史数据。
优选地,所述性能数据的获得,包括如下步骤:
从html网页中获取子资源加载性能的各个时间点,包括但不限于请求网络开始时间点、获取网络资源第一个字节的时间点、获取网络资源最后一个字节的时间点、白屏时间、页面首屏时间;具体的,可以通过对html网页中的window.performance(窗口性能函数)属性,获取子资源加载性能的各个时间点,如请求网络开始时间、获取网络资源第一个字节的时间点、获取网络资源最后一个字节的时间点;白屏时间跟页面首屏时间,可以根据性能函数计算得到,或者可以自定义算式策略用于特殊业务场景;等等。上报时机主要是满足时间点或者满足数据量,最大程度保证实时性和性能的平衡。
通过引入axios库,拦截网络请求和响应,从而获取每个网络请求的请求结果数据。需要说明的是,引入axios库主要是用于向后台发起请求的,还有在请求中做更多的可控功能。
在本发明其中的一个实施例中,客户端在网页链接加载过程中,客户端上报数据格式如下表1:
表1客户端上报数据格式
Figure BDA0002936144490000061
优选地,所述客户端上报包括:
APP端将埋点数据导入本地数据库并触发上报;以及
Web端将获取到的性能数据投递到客户端,由客户端导入本地数据库并上报。
参阅图2,优选地,所述客户端上报包括:
通过数据聚合器聚合所述埋点数据和所述性能数据;
将聚合后的监控数据导入所述本地数据库;
触发数据上报。
本发明提供的数据上报机制保证了数据的准确性和完整性,保证了性能监控的及时性。
优选地,所述服务端获取客户端上报的监控数据包括如下步骤:
客户端上报本地数据库中所有数据状态为非上传中的数据;
在本地数据库中将所述非上传中的数据状态修改为上传中;
判断数据上报是否成功,当所述数据上报成功时,从所述本地数据库中删除状态为上传中的数据,当所述数据上报失败时,启动重试机制,即重新进行数据上报。
优选地,所述启动重试机制前,会对该条数据的重试次数进行判断,当所述重试次数超过3次时,将本地数据库中该条数据恢复为初始状态。具体的,当上报失败后,会做重试操作,重试失败后,会由下一个触发时机再批上报,确保了数据不会丢失,保证了数据的完整性。
优选地,所述服务端获取客户端上报的监控数据前先判断网络是否可用,当网络不可用时不对本地数据库中的数据进行处理。
优选地,在所述服务端获取客户端上报的监控数据前,对监控数据进行加密处理。
请参阅图3,当数据源投递到后台,由于数据量庞大,且要求数据具有一定的实时性,所以在本发明其中一个实施例中,采用Kafka平台实现APP端埋点数据及web端性能数据的收集,Kafka平台高吞吐、低延迟的特性,保证了数据的实时性和准确性,所述提供数据源的客户端还可以为Native端或H5端。
本申请提出一种客户端Web访问链路监控的方法,能够在客户端APP访问Web网页时,采集web网页加载过程中的重要性能参数,如web容器初始化、链接加载结果、登录态同步、html主文档与子文档资源加载情况以及ajax请求情况。本发明针对客户端原生程式与html方面的加载性能,进行实时埋点与上报。服务端收到来自客户端的埋点数据后,进行数据清洗整理,设立监控标准,以此标准来进行告警,实现了客户端Web访问的全链路监控,能够准确的进行性能数据采集、分析及预警,从而实现对整个加载流程的性能监控。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等同物界定。

Claims (10)

1.一种客户端Web访问链路监控的方法,其特征在于,所述方法包括如下步骤:
服务端获取客户端上报的监控数据;
所述服务端对所述监控数据进行数据整理;
所述服务端监控到异常数据时进行告警处理。
2.根据权利要求1所述的一种客户端Web访问链路监控的方法,其特征在于,所述客户端上报的监控数据包括:
APP端在Web容器初始化时进行埋点,获得的埋点数据;以及
Web端通过html植入脚本的方式,获得的性能数据。
3.根据权利要求2所述的一种客户端Web访问链路监控的方法,其特征在于,所述埋点数据的获得,包括如下步骤:
在链接加载过程中,对html主文档加载的生命周期进行埋点,获得一个链接在整个生命周期的加载过程中的全部埋点数据,包括但不限于加载起点时间、加载结束时间、加载是否成功;
在html网页需要同步原生APP内的登录态,通过方法调用通知APP端登录并获取登录态,同时收集对应的埋点数据;
搜集其他埋点数据,包括但不限于:资源离线后请求命中数据、黑名单链接访问历史数据。
4.根据权利要求2所述的一种客户端Web访问链路监控的方法,其特征在于,所述性能数据的获得,包括如下步骤:
从html网页中获取子资源加载性能的各个时间点,包括但不限于请求网络开始时间点、获取网络资源第一个字节的时间点、获取网络资源最后一个字节的时间点、白屏时间、页面首屏时间;
通过引入axios库,拦截网络请求和响应,从而获取每个网络请求的请求结果数据。
5.根据权利要求2所述的一种客户端Web访问链路监控的方法,其特征在于,所述客户端上报包括:
APP端将埋点数据导入本地数据库并触发上报;以及
Web端将获取到的性能数据投递到客户端,由客户端导入本地数据库并上报。
6.根据权利要求2所述的一种客户端Web访问链路监控的方法,其特征在于,所述客户端上报包括:
通过数据聚合器聚合所述埋点数据和所述性能数据;
将聚合后的监控数据导入所述本地数据库;
触发数据上报。
7.根据权利要求5或6任一项权利要求所述的一种客户端Web访问链路监控的方法,其特征在于,所述服务端获取客户端上报的监控数据包括如下步骤:
客户端上报本地数据库中所有数据状态为非上传中的数据;
在本地数据库中将所述非上传中的数据状态修改为上传中;
判断数据上报是否成功,当所述数据上报成功时,从所述本地数据库中删除状态为上传中的数据,当所述数据上报失败时,启动重试机制,即重新进行数据上报。
8.根据权利要求7所述的一种客户端Web访问链路监控的方法,其特征在于,所述启动重试机制前,会对该条数据的重试次数进行判断,当所述重试次数超过3次时,将本地数据库中该条数据恢复为初始状态。
9.根据权利要求1所述的一种客户端Web访问链路监控的方法,其特征在于,所述服务端获取客户端上报的监控数据前先判断网络是否可用,当网络不可用时不对本地数据库中的数据进行处理。
10.根据权利要求1所述的一种客户端Web访问链路监控的方法,其特征在于,在所述服务端获取客户端上报的监控数据前,对监控数据进行加密处理。
CN202110160029.6A 2021-02-05 2021-02-05 一种客户端Web访问链路监控的方法 Active CN112882891B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110160029.6A CN112882891B (zh) 2021-02-05 2021-02-05 一种客户端Web访问链路监控的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110160029.6A CN112882891B (zh) 2021-02-05 2021-02-05 一种客户端Web访问链路监控的方法

Publications (2)

Publication Number Publication Date
CN112882891A true CN112882891A (zh) 2021-06-01
CN112882891B CN112882891B (zh) 2024-04-09

Family

ID=76057419

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110160029.6A Active CN112882891B (zh) 2021-02-05 2021-02-05 一种客户端Web访问链路监控的方法

Country Status (1)

Country Link
CN (1) CN112882891B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546775A (zh) * 2022-02-24 2022-05-27 众安信息技术服务有限公司 基于客户端应用的web监控方法、装置、设备和介质
CN116739668A (zh) * 2023-06-26 2023-09-12 云洞(上海)科技股份有限公司 一种基于全链路的广告投放分析方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180123921A1 (en) * 2016-10-31 2018-05-03 Appdynamics Llc Automatic web page load detection
CN108280022A (zh) * 2018-02-08 2018-07-13 无线生活(杭州)信息科技有限公司 性能监测方法及装置
CN108363657A (zh) * 2018-01-25 2018-08-03 上海连尚网络科技有限公司 监控app客户端埋点数据采集完整性的方法、设备以及介质
CN111813629A (zh) * 2020-07-13 2020-10-23 赞同科技股份有限公司 一种Web页面的监控数据生成方法、装置及设备
CN112230917A (zh) * 2020-10-12 2021-01-15 上海赛可出行科技服务有限公司 一种基于数据和状态的移动应用埋点方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180123921A1 (en) * 2016-10-31 2018-05-03 Appdynamics Llc Automatic web page load detection
CN108363657A (zh) * 2018-01-25 2018-08-03 上海连尚网络科技有限公司 监控app客户端埋点数据采集完整性的方法、设备以及介质
CN108280022A (zh) * 2018-02-08 2018-07-13 无线生活(杭州)信息科技有限公司 性能监测方法及装置
CN111813629A (zh) * 2020-07-13 2020-10-23 赞同科技股份有限公司 一种Web页面的监控数据生成方法、装置及设备
CN112230917A (zh) * 2020-10-12 2021-01-15 上海赛可出行科技服务有限公司 一种基于数据和状态的移动应用埋点方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546775A (zh) * 2022-02-24 2022-05-27 众安信息技术服务有限公司 基于客户端应用的web监控方法、装置、设备和介质
CN116739668A (zh) * 2023-06-26 2023-09-12 云洞(上海)科技股份有限公司 一种基于全链路的广告投放分析方法
CN116739668B (zh) * 2023-06-26 2024-03-12 紫灿科技(上海)股份有限公司 一种基于全链路的广告投放分析方法

Also Published As

Publication number Publication date
CN112882891B (zh) 2024-04-09

Similar Documents

Publication Publication Date Title
US10733079B2 (en) Systems and methods for end-to-end testing of applications using dynamically simulated data
CN107506451B (zh) 用于数据交互的异常信息监控方法及装置
US11775501B2 (en) Trace and span sampling and analysis for instrumented software
US20150095892A1 (en) Systems and methods for evaluating a change pertaining to a service or machine
US20150095338A1 (en) Systems and methods for categorizing exceptions and logs
CN106815125A (zh) 一种日志审计方法及平台
CN104035869A (zh) 一种应用的评测方法、终端及服务器
CN112882891A (zh) 一种客户端Web访问链路监控的方法
CN110633195B (zh) 一种性能数据的展示方法、装置、电子设备及存储介质
CN108108445A (zh) 一种智能数据处理方法和系统
CN115809119A (zh) 容器编排引擎的监控方法、系统及装置
CN114143169A (zh) 一种微服务应用可观测性系统
CN116932148B (zh) 一种基于ai的问题诊断系统及方法
CN117370053A (zh) 一种面向信息系统业务运行全景监测方法及系统
CN114465919B (zh) 一种网络服务测试方法、系统、电子设备及存储介质
CN114827951B (zh) 一种基于车辆终端的车辆网络质量分析方法、系统及存储介质
CN113783862B (zh) 一种边云协同过程中进行数据校验的方法及装置
CN111274115A (zh) 一种系统重构的验证方法和装置
CN112988504B (zh) 一种报警策略的设定方法、装置、电子设备及存储介质
CN113704203A (zh) 一种日志文件的处理方法及装置
CN115114316A (zh) 一种高并发数据的处理方法、装置、集群和存储介质
CN110661677B (zh) 一种dns测试方法、装置和系统
CN111651356A (zh) 一种应用程序测试方法、装置及系统
CN111831534A (zh) 一种对数据报表进行准确性验证的方法和装置
CN114567855B (zh) 一种长短信处理方法、装置和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20210601

Assignee: Shanghai Dewen Information Technology Co.,Ltd.

Assignor: SHANGHAI SHIZHUANG INFORMATION TECHNOLOGY Co.,Ltd.

Contract record no.: X2024980015702

Denomination of invention: A method for monitoring client web access links

Granted publication date: 20240409

License type: Common License

Record date: 20240919

CP03 Change of name, title or address

Address after: Room 6416, Building 13, No. 723 Tongxin Road, Hongkou District, Shanghai 200080

Patentee after: Shanghai Dewu Information Group Co.,Ltd.

Country or region after: China

Address before: Room B6-2005, No. 121 Zhongshan North 1st Road, Hongkou District, Shanghai

Patentee before: SHANGHAI SHIZHUANG INFORMATION TECHNOLOGY Co.,Ltd.

Country or region before: China