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

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

Info

Publication number
CN112114991B
CN112114991B CN202010984990.2A CN202010984990A CN112114991B CN 112114991 B CN112114991 B CN 112114991B CN 202010984990 A CN202010984990 A CN 202010984990A CN 112114991 B CN112114991 B CN 112114991B
Authority
CN
China
Prior art keywords
applet
abnormal event
version number
influence
influence degree
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
CN202010984990.2A
Other languages
English (en)
Other versions
CN112114991A (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 CN202010984990.2A priority Critical patent/CN112114991B/zh
Publication of CN112114991A publication Critical patent/CN112114991A/zh
Application granted granted Critical
Publication of CN112114991B publication Critical patent/CN112114991B/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/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • 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/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了小程序的异常处理方法、装置、电子设备和存储介质,涉及小程序领域。具体实现方案为:响应于确定终端中的小程序运行中出现异常事件,获取终端中的小程序日志;根据小程序日志,确定日志特征集合;根据日志特征集合和预先训练的智能分析模型,得到异常事件在小程序中的影响度;根据异常事件在小程序中的影响度,确定是否在小程序中修复异常事件。本申请实施例可以提高异常处理的效率。

Description

小程序的异常处理方法、装置、电子设备和存储介质
技术领域
本申请涉及计算机技术领域,尤其涉及小程序领域。
背景技术
小程序是一种不需要下载安装即可使用的应用程序。由于小程序具有轻量化、即用即走等优点,所以,小程序的使用场景日趋丰富,功能也日趋复杂。相应地,在小程序使用过程中出现的异常事件也逐渐增多。
针对小程序的异常事件,一般由开发人员或测试人员手动运行小程序,在复现出异常事件时,根据经验确定对应的修复策略。
发明内容
本申请提供了一种小程序的异常处理方法、装置、电子设备和存储介质。
根据本申请的一方面,提供了一种小程序的异常处理方法,包括:
响应于确定终端中的小程序运行中出现异常事件,获取终端中的小程序日志;
根据小程序日志,确定日志特征集合;
根据日志特征集合和预先训练的智能分析模型,得到异常事件在小程序中的影响度;
根据异常事件在小程序中的影响度,确定是否在小程序中修复异常事件。
根据本申请的另一方面,提供了一种小程序的异常处理装置,包括:
第一获取模块,用于响应于确定终端中的小程序运行中出现异常事件,获取终端中的小程序日志;
第一确定模块,用于根据小程序日志,确定日志特征集合;
第一影响度模块,用于根据日志特征集合和预先训练的智能分析模型,得到异常事件在小程序中的影响度;
第二确定模块,用于根据异常事件在小程序中的影响度,确定是否在小程序中修复异常事件。
根据本申请的另一方面,提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请任一实施例提供的方法。
根据本申请的另一方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行本申请任一实施例提供的方法。
根据本申请的另一方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现如上所述的方法。
根据本申请的技术方案,利用小程序日志和智能分析模型,得到异常事件在小程序中的影响度,并基于影响度确定修复策略,提高了异常处理的效率。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请一个实施例的小程序的异常处理方法的示意图;
图2是根据本申请另一个实施例的小程序的异常处理方法的示意图;
图3是根据本申请又一个实施例的小程序的异常处理方法的示意图;
图4是本申请一个应用示例的示意图;
图5是根据本申请一个实施例的小程序的异常处理装置的示意图;
图6是根据本申请另一个实施例的小程序的异常处理装置的示意图;
图7是用来实现本申请实施例的小程序的异常处理方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了本申请一个实施例的小程序的异常处理方法的示意图。该方法可以应用于小程序的性能监控平台、反馈平台等。该方法包括以下步骤:
步骤S11,响应于确定终端中的小程序运行中出现异常事件,获取终端中的小程序日志;
本申请实施例中,异常事件可以包括小程序运行中出现的影响用户操作或降低用户体验的事件,例如白屏、加载缓慢、画面定格等。
在一种实施方式中,可以在小程序或小程序的宿主应用中设置反馈菜单,用户在终端上使用小程序时发现异常事件,通过在反馈菜单上的操作,触发终端将异常事件上报至反馈平台,并将终端中的小程序日志上传至反馈平台。
在一种实施方式中,开发人员基于测试结果或客服反馈,确定某个终端中的小程序出现异常事件,可以在性能监控平台上向该终端下发日志回捞指令,以获取终端中的小程序日志。
示例性地,小程序日志用于记录小程序运行中的时间、操作、操作结果、报错信息等,例如记录用户在16:00点击了下载视频、视频的下载用时、视频下载是否成功、下载失败时产生的报错信息等。可以在小程序代码中预先设置日志收集埋点,当小程序运行到埋点时,自动将相关信息写入小程序日志中。
步骤S12,根据小程序日志,确定日志特征集合;
在获取小程序日志后,可以提取与小程序日志的特征信息,例如版本信息、报错信息、报错次数、正常执行次数、开发者配置信息、调用过的API(Application ProgrammingInterface,应用程序接口)等。基于这些特征信息,得到日志特征集合。
其中,日志特征集合中的版本信息为当前版本号,即收集日志的终端上所运行的小程序的版本号。
步骤S13,根据日志特征集合和预先训练的智能分析模型,得到异常事件在小程序中的影响度;
在具体实施时,可以获取海量历史异常事件对应的小程序日志,提取特征集合,并标注影响度,利用特征集合和影响度训练智能分析模型。基于此,智能分析模型能够根据输入的特征集合,输出影响度。
其中,影响度可以用于表征异常事件的发生概率或者用于表征异常事件发生后用户体验的下降程度。在训练模型时,可以由开发人员人工标注影响度,或者基于用户反馈的体验评分、历史数据统计结果等得到各个特征集合对应的影响度。
步骤S14,根据异常事件在小程序中的影响度,确定是否在小程序中修复异常事件。
本申请实施例中,影响度可以量化异常事件的发生概率或用户体验的下降程度,例如异常事件在小程序的影响度越大则表示小程序版本中异常事件发生的概率较高或者异常事件对用户的影响较大。因此,根据影响度可以确定较为准确的修复策略。
举例而言,可以在影响度大于或等于预设阈值的情况下,确定在小程序中修复异常事件;在影响度小于预设阈值的情况下,确定不在小程序中修复异常事件,例如可以不修复或者在新版本小程序中修复异常事件。
根据本申请实施例的技术方案,利用小程序日志和智能分析模型,得到异常事件在小程序中的影响度,基于此评估是否在小程序中修复异常事件。由于采用了小程序日志记录异常事件的相关信息,无需人工复现小程序的异常事件,因此,可以提高异常处理的效率。并且,利用智能分析模型能够得到可量化的影响度,基于此可以得到客观、准确的处理策略,提升处理效果。
示例性地,日志特征集合包括版本信息。其中,版本信息可以是小程序的当前版本号,因此,基于日志特征集合中的版本信息,得到的是异常时间在当前版本号对应的小程序中的影响度。即在上述步骤S13中,根据日志特征集合和预先训练的智能分析模型,得到异常事件在小程序中的影响度,包括:
根据日志特征集合和预先训练的智能分析模型,得到异常事件在当前版本号对应的小程序中的影响度。
在上述步骤S14中,根据异常事件在小程序中的影响度,确定是否在小程序中修复异常事件,包括:
根据异常事件在当前版本号对应的小程序中的影响度,确定是否在当前版本号对应的小程序中修复异常事件。
例如,对于获取到的小程序日志,其对应的日志特征集合中包括n种特征信息,分别为X1、X2、X3……Xn,其中X2为版本信息。由于该小程序日志是在版本号为1200的小程序运行时收集到的,所以X2=1200。根据日志特征集合和智能分析模型,可以得到异常事件在版本号1200对应的小程序中的影响度为50。预设阈值为40,由于影响度大于预设阈值,因此确定在版本号1200对应的小程序中修复异常事件。
基于此,智能分析模型可以针对特定版本号的小程序输出影响度,从而得到更有针对性的修复策略。
在一种示例性的实施方式中,如图2所示,小程序的异常处理方法还可以包括:
步骤S21,将日志特征集合中的版本信息由当前版本号改为目标版本号,得到调整后的日志特征集合,将调整后的日志特征集合作为目标特征集合;
步骤S22,根据目标特征集合和智能分析模型,得到异常事件在目标版本号对应的小程序中的影响度;
步骤S23,根据异常事件在目标版本号对应的小程序中的影响度,确定是否在目标版本号对应的小程序中修复异常事件。
例如,对于日志特征集合中的n种特征信息X1、X2、X3……Xn,将其中的版本信息X2从当前版本号1200修改为目标版本号1126,而X1和X3、X4……Xn保持不变,得到新的特征信息的集合,记为目标特征集合。根据日志特征集合和智能分析模型,可以得到异常事件在版本号1126对应的小程序中的影响度为10,预设阈值为40,由于影响度小于预设阈值,因此确定不在版本号1126对应的小程序中修复异常事件。
可见,根据上述示例性的实施方式,在确定异常事件在当前版本号对应的小程序中的影响度,并确定是否在当前版本号对应的小程序中修复异常事件后,还可以预测异常事件在其他版本号对应的小程序中的影响度,据此确定是否在其他版本号对应的小程序中修复异常事件。举例而言,某终端上使用的是版本号为1200的小程序,基于该终端上传的小程序日志的特征集合,确定是否要对版本号为1200的小程序进行修复。然后,将特征集合中的版本号修改为1126,则可以预测是否要对版本号为1126的小程序进行修复,无需获取版本号为1126的小程序的日志。
该实施方式可以预测异常事件在其他版本号对应的小程序中的影响度,可以更全面地确定异常事件的修复策略。并且,由于无需获取其他版本号的小程序的日志,提高了处理效率并且保障了用户隐私。
在一种示例性的实施方式中,目标版本号包括宿主应用版本号和前端框架版本号。如图3所示,小程序的异常处理方法还包括:
步骤S31,根据异常事件在当前版本号对应的小程序中的影响度以及在目标版本号的宿主应用版本号对应的小程序中的影响度,计算第一影响度差值;
步骤S32,根据异常事件在当前版本号对应的小程序中的影响度以及在目标版本号的前端框架版本号对应的小程序中的影响度,计算第二影响度差值;
步骤S33,根据第一影响度差值和第二影响度差值,确定在宿主应用更新对应的新版本小程序中修复异常事件或在前端框架更新对应的新版本小程序中修复异常事件。
示例性地,日志特征集合中的当前版本号也包括宿主应用版本号和前端框架版本号。将日志特征集合中的宿主应用版本号修改为目标版本号中的宿主应用版本号,可以确定异常事件在目标版本号的宿主应用版本号对应的小程序中的影响度。将日志特征集合中的前端框架版本号修改为目标版本号中的前端框架版本号,可以确定异常事件在目标版本号的前端框架版本号对应的小程序中的影响度。根据第一影响度差值和第二影响度差值,可以分析异常事件的影响度是与宿主应用版本较相关或是与前端框架版本较相关,从而确定在宿主应用版本更新时对应的新版本小程序中修复异常事件,还是在前端框架更新对应的新版本小程序中修复异常事件。
例如,当前版本号中,宿主应用版本号为1200,前端框架版本号为005,异常事件在宿主应用版本号为1200、前端框架版本号为005的小程序中,影响度为50。
目标版本号中,宿主应用版本号为1126,前端框架版本号为006。
将宿主应用版本号修改为1126,保持前端框架版本号为005,得到异常事件在宿主应用版本号为1126、前端框架版本号为005的小程序中,影响度为10。
将前端框架版本号修改为006,保持宿主应用版本号为1200,得到异常事件在宿主应用版本号为1200、前端框架版本号为006的小程序中,影响度为20。
基于此,计算得到第一影响度差值为(50-10)=40,第二影响度差值为(50-20)=30。可见,宿主应用版本变化时,影响度变化较大;前端框架应用版本变化时,影响度变化较小。在此基础上,可以确定在宿主应用版本更新对应的新版本小程序中修复异常事件,避免因宿主应用版本更新而导致异常事件的影响扩大。换句话说,如果下一次发布的新版本小程序是因宿主应用更新而发布,则需要针对新版本小程序修复异常事件。如果下一次发布的新版本小程序是因前端框架更新而发布,则暂不需要针对新版本小程序修复异常事件。
根据该示例性的实施方式,可以确定修复异常事件的时机,合理调度小程序的修复次序,从而提高平台对各种异常事件的处理效率。
示例性地,根据第一影响度差值和第二影响度差值,确定在宿主应用更新对应的新版本小程序中修复异常事件或在前端框架更新对应的新版本小程序中修复异常事件,包括:
在第一影响度差值大于第二影响度差值的情况下,确定在宿主应用更新对应的新版本小程序中修复异常事件;
在第一影响度差值小于第二影响度差值的情况下,确定在前端框架更新对应的新版本小程序中修复异常事件。
根据该示例性的实施方式,确定针对影响度差值较大的版本类型进行修复,避免异常事件的影响扩大,确定准确的处理策略。
示例性地,在上述步骤S11的一种可选的实施方式中,获取终端中的小程序日志,可以包括:
通过长连接通路向终端发送回捞指令;
接收终端返回的小程序日志。
其中,长连接通路是即时通信(Instant Message,IM)使用的信道。性能监控平台或反馈平台等利用长链接通路发送回捞指令后,终端在线时能及时收到回捞指令。终端接收到回捞指令后,提取小程序日志并上传到平台。
由于上述实施方式能够在用户没有主动上传日志的情况下,及时获取小程序日志,提高异常处理效率。
示例性地,小程序的异常处理方法还可以包括:
获取小程序日志中与异常事件对应的报错信息;
根据报错信息的报错类型,更新报错类型的累计次数;
在累计次数达到预设阈值时,生成告警信息。
实际应用时,小程序日志中可以记录异常事件对应的报错信息。报错信息一般采用编码表示。例如异常事件为下载数据不成功,根据异常事件的出现时间查找当时的报错信息。报错信息可以是2200,表示下载路径不存在;或者是2201,表示没有磁盘空间存储文件包等。
在示例性的实施方式中,可以对报错信息进行归类,例如将上述2200和2201归为下载类型的报错信息。平台可以累计各种类型的报错信息,当累计次数达到预设阈值时生成告警信息。
根据该示例性的实施方式,可以在同一类型的异常事件出现次数较多时,生成告警信息,及时向开发人员报警,以加快异常处理效率,避免用户体验持续下降。
图4是根据上述小程序的异常处理方法的一个应用示例的示意图。在该应用示例中,小程序的异常处理方法包括5部分:
(1)运行时日志:终端可以提前对小程序运行过程中的日志埋点进行梳理并预埋到代码执行过程中,日志信息可以包括具体的执行步骤、结果、异常问题等。
(2)文件存储:采用高性能存储方式将日志信息写入磁盘文件中,例如采用mmap内存映射方式将日志信息写入磁盘中的小程序日志中。
(3)日志上报:当用户点击小程序菜单中的反馈入口进行问题反馈时,会将已存储的小程序日志压缩并上报到反馈平台,从而可以从反馈平台下载小程序日志。
(4)运行快照:按时间的先后顺序,程序会根据收集的小程序日志提取不同特征,根据特征生成运行快照。
提取的日志特征包括宿主版本、小程序包版本、小程序前端框架版本、报错信息、报错次数、正常执行情况、开发者配置信息、小程序调用过的API等。
(5)平台程序根据运行快照产生的信息作为输入,通过人工智能算法不断训练,产生一个可靠的人工智能分析模型,来评估异常事件的影响度。可以将影响度作为一种有效的问题归类方式,如按影响程度相同的异常事件作为同类的异常事件。同时,可以通过调整快照参数,来评估当前异常时间是否会在其他参数取值下产生较高的影响度,如调整宿主版本号后通过预测结果来判断该异常事件在其他宿主版本上的影响面。
在一个具体的示例中,终端A的用户通过小程序菜单中反馈异常事件“小程序打开白屏”。然后,平台获取终端A的小程序日志文件,提取日志特征,每个特征对应一个快照参数Xn,提取n种特征,从而得到快照参数X1,X2,…,Xn。将得到的快照参数作为输入参数,在智能模型中训练,并不断训练校准,产生输出结果,表示异常时间的影响度,该结果可以是一个整数,数字越大表示影响越大。将产生结果值相同的异常事件归为一类,并按结果从大到小排序,可很容易将批量异常事件集中分类。假设智能分析产生结果为50,可以修改X1,X2,…,Xn的取值,如小程序宿主版本号由原来的1200改为1126,其他参数不变的情况下结果为10,得出50>10则表明该异常时间在宿主版本号为1200的小程序中的影响比在1126的影响大。同样方式,可以评估异常事件对前端框架的不同版本的影响。
图5示出了本申请一个实施例中的小程序的异常处理装置的示意图,该装置包括:
第一获取模块510,用于响应于确定终端中的小程序运行中出现异常事件,获取终端中的小程序日志;
第一确定模块520,用于根据小程序日志,确定日志特征集合;
第一影响度模块530,用于根据日志特征集合和预先训练的智能分析模型,得到异常事件在小程序中的影响度;
第二确定模块540,用于根据异常事件在小程序中的影响度,确定是否在小程序中修复异常事件。
示例性地,日志特征集合中的版本信息为小程序的当前版本号;
第一影响度模块用于根据日志特征集合和预先训练的智能分析模型,得到异常事件在当前版本号对应的小程序中的影响度;
第二确定模块用于根据异常事件在当前版本号对应的小程序中的影响度,确定是否在当前版本号对应的小程序中修复异常事件。
示例性地,如图6所示,该装置还包括:
调整模块610,用于将日志特征集合中的版本信息由当前版本号改为目标版本号,得到调整后的日志特征集合,将调整后的日志特征集合作为目标特征集合;
第二影响度模块620,用于根据目标特征集合和智能分析模型,得到异常事件在目标版本号对应的小程序中的影响度;
第三确定模块630,用于根据异常事件在目标版本号对应的小程序中的影响度,确定是否在目标版本号对应的小程序中修复异常事件。
示例性地,目标版本号包括宿主应用版本号和前端框架版本号;
如图6所示,该装置还包括:
第一计算模块640,用于根据异常事件在当前版本号对应的小程序中的影响度以及在目标版本号的宿主应用版本号对应的小程序中的影响度,计算第一影响度差值;
第二计算模块650,用于根据异常事件在当前版本号对应的小程序中的影响度以及在目标版本号的前端框架版本号对应的小程序中的影响度,计算第二影响度差值;
第四确定模块660,用于根据第一影响度差值和第二影响度差值,确定在宿主应用更新对应的新版本小程序中修复异常事件或在前端框架更新对应的新版本小程序中修复异常事件。
示例性地,如图6所示,第四确定模块660包括:
第一确定单元661,用于在第一影响度差值大于第二影响度差值的情况下,确定在宿主应用更新对应的新版本小程序中修复异常事件;
第二确定单元662,用于在第一影响度差值小于第二影响度差值的情况下,确定在前端框架更新对应的新版本小程序中修复异常事件。
示例性地,如图6所示,第一获取模块510包括:
发送单元511,用于通过长连接通路向终端发送回捞指令;
接收单元512,用于接收终端返回的小程序日志。
示例性地,如图6所示,该装置还包括:
第二获取模块670,用于获取小程序日志中与异常事件对应的报错信息;
更新模块680,用于根据报错信息的报错类型,更新报错类型的累计次数;
告警模块690,用于在累计次数达到预设阈值时,生成告警信息。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
如图7所示,是根据本申请实施例的小程序的异常处理方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图7所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图7中以一个处理器701为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,存储器存储有可由至少一个处理器执行的指令,以使至少一个处理器执行本申请所提供的小程序的异常处理方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的小程序的异常处理方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的小程序的异常处理方法对应的程序指令/模块(例如,附图5所示的第一获取模块510、第一确定模块520、第一影响度模块530、第二确定模块540)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的小程序的异常处理方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据小程序的异常处理方法的电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至小程序的异常处理方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
小程序的异常处理方法的电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图7中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,以及产生与小程序的异常处理方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与虚拟专用服务器(VPS)服务中,存在的管理难度大,业务扩展性弱的缺陷。
根据本申请实施例的技术方案,利用小程序日志和智能分析模型,得到异常事件在当前版本号对应的小程序中的影响度,基于此评估是否在当前版本号对应的小程序中修复所述异常事件。由于采用了小程序日志记录异常事件的相关信息,无需人工复现小程序的异常事件,因此,可以提高异常处理的效率。并且,利用智能分析模型能够得到可量化的影响度,基于此可以得到客观、准确的处理策略,提升处理效果。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (14)

1.一种小程序的异常处理方法,包括:
响应于确定终端中的小程序运行中出现异常事件,获取所述终端中的小程序日志;
根据所述小程序日志,确定日志特征集合;所述日志特征集合中的版本信息为所述小程序的当前版本号;
根据所述日志特征集合和预先训练的智能分析模型,得到所述异常事件在所述小程序中的影响度;
根据所述异常事件在所述小程序中的影响度,确定是否在所述小程序中修复所述异常事件;
所述根据所述异常事件在所述小程序中的影响度,确定是否在所述小程序中修复所述异常事件,包括:
根据所述异常事件在所述当前版本号对应的小程序中的影响度,确定是否在所述当前版本号对应的小程序中修复所述异常事件;
所述根据所述异常事件在所述当前版本号对应的小程序中的影响度,确定是否在所述当前版本号对应的小程序中修复所述异常事件,包括:
在所述影响度大于或等于预设阈值的情况下,确定在所述当前版本号对应的小程序中修复所述异常事件;在所述影响度小于预设阈值的情况下,确定不在所述当前版本号对应的小程序中修复所述异常事件;
所述方法还包括:
将所述日志特征集合中的版本信息由所述当前版本号改为目标版本号,得到调整后的日志特征集合,将调整后的日志特征集合作为目标特征集合;
根据所述目标特征集合和所述智能分析模型,得到所述异常事件在所述目标版本号对应的小程序中的影响度;
根据所述异常事件在所述目标版本号对应的小程序中的影响度,确定是否在所述目标版本号对应的小程序中修复所述异常事件。
2.根据权利要求1所述的方法,其中,
所述根据所述日志特征集合和预先训练的智能分析模型,得到所述异常事件在所述小程序中的影响度,包括:
根据所述日志特征集合和预先训练的智能分析模型,得到所述异常事件在所述当前版本号对应的小程序中的影响度。
3.根据权利要求1所述的方法,其中,所述目标版本号包括宿主应用版本号和前端框架版本号;
所述方法还包括:
根据所述异常事件在所述当前版本号对应的小程序中的影响度以及在所述目标版本号的宿主应用版本号对应的小程序中的影响度,计算第一影响度差值;
根据所述异常事件在所述当前版本号对应的小程序中的影响度以及在所述目标版本号的前端框架版本号对应的小程序中的影响度,计算第二影响度差值;
根据所述第一影响度差值和所述第二影响度差值,确定在宿主应用更新对应的新版本小程序中修复所述异常事件或在前端框架更新对应的新版本小程序中修复所述异常事件。
4.根据权利要求3所述的方法,其中,所述根据所述第一影响度差值和所述第二影响度差值,确定在宿主应用更新对应的新版本小程序中修复所述异常事件或在前端框架更新对应的新版本小程序中修复所述异常事件,包括:
在所述第一影响度差值大于所述第二影响度差值的情况下,确定在宿主应用更新对应的新版本小程序中修复所述异常事件;
在所述第一影响度差值小于所述第二影响度差值的情况下,确定在前端框架更新对应的新版本小程序中修复所述异常事件。
5.根据权利要求1至4中任一项所述的方法,其中,所述获取所述终端中的小程序日志,包括:
通过长连接通路向所述终端发送回捞指令;
接收所述终端返回的小程序日志。
6.根据权利要求1至4中任一项所述的方法,还包括:
获取所述小程序日志中与所述异常事件对应的报错信息;
根据所述报错信息的报错类型,更新所述报错类型的累计次数;
在所述累计次数达到预设阈值时,生成告警信息。
7.一种小程序的异常处理装置,包括:
第一获取模块,用于响应于确定终端中的小程序运行中出现异常事件,获取所述终端中的小程序日志;
第一确定模块,用于根据所述小程序日志,确定日志特征集合;所述日志特征集合中的版本信息为所述小程序的当前版本号;
第一影响度模块,用于根据所述日志特征集合和预先训练的智能分析模型,得到所述异常事件在所述小程序中的影响度;
第二确定模块,用于根据所述异常事件在所述小程序中的影响度,确定是否在所述小程序中修复所述异常事件;
所述第二确定模块用于根据所述异常事件在所述当前版本号对应的小程序中的影响度,确定是否在所述当前版本号对应的小程序中修复所述异常事件;
所述第二确定模块,具体用于在所述影响度大于或等于预设阈值的情况下,确定在所述当前版本号对应的小程序中修复所述异常事件;在所述影响度小于预设阈值的情况下,确定不在所述当前版本号对应的小程序中修复所述异常事件;
所述装置还包括:
调整模块,用于将所述日志特征集合中的版本信息由所述当前版本号改为目标版本号,得到调整后的日志特征集合,将调整后的日志特征集合作为目标特征集合;
第二影响度模块,用于根据所述目标特征集合和所述智能分析模型,得到所述异常事件在所述目标版本号对应的小程序中的影响度;
第三确定模块,用于根据所述异常事件在所述目标版本号对应的小程序中的影响度,确定是否在所述目标版本号对应的小程序中修复所述异常事件。
8.根据权利要求7所述的装置,其中,
所述第一影响度模块用于根据所述日志特征集合和预先训练的智能分析模型,得到所述异常事件在所述当前版本号对应的小程序中的影响度。
9.根据权利要求7所述的装置,其中,所述目标版本号包括宿主应用版本号和前端框架版本号;
所述装置还包括:
第一计算模块,用于根据所述异常事件在所述当前版本号对应的小程序中的影响度以及在所述目标版本号的宿主应用版本号对应的小程序中的影响度,计算第一影响度差值;
第二计算模块,用于根据所述异常事件在所述当前版本号对应的小程序中的影响度以及在所述目标版本号的前端框架版本号对应的小程序中的影响度,计算第二影响度差值;
第四确定模块,用于根据所述第一影响度差值和所述第二影响度差值,确定在宿主应用更新对应的新版本小程序中修复所述异常事件或在前端框架更新对应的新版本小程序中修复所述异常事件。
10.根据权利要求9所述的装置,其中,所述第四确定模块包括:
第一确定单元,用于在所述第一影响度差值大于所述第二影响度差值的情况下,确定在宿主应用更新对应的新版本小程序中修复所述异常事件;
第二确定单元,用于在所述第一影响度差值小于所述第二影响度差值的情况下,确定在前端框架更新对应的新版本小程序中修复所述异常事件。
11.根据权利要求7至10中任一项所述的装置,其中,所述第一获取模块包括:
发送单元,用于通过长连接通路向所述终端发送回捞指令;
接收单元,用于接收所述终端返回的小程序日志。
12.根据权利要求7至10中任一项所述的装置,还包括:
第二获取模块,用于获取所述小程序日志中与所述异常事件对应的报错信息;
更新模块,用于根据所述报错信息的报错类型,更新所述报错类型的累计次数;
告警模块,用于在所述累计次数达到预设阈值时,生成告警信息。
13.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的方法。
CN202010984990.2A 2020-09-18 2020-09-18 小程序的异常处理方法、装置、电子设备和存储介质 Active CN112114991B (zh)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
CN112114991A CN112114991A (zh) 2020-12-22
CN112114991B true CN112114991B (zh) 2024-01-16

Family

ID=73801371

Family Applications (1)

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

Country Status (1)

Country Link
CN (1) CN112114991B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114546027A (zh) * 2022-02-24 2022-05-27 武汉中旗生物医疗电子有限公司 一种数据采集时间校正方法、装置、设备及存储介质
CN115098294B (zh) * 2022-08-24 2022-11-15 摩尔线程智能科技(北京)有限责任公司 异常事件的处理方法、电子设备及管理终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106708734A (zh) * 2016-12-13 2017-05-24 腾讯科技(深圳)有限公司 软件异常检测方法及装置
CN108491320A (zh) * 2018-03-05 2018-09-04 平安普惠企业管理有限公司 应用程序的异常分析方法、装置、计算机设备和存储介质
CN109324918A (zh) * 2018-09-13 2019-02-12 广东小天才科技有限公司 应用程序异常的处理方法及装置、终端及存储介质
GB201918563D0 (en) * 2019-12-16 2020-01-29 British Telecomm Anomaly detection for code management

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11036811B2 (en) * 2018-03-16 2021-06-15 Adobe Inc. Categorical data transformation and clustering for machine learning using data repository systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106708734A (zh) * 2016-12-13 2017-05-24 腾讯科技(深圳)有限公司 软件异常检测方法及装置
CN108491320A (zh) * 2018-03-05 2018-09-04 平安普惠企业管理有限公司 应用程序的异常分析方法、装置、计算机设备和存储介质
CN109324918A (zh) * 2018-09-13 2019-02-12 广东小天才科技有限公司 应用程序异常的处理方法及装置、终端及存储介质
GB201918563D0 (en) * 2019-12-16 2020-01-29 British Telecomm Anomaly detection for code management

Also Published As

Publication number Publication date
CN112114991A (zh) 2020-12-22

Similar Documents

Publication Publication Date Title
US10831585B2 (en) System and method for online unsupervised event pattern extraction and holistic root cause analysis for distributed systems
US11023355B2 (en) Dynamic tracing using ranking and rating
CN112114991B (zh) 小程序的异常处理方法、装置、电子设备和存储介质
US20100131952A1 (en) Assistance In Performing Action Responsive To Detected Event
CN111552646B (zh) 用于回归测试的方法和装置
CN112015665B (zh) 测试验证的回溯方法、装置、电子设备及存储介质
CN112052185B (zh) 小程序的异常处理方法、装置、电子设备和存储介质
KR102488582B1 (ko) 애플리케이션 실행 상태 검증 방법 및 장치
US9430318B2 (en) Health monitoring and recovery for infrastructure devices
CN109299124B (zh) 用于更新模型的方法和装置
US11537391B2 (en) Software change analysis and automated remediation
CN111680599B (zh) 人脸识别模型处理方法、装置、设备和存储介质
CN110958137B (zh) 流量管理方法、装置及电子设备
Xu et al. Crying wolf and meaning it: Reducing false alarms in monitoring of sporadic operations through pod-monitor
CN112231039A (zh) 工单信息统计方法、装置、计算机设备和存储介质
JP7339321B2 (ja) 機械学習モデル更新方法、コンピュータプログラムおよび管理装置
CN111338937B (zh) 一种对小程序干预下线的方法、装置、设备和介质
CN111767170B (zh) 设备的操作复原方法、装置、设备以及存储介质
CN112015623B (zh) 报表数据处理的方法、装置、设备及可读存储介质
CN111597026B (zh) 用于获取信息的方法及装置
CN111597461B (zh) 一种目标对象聚集预测方法、装置以及电子设备
EP3832985A1 (en) Method and apparatus for processing local hot spot, electronic device and storage medium
CN113868090A (zh) 应用程序监控方法及装置
CN109445877B (zh) 一种检测游戏服务器多线程使用同一虚拟机的方法
CN113190451A (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