CN113377563B - 一种网页监控方法及计算设备 - Google Patents

一种网页监控方法及计算设备 Download PDF

Info

Publication number
CN113377563B
CN113377563B CN202110610097.8A CN202110610097A CN113377563B CN 113377563 B CN113377563 B CN 113377563B CN 202110610097 A CN202110610097 A CN 202110610097A CN 113377563 B CN113377563 B CN 113377563B
Authority
CN
China
Prior art keywords
error information
information
component
webpage
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.)
Active
Application number
CN202110610097.8A
Other languages
English (en)
Other versions
CN113377563A (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.)
Beijing Cheerbright Technologies Co Ltd
Original Assignee
Beijing Cheerbright Technologies 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 Beijing Cheerbright Technologies Co Ltd filed Critical Beijing Cheerbright Technologies Co Ltd
Priority to CN202110610097.8A priority Critical patent/CN113377563B/zh
Publication of CN113377563A publication Critical patent/CN113377563A/zh
Application granted granted Critical
Publication of CN113377563B publication Critical patent/CN113377563B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种网页监控方法及计算设备,方法包括:在通过网页组件开始加载URL时,通过预定监控脚本获取所述网页组件的相关信息;若在通过网页组件加载URL过程中出现错误,通过预定监控脚本获取加载URL过程中出现错误的错误信息,作为第一错误信息;若在通过网页组件加载页面过程中出现错误,通过预定监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息;将网页组件的相关信息、第一错误信息或第二错误信息发送至网络服务器。基于上述方法,实现了在无需更改网页组件代码的前提下,既可监控到网页组件加载URL的错误信息,也可监控到资源加载错误的细节信息,从而得到全面的监控数据,帮助分析人员快速分析、定位网页加载出错原因。

Description

一种网页监控方法及计算设备
技术领域
本发明涉及计算机技术领域,特别涉及一种网页监控方法、计算设备及储存介质。
背景技术
应用程序(Application,简称APP)中,通过内嵌的网页组件(例如WebView)加载html页面,在APP内展示页面。在网络不稳定或者页面脚本出现错误时,多数会出现页面无法加载的情况,从而出现白屏(页面呈现白色背景)的状态,用户体验差。
为了解决上述问题,现有技术中网页监控的方法可分为两种:一是自定义资源加载过程,即,通过拦截网页组件的资源加载流程,并通过自定义程序代理请求URL对应的资源,并将请求的资源返回给网页组件,网页组件通过该资源渲染页面,该方法可以监控到针对URL对应资源的处理过程信息,但是在众多的定制网页组件(定制网页组件,即针对不同业务自定义继承于APP的网页组件的样式、交互等细节)场景下,改造成本和改造风险大。二是通过监控网页组件的错误回调,即,在网页组件加载页面的过程中,通过调用APP所对应操作系统的API监控错误信息,并返回已监控的错误信息,该方法无需针对业务整体修改定制网页组件,但是该方法无法详细监控到每一个资源加载情况,导致监控效果差。
为此,本发明提供了一种降低开发成本、提高监控效果的网页监控方法。
发明内容
为此,本发明提供一种方法,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供了一种网页监控方法,在客户端的应用程序中执行,所述应用程序内嵌有网页组件,所述网页组件中存储有预定监控脚本,所述客户端与网络服务器通信连接,所述方法包括:
在通过所述网页组件开始加载URL时,通过所述预定监控脚本获取所述网页组件的相关信息;
若在通过所述网页组件加载URL过程中出现错误,通过所述预定监控脚本获取加载URL过程中出现错误的错误信息,作为第一错误信息;
若在通过所述网页组件加载页面过程中出现错误,通过所述预定监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息;
将所述网页组件的相关信息、所述第一错误信息或所述第二错误信息发送至所述网络服务器。
可选地,预定监控脚本包括切面代码和第一监控脚本,第一监控代码用于监控网页组件加载URL过程中出现的错误;
其中,在通过所述网页组件开始加载URL时,通过所述预定监控脚本获取网页组件的相关信息的步骤包括:
将第一监控脚本注入切面代码指定的网页组件方法中;
在通过网页组件开始加载URL时,通过第一监控脚本获取网页组件的相关信息。
可选地,若在通过网页组件加载URL过程中出现错误,通过预定监控脚本获取在加载URL过程中出现错误的错误信息,作为第一错误信息的步骤包括:
判断通过网页组件开始加载URL过程中是否出错,若是,通过第一监控脚本获取在加载URL过程中出现错误的错误信息,作为第一错误信息,若否,则通过网页组件加载URL。
可选地,预定监控脚本还包括第二监控脚本,第二监控脚本用于监控网页组件加载页面过程中出现的错误;
其中,若在通过网页组件加载页面过程中出现错误,通过预定监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息的步骤包括:
在开始加在页面时,向网页组件中注入第二监控脚本;
通过已注入第二监控脚本的网页组件加载页面;
判断通过已注入第二监控脚本的网页组件加载页面过程中是否出错,若是,通过第二监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息,若否,判断是否加载完成页面。
可选地,判断是否加载完成页面的步骤包括:
判断是否加载完成页面,若是,删除网页组件的相关信息,若否,关闭页面,记录调用网页组件API的时间,作为第三错误信息。
可选地,还包括步骤:
过滤掉第一错误信息、第二错误信息和第三错误信息中重复的错误信息,得到过滤后的错误信息。
可选地,还包括步骤:
判断过滤后的错误信息的类型,若为第一错误信息,则获取logcat日志,若为第二错误信息,则获取信号强度信息和ping信息;
获取客户端的id和型号。
可选地,将网页组件的相关信息、第一错误信息或第二错误信息发送至所述网络服务器的步骤包括:
将网页组件的相关信息、过滤后的错误信息、logcat日志以及客户端的id和型号发送至网络服务器,或者将网页组件的相关信息、过滤后的错误信息、信号强度信息、ping信息以及客户端的id和型号发送至网络服务器,或者将网页组件的相关信息、过滤后的错误信息、客户端的id和型号发送至网络服务器。
可选地,网页组件的相关信息包括如下信息中的一种或多种:类信息、网页组件对象、网页组件所属的原生界面、网页组件所属的业务插件、时间戳,其中,通过类信息可定位网页组件。
可选地,第一错误信息包括如下错误信息中的一种或多种:未找到需要加载的网页文件、加载的资源内容长度不匹配、SSL协议错误、URL无效错误、URL地址无法访问、无法连接到互联网、无法解析URL名称、客户端与网络服务器连接失败、TCP连接被复位、网络服务器取消TCP连接、网络服务器关闭TCP连接、套接字未连接成功、TCP连接超时。
可选地,第二错误信息包括页面运行错误信息、页面资源加载错误信息和HPPT请求错误信息。
可选地,网页组件为WebView。
根据本发明的一个方面,提供了一种计算设备,包括:至少一个处理器;以及存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如上所述方法的指令。
根据本发明的一个方面,提供了一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如上所述方法。
根据本发明的技术方案,提供了一种网页监控方法,通过预定监控代码监控网页组件加载URL时网页组件的相关信息,以及监控加载URL过程中出错的信息和加载页面过程中出错的信息,无需更改网页组件代码,开发成本低。并且在无需更改网页组件代码的前提下,既可监控到网页组件加载URL的错误信息,也可监控到资源加载错误的细节信息,从而得到全面的监控数据,为分析人员提供丰富的信息,从而能够帮助分析人员快速分析、定位网页加载出错原因,提高网页监控效率和质量。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的网页监控系统100的示意图;
图2示出了根据本发明一个实施例的计算设备200的示意图;以及
图3示出了根据本发明一个实施例的网页监控方法300的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
应用程序中,通过内嵌的网页组件(例如WebView)加载html页面,是很常见的页面展现方式。在网络不稳定或者页面脚本本身出现错误时,多数会出现页面无法加载的情况,从而出现白屏的状态,用户体验差。随着APP体量的增加、业务定制的网页组件场景的多样化,网页组件加载html页面出错的问题越来越难以排查。
为了解决上述问题,现有技术中网页监控方法可分为两种:一是自定义资源加载过程,即,通过拦截网页组件的资源加载流程,并通过自定义程序代理请求URL对应的资源,并将请求的资源返回给网页组件,网页组件通过该资源渲染页面,该方法可以监控到针对URL对应的资源的开始请求、响应完成、加载时长、加载错误等信息,并分析、上报至服务器,达到监控网页加载过程的目的,但是该方法不适用于众多的定制网页组件,若使用该种监控方案,需将原来业务的定制网页组件全部替换为此方案的定制网页组件,才可实现页面加载错误的监控,改造成本和改造风险大。
二是通过监控网页组件的错误回调,即,在网页组件加载页面的过程中,通过调用APP所对应操作系统的API监控错误信息,并返回已监控到的错误信息,该方法无需针对业务整体修改定制网页组件,也就是说无需修改代码即可实现页面加载错误的监控,但是该方法只能监控到页面整体的错误信息,无法详细监控到每一个资源加载情况,导致监控效果差。
为了解决上述问题,本发明提供一种网页监控方法,该方法在网页监控系统100中执行。图1示出了根据本发明一个实施例的网页监控系统100的示意图。如图1所示,网页监控系统100包括网络服务器110以及一个或多个客户端120,网络服务器110与一个或多个客户端120通信连接,例如通过有线或无线的方式网络连接。
客户端120即用户所使用的终端设备,其具体可以是桌面电脑、笔记本电脑等计算设备,也可以是手机、平板电脑、多媒体设备、智能可穿戴设备等,但不限于此。在一个实施例中,客户端120例如是手机、平板电脑等移动终端,客户端120中安装有一个或多个移动应用,其中包括适于与网络服务器110通信的应用125。应用125可以利用移动终端提供的移动通信功能而耦接到网络服务器110,从而,网络服务器110可以将客户端120请求获取的资源发送至客户端120,以便客户端120加载资源。这里,本发明对应用125的具体用途不做限制。应用125可以是各种应用,例如,用于为用户提供消费或者生活服务的应用;让一个用户去查看其他用户发布的信息的应用。
网络服务器110适于向客户端120发送客户端请求获取的资源,其可以实现为现有技术中的任何一种能够实现管理应用程序、与客户端的应用125进行数据交互的服务器,本发明对服务器的具体设备种类不作限制,例如,网络服务器110可以实现为桌面电脑、笔记本电脑、处理器芯片、手机、平板电脑等计算设备,但不限于此。
本发明中,客户端120通过预先存储的监控代码监控网页组件加载网络服务器110发送的URL(资源)时网页组件的相关信息,以及监控加载URL过程中出错的信息和加载页面过程中出错的信息,无需更改网页组件代码,开发成本低,并且既可监控网页组件加载URL的错误信息,也可监控到加载页面的错误信息,即,也可监控到资源加载细节信息,从而得到全面的监控数据,为分析人员提供丰富的信息,从而能够帮助分析人员快速分析、定位出错原因,提高网页监控效率。
在一个实施例中,本发明的客户端120可以实现为一种计算设备,使得本发明的网页监控方法可以在计算设备中执行。图2示出了根据本发明一个实施例的计算设备200的结构图。如图2所示,在基本的配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。
取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器206可以包括操作系统220、一个或者多个应用222以及程序数据224。在一些实施方式中,应用222可以布置为在操作系统上利用程序数据224进行操作。程序数据224包括指令,在根据本发明的计算设备200中,程序数据224包含用于执行网页监控方法300的指令。
计算设备200还包括储存设备232,储存设备232包括可移除储存器236和不可移除储存器238,可移除储存器236和不可移除储存器238均与储存接口总线234连接。本发明中,程序执行过程中发生的各事件的相关数据和指示各事件发生的时间信息,可存储于储存设备232中,操作系统220适于管理储存设备232。其中,储存设备232可为磁盘。
计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个A/V端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个I/O端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
计算设备200可以实现为服务器,例如文件服务器、数据库服务器、应用程序服务器和WEB服务器等,也可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、个人数字助理(PDA)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。计算设备200还可以实现为包括桌面计算机和笔记本计算机配置的个人计算机。在一些实施例中,计算设备200中系统存储器206存储的应用222被配置为执行根据本发明的一种网页监控方法300。
图3示出了根据本发明一个实施例的网页监控方法300的流程图。方法300适于在客户端120的应用程序中执行,客户端120的操作系统为Android操作系统,网页监控方法300始于步骤S310。在执行步骤S310之前,需要在网页组件中存储预定监控脚本,预定监控脚本包括切面代码、第一监控脚本和第二监控脚本,其中,切面代码可以指定网页组件方法,在编译应用程序代码过程中注入切面代码,第一监控脚本用于监控网页组件加载URL过程中出现的错误,第二监控脚本用于监控网页组件加载页面过程中出现的错误。
需要说明的是,加载URL的过程为:客户端120响应用户在客户端120的应用125中点击URL,例如在输入网址栏输入URL并点击回车,或者点击页面中的超链接,向网络服务器110发送获取URL对应资源的HTTP请求。网络服务器110获取资源,并将资源(URL对应的html文档)通过HTTP请求发送至客户端120。客户端120接收到网络服务器110发送的HTTP请求后,解析HTTP请求得到html文档,通过网页组件下载html文档,上述过程即为加载URL的过程。其中,本发明对网页组件不做限制,例如Webview组件。
接下来在步骤S310中,在通过网页组件开始加载URL时,通过预先配置的监控脚本,即预定监控脚本获取网页组件的相关信息,从而可基于获取网页组件的相关信息确定出错的业务对应的网页组件。具体地:将第一监控脚本注入切面代码指定的网页组件方法中,在通过网页组件开始加载URL时,通过第一监控脚本获取网页组件的相关信息。其中,网页组件的相关信息包括如下信息中的一种或多种:类信息、网页组件对象、网页组件所属的原生界面、网页组件所属的业务插件、时间戳。其中,通过类信息可定位网页组件,网页组件对象(hash code)是业务场景所对应网页组件的对象,且对象是唯一的。
随后在步骤S320中,若在通过网页组件加载URL过程中出现错误,通过预定监控脚本获取加载URL过程中出现错误的错误信息,作为第一错误信息。在一个实施方式中,判断通过网页组件开始加载URL过程中是否出错,若是,通过第一监控脚本获取在加载URL过程中出现错误的错误信息,作为第一错误信息,若否,则通过网页组件继续加载URL。其中,第一错误信息如表1所示:
表1
第一错误信息 含义
net::ERR_FILE_NOT_FOUND 未找到需要加载的网页文件
net::ERR_CONTENT_LENGTH_MISMATCH 加载的资源内容长度不匹配
net::ERR_SSL_PROTOCOL_ERROR SSL协议错误
net::ERR_INVALID_URL URL无效错误
net::ERR_ADDRESS_UNREACHABLE URL地址无法访问
net::ERR_INTERNET_DISCONNECTED 无法连接到互联网
net::ERR_NAME_NOT_RESOLVED 无法解析网址名称
net::ERR_PROXY_CONNECTION_FAILED 客户端与网络服务器连接失败
net::ERR_CONNECTION_RESET TCP连接被复位
net::ERR_CONNECTION_ABORTED 网络服务器取消TCP连接
net::ERR_CONNECTION_CLOSED 网络服务器关闭TCP连接
net::ERR_CONNECTION_REFUSED 网络服务器拒绝TCP连接
net::ERR_SOCKET_NOT_CONNECTED 套接字未连接成功
net::ERR_CONNECTION_TIMED_OUT TCP连接超时
由表1可知,第一错误信息包括如下错误信息中的一种或多种:未找到需要加载的网页文件、加载的资源内容长度不匹配、SSL协议错误、URL无效错误、URL地址无法访问、无法连接到互联网、无法解析网址(客户端网址)名称、客户端与网络服务器连接失败、TCP连接被复位、网络服务器取消TCP连接、网络服务器关闭TCP连接、套接字未连接成功、TCP连接超时。
以下为通过预定监控脚本获取加载URL过程中出现错误的错误信息的代码示例:
在成功加载URL后,即,成功下载资源URL对应的html文档后,通过网页组件解析html文档,基于解析后的html文档渲染页面。其中,html文档例如html5文档,即html5网页,当然,本发明对html文档不做限制。
渲染页面后,通过网页组件加载页面,接下来在步骤S330中,若在通过网页组件加载页面过程中出现错误,通过预定监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息。
在一个实施方式中,在开始加在页面时(具体为在开始加载页面标题时),向网页组件中注入第二监控脚本,通过已注入第二监控脚本的网页组件加载页面,判断通过已注入第二监控脚本的网页组件加载页面过程中是否出错,若是,通过第二监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息,若否,判断是否加载完成页面,若加载完成页面,说明已成功加载页面,则无需向网络服务器发送错误信息,并删除在步骤S310中获取的网页组件的相关信息。若一直未成功加载页面(该错误为超时错误),则关闭页面,并记录调用网页组件API的时间,作为第三错误信息(超时错误错误信息)。
其中,第二错误信息包括页面运行错误信息、页面资源加载错误信息和HPPT请求错误信息,第二错误信息如表2所示:
表2
其中,错误的HTTP请求是在加载页面过程中还会继续请求URL对应资源的过程中出错。以下为通过预定监控脚本获取加载页面过程中出现错误的错误信息的代码示例:
若出现加载URL出错、加载页面出错、一直未加载完成页面这三种情况中的一种或多种时,最后在步骤S340中,将网页组件的相关信息、第一错误信息和第二错误信息发送至网络服务器。具体地:过滤掉第一错误信息、或者第二错误信息、或者第三错误信息中重复的错误信息,得到过滤后的错误信息,从而过滤掉重复错误信息,之后判断过滤后的错误信息的类型。
若为第一错误信息,不包括第二错误信息和第三错误信息,则获取logcat日志,还获取客户端的id和型号,将网页组件的相关信息、过滤后的错误信息(过滤后的第一错误信息)、logcat日志以及客户端的id和型号发送至网络服务器110。其中,当加载URL出错时,通过Logcat日志分析APP的运行情况,通过客户端的id和型号可确定用户。Logcat日志是Androi系统的日志,可以清楚地展现出APP的运行状态,为分析人员提供修正和改进的建议。
若为第二错误信息,不包括第一错误信息和第三错误信息,则获取信号强度信息和ping信息,还获取客户端的id和型号,将网页组件的相关信息、过滤后的错误信息(过滤后的第二错误信息)、信号强度信息、ping信息以及客户端的id和型号发送至网络服务器110。其中,根据信号强度和ping信息可分析客户端120的网络环境。
若为第三错误信息,不包括第一错误信息和第二错误信息,则获取客户端的id和型号,将网页组件的相关信息、过滤后的错误信息(过滤后的第三错误信息)、客户端的id和型号发送至网络服务器110。
基于上述内容,分析人员可根据上报至网络服务器的加载URL错误信息、加载页面错误信息、网页组件相关信息和其他相关信息分析、定位网页出错原因,为分析人员提供丰富的信息,从而能够帮助分析人员快速分析、定位出错原因,提高网页监控效率和质量。
在一个实施方式中,同样以过滤后的错误信息包括第一错误信息、第二错误信息和第三错误信息为例进行说明,还判断是否成功将网页组件的相关信息、过滤后的错误信息、logcat日志、信号强度信息、ping信息以及客户端的id和型号发送至网络服务器110,若否,将上述信息缓存到本地,在下次错误数据上报时一起上报至网络服务器110。
基于上述内容可知,本发明提供的网页监控方法,由于在网页组件中预先存储监控代码,因此无需更改网页组件代码,并通过预定监控代码监控网页组件加载URL时网页组件的相关信息,以及监控加载URL过程中出错的信息和加载页面过程中出错的信息,从而在无需更改网页组件代码的前提下,既可监控到网页组件加载URL的错误信息,也可监控到资源加载错误的细节信息,开发成本低,并且能够得到全面的监控数据,从而为分析人员提供丰富的信息,能够帮助分析人员快速分析、定位出错原因,提高网页监控效率和质量。
A9如A1至A8中任一项所述的方法,其中,所述网页组件的相关信息包括如下信息中的一种或多种:类信息、网页组件对象、网页组件所属的原生界面、网页组件所属的业务插件、时间戳,其中,通过所述类信息可定位网页组件。
A10如A1至A9中任一项所述的方法,其中,所述第一错误信息包括如下错误信息中的一种或多种:未找到需要加载的网页文件、加载的资源内容长度不匹配、SSL协议错误、URL无效错误、URL地址无法访问、无法连接到互联网、无法解析URL名称、客户端与网络服务器连接失败、TCP连接被复位、网络服务器取消TCP连接、网络服务器关闭TCP连接、套接字未连接成功、TCP连接超时。
A11如A1至A10中所述的方法,其中,所述第二错误信息包括页面运行错误信息、页面资源加载错误信息和HPPT请求错误信息。
A12如A1至A11中任一项所述的方法,其中,所述网页组件为WebView。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的网页监控方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (10)

1.一种网页监控方法,在客户端的应用程序中执行,所述应用程序内嵌有网页组件,所述网页组件中存储有预定监控脚本,所述客户端与网络服务器通信连接,所述方法包括:
在通过所述网页组件开始加载URL时,通过所述预定监控脚本获取所述网页组件的相关信息;
若在通过所述网页组件加载URL过程中出现错误,通过所述预定监控脚本获取加载URL过程中出现错误的错误信息,作为第一错误信息;
若在通过所述网页组件加载页面过程中出现错误,通过所述预定监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息;
将所述网页组件的相关信息、所述第一错误信息或所述第二错误信息发送至所述网络服务器;
其中,所述预定监控脚本包括第二监控脚本,所述第二监控脚本用于监控所述网页组件加载页面过程中出现的错误;
其中,所述若在通过所述网页组件加载页面过程中出现错误,通过所述预定监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息包括:
在开始加载页面时,向所述网页组件中注入所述第二监控脚本;
通过已注入所述第二监控脚本的网页组件加载页面;
判断通过已注入所述第二监控脚本的网页组件加载页面过程中是否出错,若是,通过所述第二监控脚本获取加载页面过程中出现错误的错误信息,作为第二错误信息,若否,判断是否加载完成页面;
其中,所述判断是否加载完成页面包括:
判断是否加载完成页面,若是,删除所述网页组件的相关信息,若否,关闭页面,记录调用网页组件API的时间,作为第三错误信息;
过滤掉所述第一错误信息、所述第二错误信息和所述第三错误信息中重复的错误信息,得到过滤后的错误信息;
判断所述过滤后的错误信息的类型,若为第一错误信息,则获取logcat日志,若为第二错误信息,则获取信号强度信息和ping信息;
获取所述客户端的id和型号。
2.如权利要求1所述的方法,其中,所述预定监控脚本还包括切面代码和第一监控脚本,所述第一监控脚本用于监控所述网页组件加载URL过程中出现的错误;
其中,所述在通过所述网页组件开始加载URL时,通过所述预定监控脚本获取所述网页组件的相关信息的步骤包括:
将所述第一监控脚本注入所述切面代码指定的所述网页组件方法中;
在通过所述网页组件开始加载URL时,通过所述第一监控脚本获取所述网页组件的相关信息。
3.如权利要求2所述的方法,其中,所述若在通过所述网页组件加载URL过程中出现错误,通过所述预定监控脚本获取加载URL过程中出现错误的错误信息,作为第一错误信息的步骤包括:
判断通过所述网页组件开始加载URL过程中是否出错,若是,通过所述第一监控脚本获取在加载URL过程中出现错误的错误信息,作为第一错误信息,若否,则通过所述网页组件加载URL。
4.如权利要求1所述的方法,其中,所述将所述网页组件的相关信息、所述第一错误信息或所述第二错误信息发送至所述网络服务器的步骤包括:
将所述网页组件的相关信息、所述过滤后的错误信息、所述logcat日志以及所述客户端的id和型号发送至所述网络服务器,或者将所述网页组件的相关信息、所述过滤后的错误信息、所述信号强度信息、所述ping信息以及所述客户端的id和型号发送至所述网络服务器,或者将所述网页组件的相关信息、所述过滤后的错误信息、所述客户端的id和型号发送至所述网络服务器。
5.如权利要求1至4中任一项所述的方法,其中,所述网页组件的相关信息包括如下信息中的一种或多种:类信息、网页组件对象、网页组件所属的原生界面、网页组件所属的业务插件、时间戳,其中,通过所述类信息可定位网页组件。
6.如权利要求1至4中任一项所述的方法,其中,所述第一错误信息包括如下错误信息中的一种或多种:未找到需要加载的网页文件、加载的资源内容长度不匹配、SSL协议错误、URL无效错误、URL地址无法访问、无法连接到互联网、无法解析URL名称、客户端与网络服务器连接失败、TCP连接被复位、网络服务器取消TCP连接、网络服务器关闭TCP连接、套接字未连接成功、TCP连接超时。
7.如权利要求1至4中任一项所述的方法,其中,所述第二错误信息包括页面运行错误信息、页面资源加载错误信息和HPPT请求错误信息。
8.如权利要求1至4中任一项所述的方法,其中,所述网页组件为WebView。
9.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-8中任一项所述的方法的指令。
10.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-8中任一项所述方法。
CN202110610097.8A 2021-06-01 2021-06-01 一种网页监控方法及计算设备 Active CN113377563B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110610097.8A CN113377563B (zh) 2021-06-01 2021-06-01 一种网页监控方法及计算设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110610097.8A CN113377563B (zh) 2021-06-01 2021-06-01 一种网页监控方法及计算设备

Publications (2)

Publication Number Publication Date
CN113377563A CN113377563A (zh) 2021-09-10
CN113377563B true CN113377563B (zh) 2024-02-23

Family

ID=77575453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110610097.8A Active CN113377563B (zh) 2021-06-01 2021-06-01 一种网页监控方法及计算设备

Country Status (1)

Country Link
CN (1) CN113377563B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114253624A (zh) * 2021-11-26 2022-03-29 青岛海尔科技有限公司 页面加载方法、装置和容器

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681929A (zh) * 2011-03-15 2012-09-19 腾讯科技(深圳)有限公司 网页脚本错误监控方法及系统
CN103150363A (zh) * 2013-03-04 2013-06-12 北京小米科技有限责任公司 访问网页的方法及装置
CN105743730A (zh) * 2014-12-12 2016-07-06 阿里巴巴集团控股有限公司 为移动终端的网页服务提供实时监控的方法及其系统
WO2019205192A1 (zh) * 2018-04-25 2019-10-31 网宿科技股份有限公司 一种网页加载方法、网页加载系统和服务器
CN110928767A (zh) * 2019-10-12 2020-03-27 平安国际智慧城市科技股份有限公司 网页分析方法、装置、设备及存储介质
CN112528186A (zh) * 2020-12-17 2021-03-19 上海优扬新媒信息技术有限公司 一种网页监控方法、装置及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681929A (zh) * 2011-03-15 2012-09-19 腾讯科技(深圳)有限公司 网页脚本错误监控方法及系统
CN103150363A (zh) * 2013-03-04 2013-06-12 北京小米科技有限责任公司 访问网页的方法及装置
CN105743730A (zh) * 2014-12-12 2016-07-06 阿里巴巴集团控股有限公司 为移动终端的网页服务提供实时监控的方法及其系统
WO2019205192A1 (zh) * 2018-04-25 2019-10-31 网宿科技股份有限公司 一种网页加载方法、网页加载系统和服务器
CN110928767A (zh) * 2019-10-12 2020-03-27 平安国际智慧城市科技股份有限公司 网页分析方法、装置、设备及存储介质
CN112528186A (zh) * 2020-12-17 2021-03-19 上海优扬新媒信息技术有限公司 一种网页监控方法、装置及系统

Also Published As

Publication number Publication date
CN113377563A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
CN107133180B (zh) 动态页面的测试方法、测试装置及存储介质
CN111314459B (zh) 一种业务请求方法、装置、电子设备及存储介质
RU2613531C2 (ru) Способ совместного доступа к файлам, терминал и сервер ретрансляции
US8271836B2 (en) Capturing diagnostics in web browser applications
CN112615907B (zh) 一种数据同步系统及方法
US20140108966A1 (en) Method, sharing platform, and system for sharing image-editing action
US20140123033A1 (en) Systems, methods, and apparatuses for implementing a shared session server to enable multiple browser clients to simultaneously view and interact with common web content in a shared browsing session
CN107181779B (zh) 访问请求的处理方法、装置和系统
US8966446B1 (en) Systems and methods of live experimentation on content provided by a web site
CN109391673B (zh) 一种管理更新文件的方法、系统及终端设备
CN103268319A (zh) 一种基于网页的云浏览器
CN110557284B (zh) 基于客户端网关的数据聚合方法及装置
US20140258891A1 (en) Electronic device, storage medium and method for processing information
WO2012155849A1 (zh) 网页浏览方法、代理服务器及网页浏览系统
WO2020253366A1 (zh) 网页邮箱数据的爬取方法、装置、终端和存储介质
CN111444287B (zh) 图数据库构建方法、关联信息查询方法、装置及计算设备
CN106648971A (zh) 一种崩溃crash恢复装置、终端及方法
EP2725506A2 (en) Apparatus and method for displaying loading state of web browser in portable terminal
CN113377563B (zh) 一种网页监控方法及计算设备
CN112818270B (zh) 数据跨域传递方法、装置及计算机设备
CN113709246B (zh) 一种网络代理方法、计算设备及可读存储介质
CN111984236B (zh) 组件标准化管理方法、装置、计算机设备及可读存储介质
CN111414383B (zh) 数据请求方法、数据处理系统及计算设备
WO2020224108A1 (zh) Url拦截转换方法、装置以及计算机设备
CN107508705B (zh) 一种http元素的资源树构建方法及计算设备

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