CN112052185B - 小程序的异常处理方法、装置、电子设备和存储介质 - Google Patents

小程序的异常处理方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112052185B
CN112052185B CN202011056007.7A CN202011056007A CN112052185B CN 112052185 B CN112052185 B CN 112052185B CN 202011056007 A CN202011056007 A CN 202011056007A CN 112052185 B CN112052185 B CN 112052185B
Authority
CN
China
Prior art keywords
applet
abnormality
scene
data
determining
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
CN202011056007.7A
Other languages
English (en)
Other versions
CN112052185A (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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202011056007.7A priority Critical patent/CN112052185B/zh
Publication of CN112052185A publication Critical patent/CN112052185A/zh
Application granted granted Critical
Publication of CN112052185B publication Critical patent/CN112052185B/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/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种小程序的异常处理方法、装置、电子设备和存储介质,涉及小程序领域。具体实现方案为:响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定小程序在目标异常判定条件对应的运行场景中产生异常;确定小程序的异常的产生原因;根据目标异常判定条件对应的运行场景的类型和产生原因,确定与运行场景的类型以及产生原因均匹配的处理方式,作为建议用户执行的处理方式。根据本申请实施例,可以确定具有针对性、更精准的处理方式。

Description

小程序的异常处理方法、装置、电子设备和存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及小程序领域。
背景技术
小程序是一种不需要下载安装即可使用的应用程序,具有轻量化、即用即走等优点。随着小程序生态的持续发展,越来越多产品以小程序的形式为用户提供服务。然而,因为小程序功能日趋复杂,在小程序运行中难免会出现异常,且这些异常往往是用户可感知的。
发明内容
本申请提供了一种小程序的异常处理方法、装置、电子设备和存储介质。
根据本申请的一方面,提供了一种小程序的异常处理方法,包括:
响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定小程序在目标异常判定条件对应的运行场景中产生异常;其中,多个异常判定条件对应于多个不同类型的运行场景;
确定小程序的异常的产生原因;
根据目标异常判定条件对应的运行场景的类型和产生原因,确定与运行场景的类型以及产生原因均匹配的处理方式,作为建议用户执行的处理方式。
根据本申请的另一方面,提供了一种小程序的异常处理方法,包括:
根据小程序的历史数据,确定与小程序的多个运行场景分别对应的多个异常判定条件;
基于多个异常判定条件,生成异常数据集;
将异常数据集发送至运行小程序的终端。
根据本申请的另一方面,提供了一种小程序的异常处理装置,包括:
异常确定模块,用于响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定小程序在目标异常判定条件对应的运行场景中产生异常;其中,多个异常判定条件对应于多个不同类型的运行场景;
原因确定模块,用于确定小程序的异常的产生原因;
操作确定模块,用于根据目标异常判定条件对应的运行场景的类型和产生原因,确定与运行场景的类型以及产生原因均匹配的处理方式,作为建议用户执行的处理方式。
根据本申请的另一方面,提供了一种小程序的异常处理装置,包括:
条件确定模块,用于根据小程序的历史数据,确定与小程序的多个运行场景分别对应的多个异常判定条件;
生成模块,用于基于多个异常判定条件,生成异常数据集;
发送模块,用于将异常数据集发送至运行小程序的终端。
根据本申请的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请实施例提供的方法。
根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行本申请实施例提供的方法。
根据本申请的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方法。
根据本申请的技术方案,可以结合小程序中异常的运行场景和产生原因,确定更具有针对性、更精准的异常处理方式,有助于解决小程序异常的问题,改善用户体验。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请一实施例的小程序的异常处理方法的示意图;
图2是根据本申请一实施例的应用示例的示意图;
图3是根据本申请另一实施例的小程序的异常处理方法的示意图;
图4是根据本申请又一实施例的小程序的异常处理方法的示意图;
图5是根据本申请一实施例的小程序的异常处理装置的示意图;
图6是根据本申请另一实施例的小程序的异常处理装置的示意图;
图7是根据本申请又一实施例的小程序的异常处理装置的示意图;
图8是根据本申请又一实施例的小程序的异常处理装置的示意图;
图9是用来实现本申请实施例的小程序的异常处理方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了根据本申请一实施例的小程序的异常处理方法的示意图。如图1所示,该方法可以包括:
步骤S11,响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定小程序在目标异常判定条件对应的运行场景中产生异常;其中,多个异常判定条件对应于多个不同类型的运行场景;
步骤S12,确定小程序的异常的产生原因;
步骤S13,根据目标异常判定条件对应的运行场景的类型和产生原因,确定与运行场景的类型以及产生原因均匹配的处理方式,作为建议用户执行的处理方式。
上述方法可以由终端执行。终端上可以安装宿主应用。宿主应用可以包括为小程序提供运行环境的应用,小程序依托于宿主应用在终端上运行。
示例性地,小程序运行中的时长数据可以包括小程序获取信息的耗时、下载业务包的耗时、加载业务代码到数据渲染成功的耗时、骨架屏加载的耗时、白屏的持续时长等一种或多种数据。
可以在小程序中添加计时器,以获得上述时长数据,再确定时长数据是否符合目标异常判定条件。例如,在小程序发送信息获取请求时开始计时,获取到对应信息时或达到目标异常判定条件时停止计时。目标异常判定条件为计时达到1s(秒),若计时时间达到1s,则符合目标异常条件,若在计时时间没有达到1s时已经停止计时,则不符合目标异常条件。
在一种示例性的实施方式中,终端中可预存与多个运行场景分别对应的多个异常判定条件。当小程序运行中的时长数据符合其中一个异常判定条件时,可以将该异常判定条件视为目标异常判定条件,确定小程序产生异常,并且确定该异常是在目标异常判定条件对应的运行场景中产生的。
示例性地,多个运行场景包括例如信息获取场景、小程序业务包下载场景、业务代码加载场景、骨架屏加载场景、白屏场景等。与某个运行场景对应的异常判定条件例如是该场景中的一种或多种时长数据达到预设阈值。相应地,小程序的异常包括信息获取缓慢、小程序包下载缓慢、在小程序业务代码加载后无数据渲染、骨架屏加载异常、出现异常白屏等。
在本申请实施例中,可以采用多种分析手段对小程序的异常进行原因分析。多种分析手段包括例如网络探测、数据统计、代码监控等。小程序的异常的产生原因可以包括:网络状态差、开发者服务响应缓慢、开发者服务不稳定等。
示例性地,在确定异常的运行场景和产生原因后,可以根据运行场景和产生原因,在预先配置的处理方式列表中,查找与运行场景和产生原因均匹配的处理方式,作为建议用户执行的处理方式。其中,处理方式列表可参考如下示例配置:
基于上述处理方式,可以得到相应的用户提示语。示例性地,用户提示语可以包括两部分,第一部分提示异常的产生原因,第二部分提示处理方式。例如在小程序包下载阶段因网络状态差而发生异常,用户提示语可以是“网络不给力,请耐心等待”。又如,在骨架屏加载阶段因服务器响应缓慢而发生异常,用户提示语可以是“服务响应缓慢,请耐心等待或重启小程序”。
根据本申请实施例提供的小程序的异常处理方法,可以结合小程序中产生异常的运行场景和产生原因,确定更具有针对性、更精准的处理方式。例如针对同一运行场景下因不同产生原因产生的异常可以输出不同的处理方式,或者针对因同一产生原因产生的不同运行场景下的异常输出不同的处理方式。因此,可以向用户提供更具有针对性、更精准的提示信息,帮助用户解决小程序异常的问题,改善用户体验。
在一种示例性的实施方式中,上述方法还可以包括:
接收宿主应用服务器下发的异常数据集;
解析异常数据集,得到多个异常判定条件。
作为示例,异常判定条件可以包括一种或多种时长数据达到阈值,则异常判定条件可基于阈值信息表征。异常数据集可包括多种阈值信息。
根据上述实施方式,终端通过解析宿主应用服务器下发的异常数据集,得到多种异常判定条件,从而基于多种异常判定条件检测小程序运行中的异常。因此,可以通过在宿主应用服务器中配置和更新异常数据集,不断优化向用户提供的提示信息的针对性和精准度。
在一种示例性的实施方式中,上述方法还可以包括:
检测针对上述处理方式的用户操作,得到异常数据集对应的用户操作数据;
将用户操作数据上传到宿主应用服务器。
例如,在显示包含上述处理方式的用户提示语后,检测用户关闭小程序页面的操作、重启小程序的操作、用户根据用户提示语实施的操作等,记录这些操作的操作类型、执行时间等信息,得到用户操作数据。则用户操作数据可以体现显示用户提示语后用户在终端上小程序页面的停留时间、用户按照提示语进行操作的概率、用户按照提示语进行操作的速度等信息,因此,用户操作数据可以表征处理方式的准确度和针对性。
根据上述实施方式,终端将用户操作数据上传到宿主应用服务器,由于用户操作数据可以体现基于异常数据集给出的处理方式的准确度和针对性,因此,有助于宿主应用服务器评估异常数据集是否有效以及优化异常数据集,进一步提高处理方式的针对性和准确度。
示例性地,宿主应用服务器可以根据存储的各种历史数据,包括用户操作数据、小程序运行数据、历史异常数据集等,优化异常数据集,得到新的异常数据集,其中包括目前需要监测的运行场景有哪些,每种运行场景的异常判定条件等。
在一种示例性的实施方式中,上述步骤S12,确定小程序的异常的产生原因,可以包括:
基于网络探测手段对小程序的网络状态进行诊断,确定小程序的网络状态类别;
根据网络状态类别以及小程序向开发者服务器发出的请求的统计数据,确定异常的产生原因为本地网络问题或开发者服务器问题。
示例性地,网络探测手段可以包括PING(Packet Internet Groper,因特网包探索器)探测、TCP(Transmission Control Protocol,传输控制协议)探测、DNS(Domain NameSystem,域名系统)探测、HTTP(HyperText Transfer Protocol,超文本传输协议)探测等一种或多种。利用这些网络探测手段可以确定小程序的网络状态类别为优质网络、弱网、离线网络或未知网络等。
小程序向开发者服务器发出的请求,也可以称为开发者请求或业务请求。示例性地,开发者请求的统计数据,可以包括请求次数、请求成功次数、请求失败次数、请求成功率、请求耗时中的一种或多种。
示例性地,如果开发者请求的成功率低,则可以确定异常原因为开发者服务器问题,例如开发者服务器不稳定。如果开发者请求的成功率高于一定阈值,则根据开发者请求的请求耗时,确定开发者服务器的响应速度,如果响应速度较慢则结合网络状态类别,确定异常的产生原因是开发者服务器响应缓慢或本地网络状态差。
根据该实施方式,可以结合网络状态类别和开发者请求的统计数据,确定异常的产生原因,提高判定的准确度。
图2示出了结合网络状态类别和开发者请求的统计数据,确定异常的产生原因的一个应用示例。如图2所示,在确定产生异常的情况下,执行以下步骤:
步骤S21,收集预设时间段内的开发者请求的统计数据。这里,预设时间段可以包括小程序启动后到确定产生异常时或小程序启动后一定时间如2s或6s内。例如,如果小程序在启动后6s内确定产生异常,则收集小程序启动后到确定产生异常时的数据;如果小程序在启动6s后才确定产生异常,则手机小程序启动后6s内的数据。
步骤S22,确定预设时间段的时长是否超过预设时长例如3s以及开发者请求的次数是否大于预设次数例如2。如果预设时间段的时长超过预设时长,开发者请求的次数大于预设个数,则认为统计数据有效,执行步骤S23。如果预设时间段的时长没有超过预设时长或开发者请求的次数小于预设个数,则认为统计数据不足,无法确认是否开发者服务器的问题,执行步骤S27,以考虑是否是网络状态问题。
步骤S23,基于开发者请求的相关数据,判断请求失败率是否超过预设阈值例如50%、40%等。其中,请求失败的判定条件可以是开发者服务器是否返回失败状态码例如40X或50X等。如果请求失败率超过预设阈值,则可以执行步骤S231,确定异常的产生原因为开发者服务不稳定。如果请求失败率不超过预设阈值,则可以执行步骤S24。
步骤S24,判断响应最慢的两个请求是否均超过预设时间阈值例如3s才被响应。如果响应最慢的两个请求是否均超过预设时间阈值才被响应,则执行步骤S25。如果响应最慢的两个请求均超过预设时间阈值才被响应,则执行步骤S27;
步骤S25,判断网络状态类别是否为优质网络,如果是,则执行步骤S251,确定异常的产生原因为开发者服务器响应缓慢。如果否,则执行步骤S26。
步骤S26,判断网络状态类别是否为弱网。如果是,则执行步骤S261,确定异常的产生原因为网络状态差,如果否,则执行步骤S262,确定异常的产生原因为开发者服务器响应缓慢。
步骤S27,判断网络状态类别是否为弱网。如果是,则执行步骤S271,确定异常的产生原因为网络状态差,如果否,则执行步骤S272,识别结束,认为无异常。例如在统计数据不足或开发者请求失败率较低且响应较快的情况下认为无异常。
根据上述应用示例,可以综合开发者请求的失败率、响应速度和网络状态类别,确定准确的异常产生原因。
实际应用时,确定异常的产生原因是否为本地网络问题、确定异常的产生原因是否为开发者服务器问题,也可以分开独立实施。
在一种示例性的实施方式中,上述步骤S12,确定小程序的异常的产生原因,可以包括:
对小程序的代码加载进行监控,得到小程序的代码加载错误记录;
根据代码加载错误记录,确定异常的产生原因。
例如,小程序框架可以在加载开发者代码如JS(JavaScript)代码时进行JS错误监控。当监控到执行错误时,会生成代码加载错误记录如报错信息,代码加载错误记录可以指示异常的产生原因。
根据该实施方式,可以在代码中进行埋点,得到代码加载错误记录,根据代码加载错误记录可以准确确定异常的产生原因,提高用户提示语的准确度。
实际应用时,可以基于网络状态、开发者请求、代码加载等分析内容分别对小程序的异常进行原因分析,具体采用何种分析内容可以由宿主应用服务器决定。例如,宿主应用服务器下发的数据集中还可以包括对原因分析的内容的指示信息。
图3示出了根据本申请另一实施例的小程序的异常处理方法的示意图。如图3所示,该方法可以包括:
步骤S31,根据小程序的历史数据,确定与小程序的多个运行场景分别对应的多个异常判定条件;
步骤S32,基于多个异常判定条件,生成异常数据集;
步骤S33,将异常数据集发送至运行小程序的终端。
其中,历史数据可以包括用户操作数据、小程序运行数据、历史异常数据集等。
上述方法可以由服务器实现,例如小程序的宿主应用服务器。基于上述方法,服务器可以根据小程序的各种历史数据,确定待监控的运行场景和对应的异常判定条件例如阈值信息,生成当前的异常数据集,使终端能够为用户提供更具有针对性的、精准的提示信息。
示例性地,上述方法还可以包括:
接收终端上传的基于异常数据集得到的用户操作数据;
根据用户操作数据,优化异常数据集。
根据上述实施方式,终端将用户操作数据上传到宿主应用服务器,由于用户操作数据可以体现基于异常数据集给出的用户提示语的准确度和针对性,因此,服务器根据用户操作数据优化异常数据集,可以提高优化效果。
图4示出了根据本申请又一实施例的小程序的异常处理方法的示意图。如图4所示,该方法包括:
步骤S41,服务器依据线上大数据统计,动态智能地生成最适合当前使用的启动异常数据模型。其中,该数据模型基于异常数据集表征。
步骤S42,终端启动小程序前拉取服务器的异常数据模型;
步骤S43,终端解析异常数据模型,获取运行场景、相应异常判定条件、监测手段等关键数据信息;
步骤S44,终端添加异常监控,捕获启动异常;
步骤S45,终端根据运行场景,启动原因分析;
步骤S46,终端提供精准的用户提示和用户引导;
步骤S47,终端采集异常数据日志信息上传服务器;
步骤S48,服务器依据最新数据,动态优化更新异常数据模型。
可见,根据本申请实施例提供的方法,可以结合小程序中产生异常的运行场景和产生原因,显示用户提示语,为用户提供更具有针对性、更精准的提示信息,帮助用户解决小程序异常的问题,改善用户体验。
图5示出了根据本申请一实施例的小程序的异常处理装置的示意图,如图5所示,该装置包括:
异常确定模块510,用于响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定小程序在目标异常判定条件对应的运行场景中产生异常;其中,多个异常判定条件对应于多个不同类型的运行场景;
原因确定模块520,用于确定小程序的异常的产生原因;
操作确定模块530,用于根据目标异常判定条件对应的运行场景的类型和产生原因,确定与运行场景的类型以及产生原因均匹配的处理方式,作为建议用户执行的处理方式。
示例性地,如图6所示,该装置还包括:
第一接收模块610,用于接收宿主应用服务器下发的异常数据集;
解析模块620,用于解析异常数据集,得到多个异常判定条件。
示例性地,如图6所示,该装置还包括:
检测模块630,用于检测针对上述处理方式的用户操作,得到异常数据集对应的用户操作数据;
上传模块640,用于将用户操作数据上传到宿主应用服务器。
示例性地,如图6所示,原因确定模块520包括:
网络确定单元521,用于基于网络探测手段对小程序的网络状态进行诊断,确定小程序的网络状态类别;
第一原因确定单元522,用于根据网络状态类别以及小程序向开发者服务器发出的请求的统计数据,确定异常的产生原因为本地网络问题或开发者服务器问题。
示例性地,如图6所示,原因确定模块520包括:
监控单元523,用于对小程序的代码加载进行监控,得到小程序的代码加载错误记录;
第二原因确定单元524,用于根据代码加载错误记录,确定异常的产生原因。
图7示出了根据本申请一实施例的小程序的异常处理装置的示意图,如图7所示,该装置包括:
条件确定模块710,用于根据小程序的历史数据,确定与小程序的多个运行场景分别对应的多个异常判定条件;
生成模块720,用于基于多个异常判定条件,生成异常数据集;
发送模块730,用于将异常数据集发送至运行小程序的终端。
示例性地,如图8所示,该装置还包括:
第二接收模块810,用于接收终端上传的基于异常数据集得到的用户操作数据;
优化模块820,用于根据用户操作数据,优化异常数据集。
本申请实施例提供的装置,能够实现本申请实施例提供的方法,具备相应的有益效果。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
如图9所示,是根据本申请实施例的小程序的异常处理方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图9所示,该电子设备包括:一个或多个处理器901、存储器902,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器或者多处理器系统)。图9中以一个处理器901为例。
存储器902即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的小程序的异常处理方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的小程序的异常处理方法。
存储器902作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的小程序的异常处理方法对应的程序指令/模块(例如,附图5所示的异常确定模块510、原因确定模块520和操作确定模块530)。处理器901通过运行存储在存储器902中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的小程序的异常处理方法。
存储器902可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据小程序的异常处理方法的电子设备的使用所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器902可选包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至小程序的异常处理方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
小程序的异常处理方法的电子设备还可以包括:输入装置903和输出装置904。处理器901、存储器902、输入装置903和输出装置904可以通过总线或者其他方式连接,图9中以通过总线连接为例。
输入装置903可接收输入的数字或字符信息,以及产生与小程序的异常处理方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置904可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器),或者包括中间件部件的计算系统(例如,应用服务器),或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互),或者包括这种后台部件、中间件部件或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与虚拟专用服务器(VPS)服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
根据本申请实施例的技术方案,可以结合产生异常的运行场景和产生原因,显示用户提示语,为用户提供更具有针对性、更精准的提示信息,有助于用户解决小程序异常,改善用户体验。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (16)

1.一种小程序的异常处理方法,包括:
响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定所述小程序在所述目标异常判定条件对应的运行场景中产生异常;其中,所述多个异常判定条件对应于多个不同类型的运行场景;与所述运行场景对应的异常判定条件包括该运行场景中的一种或多种时长数据达到预设阈值;所述时长数据包括小程序获取信息的耗时、下载业务包的耗时、加载业务代码到数据渲染成功的耗时、骨架屏加载的耗时、白屏的持续时长中的至少一项;所述运行场景包括信息获取场景、小程序业务包下载场景、业务代码加载场景、骨架屏加载场景、白屏场景中的至少一项;所述多个异常判定条件是从宿主应用服务器获取的;
确定所述小程序的异常的产生原因;
根据所述目标异常判定条件对应的运行场景的类型和所述产生原因,确定与所述运行场景的类型以及所述产生原因均匹配的处理方式,作为建议用户执行的处理方式。
2.根据权利要求1所述的方法,还包括:
接收宿主应用服务器下发的异常数据集;
解析所述异常数据集,得到所述多个异常判定条件。
3.根据权利要求2所述的方法,还包括:
检测针对所述处理方式的用户操作,得到所述异常数据集对应的用户操作数据;
将所述用户操作数据上传到所述宿主应用服务器。
4.根据权利要求1-3任一项所述的方法,其中,所述确定所述小程序的异常的产生原因,包括:
基于网络探测手段对所述小程序的网络状态进行诊断,确定所述小程序的网络状态类别;
根据所述网络状态类别以及所述小程序向开发者服务器发出的请求的统计数据,确定所述异常的产生原因为本地网络问题或开发者服务器问题。
5.根据权利要求1-3任一项所述的方法,其中,所述确定所述小程序的异常的产生原因,包括:
对所述小程序的代码加载进行监控,得到所述小程序的代码加载错误记录;
根据所述代码加载错误记录,确定所述异常的产生原因。
6.一种小程序的异常处理方法,包括:
根据小程序的历史数据,确定与所述小程序的多个运行场景分别对应的多个异常判定条件;所述历史数据包括用户操作数据、小程序运行数据、以及历史异常数据集中的至少一项;
基于所述多个异常判定条件,生成异常数据集;
将所述异常数据集发送至运行所述小程序的终端,以使所述终端基于所述多个异常判定条件以及小程序运行中的时长数据,确定小程序在目标异常判定条件对应的运行场景中产生异常,以及确定所述小程序的异常的产生原因,并根据所述目标异常判定条件对应的运行场景的类型和所述产生原因,确定与所述运行场景的类型以及所述产生原因均匹配的处理方式,作为建议用户执行的处理方式;其中,所述多个异常判定条件对应于多个不同类型的运行场景;与所述运行场景对应的异常判定条件包括该运行场景中的一种或多种时长数据达到预设阈值;所述时长数据包括小程序获取信息的耗时、下载业务包的耗时、加载业务代码到数据渲染成功的耗时、骨架屏加载的耗时、白屏的持续时长中的至少一项;所述运行场景包括信息获取场景、小程序业务包下载场景、业务代码加载场景、骨架屏加载场景、白屏场景中的至少一项。
7.根据权利要求6所述的异常处理方法,还包括:
接收所述终端上传的基于所述异常数据集得到的用户操作数据;
根据所述用户操作数据,优化所述异常数据集。
8.一种小程序的异常处理装置,包括:
异常确定模块,用于响应于小程序运行中的时长数据符合多个异常判定条件中的目标异常判定条件,确定所述小程序在所述目标异常判定条件对应的运行场景中产生异常;其中,所述多个异常判定条件对应于多个不同类型的运行场景;与所述运行场景对应的异常判定条件包括该运行场景中的一种或多种时长数据达到预设阈值;所述时长数据包括小程序获取信息的耗时、下载业务包的耗时、加载业务代码到数据渲染成功的耗时、骨架屏加载的耗时、白屏的持续时长中的至少一项;所述运行场景包括信息获取场景、小程序业务包下载场景、业务代码加载场景、骨架屏加载场景、白屏场景中的至少一项;所述多个异常判定条件是从宿主应用服务器获取的;
原因确定模块,用于确定所述小程序的异常的产生原因;
操作确定模块,用于根据所述目标异常判定条件对应的运行场景的类型和所述产生原因,确定与所述运行场景的类型以及所述产生原因均匹配的处理方式,作为建议用户执行的处理方式。
9.根据权利要求8所述的装置,还包括:
第一接收模块,用于接收宿主应用服务器下发的异常数据集;
解析模块,用于解析所述异常数据集,得到所述多个异常判定条件。
10.根据权利要求9所述的装置,还包括:
检测模块,用于检测针对所述处理方式的用户操作,得到所述异常数据集对应的用户操作数据;
上传模块,用于将所述用户操作数据上传到所述宿主应用服务器。
11.根据权利要求8-10任一项所述的装置,其中,所述原因确定模块包括:
网络确定单元,用于基于网络探测手段对所述小程序的网络状态进行诊断,确定所述小程序的网络状态类别;
第一原因确定单元,用于根据所述网络状态类别以及所述小程序向开发者服务器发出的请求的统计数据,确定所述异常的产生原因为本地网络问题或开发者服务器问题。
12.根据权利要求8-10任一项所述的装置,其中,所述原因确定模块包括:
监控单元,用于对所述小程序的代码加载进行监控,得到所述小程序的代码加载错误记录;
第二原因确定单元,用于根据所述代码加载错误记录,确定所述异常的产生原因。
13.一种小程序的异常处理装置,包括:
条件确定模块,用于根据小程序的历史数据,确定与所述小程序的多个运行场景分别对应的多个异常判定条件;所述历史数据包括用户操作数据、小程序运行数据、以及历史异常数据集中的至少一项;
生成模块,用于基于所述多个异常判定条件,生成异常数据集;
发送模块,用于将所述异常数据集发送至运行所述小程序的终端,以使所述终端基于所述多个异常判定条件以及小程序运行中的时长数据,确定小程序在目标异常判定条件对应的运行场景中产生异常,以及确定所述小程序的异常的产生原因,并根据所述目标异常判定条件对应的运行场景的类型和所述产生原因,确定与所述运行场景的类型以及所述产生原因均匹配的处理方式,作为建议用户执行的处理方式;其中,所述多个异常判定条件对应于多个不同类型的运行场景;与所述运行场景对应的异常判定条件包括该运行场景中的一种或多种时长数据达到预设阈值;所述时长数据包括小程序获取信息的耗时、下载业务包的耗时、加载业务代码到数据渲染成功的耗时、骨架屏加载的耗时、白屏的持续时长中的至少一项;所述运行场景包括信息获取场景、小程序业务包下载场景、业务代码加载场景、骨架屏加载场景、白屏场景中的至少一项。
14.根据权利要求13所述的异常处理装置,还包括:
第二接收模块,用于接收所述终端上传的基于所述异常数据集得到的用户操作数据;
优化模块,用于根据所述用户操作数据,优化所述异常数据集。
15.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
16.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-7中任一项所述的方法。
CN202011056007.7A 2020-09-29 2020-09-29 小程序的异常处理方法、装置、电子设备和存储介质 Active CN112052185B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011056007.7A CN112052185B (zh) 2020-09-29 2020-09-29 小程序的异常处理方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011056007.7A CN112052185B (zh) 2020-09-29 2020-09-29 小程序的异常处理方法、装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN112052185A CN112052185A (zh) 2020-12-08
CN112052185B true CN112052185B (zh) 2023-11-10

Family

ID=73605434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011056007.7A Active CN112052185B (zh) 2020-09-29 2020-09-29 小程序的异常处理方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112052185B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112540804A (zh) * 2020-12-23 2021-03-23 北京百度网讯科技有限公司 小程序运行方法及装置、电子设备、介质
CN112698980A (zh) * 2021-01-05 2021-04-23 网宿科技股份有限公司 异常处理方法、电子设备、存储介质
CN112860566B (zh) * 2021-03-02 2024-04-30 百度在线网络技术(北京)有限公司 小程序检测方法、装置、电子设备以及可读介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108536486A (zh) * 2018-04-08 2018-09-14 苏州犀牛网络科技有限公司 Rn小程序的加载方法及装置
CN109542724A (zh) * 2018-11-14 2019-03-29 北京达佳互联信息技术有限公司 应用程序异常处理方法、装置、电子设备及存储介质
CN109800101A (zh) * 2019-02-01 2019-05-24 北京字节跳动网络技术有限公司 小程序异常情况的上报方法、装置、终端设备和存储介质
CN110929799A (zh) * 2019-11-29 2020-03-27 上海盛付通电子支付服务有限公司 用于检测异常用户的方法、电子设备和计算机可读介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090013208A1 (en) * 2008-03-31 2009-01-08 Dimuzio Thomas M Real time automated exception notification and reporting solution

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108536486A (zh) * 2018-04-08 2018-09-14 苏州犀牛网络科技有限公司 Rn小程序的加载方法及装置
CN109542724A (zh) * 2018-11-14 2019-03-29 北京达佳互联信息技术有限公司 应用程序异常处理方法、装置、电子设备及存储介质
CN109800101A (zh) * 2019-02-01 2019-05-24 北京字节跳动网络技术有限公司 小程序异常情况的上报方法、装置、终端设备和存储介质
CN110929799A (zh) * 2019-11-29 2020-03-27 上海盛付通电子支付服务有限公司 用于检测异常用户的方法、电子设备和计算机可读介质

Also Published As

Publication number Publication date
CN112052185A (zh) 2020-12-08

Similar Documents

Publication Publication Date Title
CN112052185B (zh) 小程序的异常处理方法、装置、电子设备和存储介质
CN111753997B (zh) 分布式训练方法、系统、设备及存储介质
CN111767069B (zh) 小程序处理方法、服务器、设备及存储介质
CN111858248B (zh) 应用监控方法、装置、设备以及存储介质
US20150067147A1 (en) Group server performance correction via actions to server subset
CN111984476B (zh) 测试方法和装置
CN111813623B (zh) 一种页面监控方法、装置、电子设备及存储介质
CN112235417B (zh) 调试指令的发送方法、装置
CN111913884A (zh) 分布式测试方法、装置、设备、系统和可读存储介质
CN112817656B (zh) 小程序运行方法和装置
CN112491617B (zh) 一种链路跟踪方法、装置、电子设备和介质
CN111241396B (zh) 信息推送的方法和装置、电子设备、存储介质
CN111625195A (zh) 用于服务器扩容的方法及装置
CN113971277A (zh) 多用户登录方法和装置
CN112667795A (zh) 对话树构建方法和装置、对话树运行方法、装置以及系统
CN112084000A (zh) 容器集群的测试方法和装置
CN111338937B (zh) 一种对小程序干预下线的方法、装置、设备和介质
JP7147123B2 (ja) ソースチャネル決定方法、装置、機器、プログラム及びコンピューター記憶媒体
CN112752323B (zh) 热点接入状态的改变方法和装置
JP7153766B2 (ja) Plcの資産の切り替えを検出する方法
CN111597026B (zh) 用于获取信息的方法及装置
CN112114991B (zh) 小程序的异常处理方法、装置、电子设备和存储介质
CN112735601B (zh) 利用蓝牙确定传染病密接人群的测试方法、装置及设备
CN113655906A (zh) 折叠屏控制方法和装置
CN111857887B (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