CN113613063A - 应用异常还原方法、设备、计算机程序产品及存储介质 - Google Patents

应用异常还原方法、设备、计算机程序产品及存储介质 Download PDF

Info

Publication number
CN113613063A
CN113613063A CN202110810628.8A CN202110810628A CN113613063A CN 113613063 A CN113613063 A CN 113613063A CN 202110810628 A CN202110810628 A CN 202110810628A CN 113613063 A CN113613063 A CN 113613063A
Authority
CN
China
Prior art keywords
snapshot
application
incremental
full
snapshots
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
CN202110810628.8A
Other languages
English (en)
Other versions
CN113613063B (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.)
Shenzhen Mingyuan Cloud Technology Co Ltd
Original Assignee
Shenzhen Mingyuan Cloud 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 Shenzhen Mingyuan Cloud Technology Co Ltd filed Critical Shenzhen Mingyuan Cloud Technology Co Ltd
Priority to CN202110810628.8A priority Critical patent/CN113613063B/zh
Publication of CN113613063A publication Critical patent/CN113613063A/zh
Application granted granted Critical
Publication of CN113613063B publication Critical patent/CN113613063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/4425Monitoring of client processing errors or hardware failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • 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)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Television Signal Processing For Recording (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本发明公开了应用异常还原方法、设备、计算机程序产品及存储介质,该方法包括:在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照,其中,两个全量快照之间包括至少两个增量快照;基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件;播放所述异常视频文件以对所述应用的异常进行还原,解决现有技术中无法准确还原异常场景的技术问题,实现异常场景的还原。

Description

应用异常还原方法、设备、计算机程序产品及存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用异常还原方法、设备、计算机程序产品及存储介质。
背景技术
在排查基于浏览器应用异常的过程中,开发人员通常希望能够还原用户在使用过程中出现异常的真实场景,现有技术中,通过采用将日志与应用或代码进行逐一比对,以还原用户实际操作,但是,代码和应用的迭代更新速度较快时,根据日志内容无法准确还原引发异常的场景。
发明内容
本申请实施例通过提供一种应用异常还原方法、系统、设备及存储介质,旨在解决无法准确还原异常场景的问题。
本申请实施例提供了一种应用异常还原方法,所述应用异常还原方法,包括:
在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照,其中,两个全量快照之间包括至少两个增量快照;
基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件;
播放所述异常视频文件。
在一实施例中,所述在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤之前包括:
在进入所述应用时,记录用户操作页面的全量快照;
在应用的使用过程中,记录用户操作页面的增量快照;
在增量快照的数量达到预设数量时,记录当前操作页面的全量快照;
返回执行所述在应用的使用过程中,记录用户操作页面的增量快照的步骤。
在一实施例中,所述全量快照以及所述增量快照均记录于缓存队列中,所述在增量快照的数量达到预设数量时,记录当前操作页面的全量快照的步骤包括:
在增量快照的数量达到预设数量时,删除所述缓存队列中预设数量的快照;
记录当前操作页面的全量快照。
在一实施例中,所述在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤包括:
在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常;
若所述异常为首次出现的异常时,从缓存队列中获取当前时间点对应的全量快照以及所述全量快照对应的增量快照。
在一实施例中,所述在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常的步骤之后还包括:
若判定所述异常不是当前时间点之前的首个异常时,从缓存队列中获取当前时间点之前的全量快照以及增量快照。
在一实施例中,所述播放所述异常视频文件的步骤之前包括:
判断是否具有所述异常视频文件的播放权限;
在具有所述异常视频文件的播放权限时,执行播放所述异常视频文件的步骤。
在一实施例中,所述应用异常还原方法还包括:
在检测到应用运行异常时,确定当前时间点与上一次异常的时间点之间的时间间隔;
在所述时间间隔小于或等于预设时间间隔时,播放上一次异常的异常视频文件作为当前异常对应的异常视频文件;
在所述时间间隔大于预设时间间隔时,执行所述获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤。
此外,为实现上述目的,本发明还提供了一种应用异常还原设备,所述应用异常还原设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用异常还原程序,所述应用异常还原程序被所述处理器执行时实现上述的应用异常还原方法的步骤。
此外,为实现上述目的,本发明还提供了一种计算机程序产品,所述计算机程序产品包括应用异常还原程序,所述应用异常还原程序被处理器执行时实现如上述的应用异常还原方法的各个步骤。
此外,为实现上述目的,本发明还提供了一种存储介质,所述存储介质存储有应用异常还原程序,所述应用异常还原程序被处理器执行时实现上述的应用异常还原方法的步骤。
本申请实施例中提供的一种应用异常还原方法、设备、计算机程序产品及存储介质的技术方案,本申请在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照;基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件,通过以视频的形式记录异常发生前一小段时间的用户操作,开发人员通过查看异常日志可对所述视频进行播放,解决现有技术中无法准确还原异常场景的技术问题,实现异常场景的还原。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的结构示意图;
图2为本发明应用异常还原方法第一实施例的流程示意图;
图3为本发明应用异常还原方法第二实施例的流程示意图;
图4为本发明应用异常还原方法第三实施例的流程示意图;
图5为本发明应用异常还原方法第四实施例的流程示意图;
图6为本发明应用异常还原方法第六实施例的流程示意图;
图7为本发明应用异常还原方法第七实施例的流程示意图;
图8为本发明快照采集策略示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明,上述附图只是一个实施例图,而不是发明的全部。
具体实施方式
为了更好的理解上述技术方案,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
如图1所示,图1为本发明实施例方案涉及的硬件运行环境的结构示意图。
需要说明的是,图1即可为应用异常还原设备的硬件运行环境的结构示意图。
如图1所示,该应用异常还原设备可以包括:处理器1001,例如CPU,存储器1005,用户接口1003,网络接口1004,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的应用异常还原设备结构并不构成对应用异常还原设备限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及应用异常还原程序。其中,操作系统是管理和控制应用异常还原设备硬件和软件资源的程序,应用异常还原程序以及其它软件或程序的运行。
在图1所示的应用异常还原设备中,用户接口1003主要用于连接终端,与终端进行数据通信;网络接口1004主要用于后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的应用异常还原程序。
在本实施例中,应用异常还原设备包括:存储器1005、处理器1001及存储在所述存储器上并可在所述处理器上运行的应用异常还原程序,其中:
处理器1001调用存储器1005中存储的应用异常还原程序时,执行以下操作:
在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照,其中,两个全量快照之间包括至少两个增量快照;
基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件;
播放所述异常视频文件。
处理器1001调用存储器1005中存储的应用异常还原程序时,还执行以下操作:
在进入所述应用时,记录用户操作页面的全量快照;
在应用的使用过程中,记录用户操作页面的增量快照;
在增量快照的数量达到预设数量时,记录当前操作页面的全量快照;
返回执行所述在应用的使用过程中,记录用户操作页面的增量快照的步骤。
处理器1001调用存储器1005中存储的应用异常还原程序时,还执行以下操作:
在增量快照的数量达到预设数量时,删除所述缓存队列中预设数量的快照;
记录当前操作页面的全量快照。
处理器1001调用存储器1005中存储的应用异常还原程序时,还执行以下操作:
在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常;
若所述异常为首次出现的异常时,从缓存队列中获取当前时间点对应的全量快照以及所述全量快照对应的增量快照。
处理器1001调用存储器1005中存储的应用异常还原程序时,还执行以下操作:
若判定所述异常不是当前时间点之前的首个异常时,从缓存队列中获取当前时间点之前的全量快照以及增量快照。
处理器1001调用存储器1005中存储的应用异常还原程序时,还执行以下操作:
判断是否具有所述异常视频文件的播放权限;
在具有所述异常视频文件的播放权限时,执行播放所述异常视频文件的步骤。
处理器1001调用存储器1005中存储的应用异常还原程序时,还执行以下操作:
在检测到应用运行异常时,确定当前时间点与上一次异常的时间点之间的时间间隔;
在所述时间间隔小于或等于预设时间间隔时,播放上一次异常的异常视频文件作为当前异常对应的异常视频文件;
在所述时间间隔大于预设时间间隔时,执行所述获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤。
本发明实施例提供了应用异常还原方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
如图2所示,在本申请的第一实施例中,本申请的应用异常还原方法,包括以下步骤:
步骤S110,在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照,其中,两个全量快照之间包括至少两个增量快照;
步骤S120,基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件;
步骤S130,播放所述异常视频文件。
在本实施例中,在排查应用异常的过程中,开发人员通常希望能够还原用户在使用应用过程中出现异常的真实场景,为了解决现有技术中不能准确还原异常场景的问题,本申请设计了一种应用异常还原方法,该方法以视频的形式记录异常发生前一小段时间的用户操作,开发人员通过查看异常日志可对所述视频进行播放,从而实现了对异常场景的还原,该方法由于仅记录异常发生前一小段时间的用户操作,从而避免了全程记录并上传快照带来的资源浪费。
在本实施例中,所述应用是指基于webview浏览器的应用,出现的异常为代表Javascript在运行过程中发生的异常,SDK安装包对error以及unhandledrejection两个事件进行了监听,当应用的Javascript运行发生异常时会根据异常的类型触发以上两个事件中的一个,即被SDK的监听捕获到,此时进入采集流程,采集当前时间点之前所述应用操作过程中的全量快照以及全量快照对应的增量快照,对所述快照文件进行整合以生成异常视频文件,并将所述异常视频文件存储于对应的缓存队列中,在接收到异常视频文件的播放请求时,从缓存队列对应的地址中获取对应的异常视频文件进行播放,从而实现对异常场景的还原。
在本实施例中,在进入应用时,记录用户操作页面的全量快照,在应用的使用过程中,记录用户操作页面的增量快照,所述全量快照用于记录整个用户操作页面,即页面当前状态的一个完整的结构与样式的保存,可以通过这份数据直接还原出快照时的页面内容;所述增量快照用于记录用户操作页面发生变化的变量,即当页面发生结构和样式变化时,记录上一次快照到当前这一次的改变部分,与全量快照不同,增量快照需要基于上一次的全量快照以及之间所有的增量快照才能还原出快照时的页面内容;两个全量快照之间包括至少两个增量快照,记录增量快照的预设时间间隔可根据实际情况进行设置,例如,可设置每隔5秒记录一张增量快照,或者每隔1分钟记录一张增量快照;在检测到应用发生异常时,会先判断当前时间点对应的异常是否为当前应用操作过程中首次出现的异常,若当前时间点对应的异常是当前应用操作过程中的首次出现的异常,则获取当前时间点对应的全量快照以及全量快照至当前时间点之间的增量快照;若当前时间点对应的异常不是当前应用操作过程中的首次出现的异常,则获取当前时间点对应的全量快照以及首次出现的异常的时间点至当前时间点之间的所有增量快照;不管当前时间点对应的异常是否为首次出现的异常,获取的全量快照以及增量快照均为当前时间点之前的全量快照以及对应的增量快照,例如,以图8为例,本申请可设置每200个增量快照时记录一次全量快照,即在全量快照1与全量快照2之间包括200个增量快照,把全量快照编号为1、2、3,把异常标记为E1~E7,以300个增量快照为一个检测单位,例如,以全量快照1至全量快照2后100个增量快照作为第一范围,以增量快照301至全量快照2后200个增量快照作为第二范围,本申请当检测到应用异常时,按照以下的采集策略进行快照的采集:
(1)当异常为E1时,E1发生于增量快照300之前,对应的异常视频文件将使用全量快照1以及增量快照1~E1对应的增量快照;
(2)当异常为E2时,由于E2不是第一范围内首次发生的异常,因此,对应的异常视频文件将使用全量快照1以及E1~E2之间的增量快照。
在本实施例中,SDK中对于全量快照和增量快照会用两个缓存队列进行维护;缓存队列1中保存全量快照及之后的200个增量,例如全量快照1以及增量快照1~200,缓存队列2中保存下一个全量快照以及之后的200个增量快照,例如,全量快照2以及增量快照201~400,当缓存队列1为空时,记录一次全量快照并开始记录增量快照;当缓存队列1满时,向缓存队列2中记录一次全量快照并开始继续记录增量快照;当缓存队列2在记录到100个增量快照时,将缓存队列1清空,并将此时的缓存队列2全量复制到缓存队列1,复制完成后清空队列2,后续新产生的增量快照均记录到缓存队列1,在应用运行异常时,异常视频文件回放永远都取缓存队列1中的全量快照以及到当前异常对应的增量快照。
在本实施例中,在获取当前时间点之前对应的全量快照以及所述全量快照对应的增量快照之后,需要对所述快照进行整合,因为,每个全量快照以及每个增量快照都有对应的生成时间,根据所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行编码整合后,生成对应的异常视频文件,开发人员根据所述异常视频文件即可对发生异常之前的应用操作过程进行回放,采用上述的采集策略确定异常并获取异常所在范围内对应的快照,而并不是获取所有的快照,使得获取的异常视频文件的大小相对于之前的异常视频文件的数据量减少了。
在本实施例的技术方案中,由于采用了在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照,其中,两个全量快照之间包括至少两个增量快照;基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件;播放所述异常视频文件的技术方案,解决现有技术中无法准确还原异常场景的技术问题,实现异常场景的还原。
如图3所示,图3为本申请的第二实施例示意图,基于第一实施例步骤S110之前,本申请的第二实施例包括以下步骤:
步骤S210,在进入所述应用时,记录用户操作页面的全量快照;
步骤S220,在应用的使用过程中,记录用户操作页面的增量快照;
步骤S230,在增量快照的数量达到预设数量时,记录当前操作页面的全量快照;
步骤S240,返回执行所述在应用的使用过程中,记录用户操作页面的增量快照的步骤。
在本实施例中,在进入应用时,记录用户操作页面的全量快照,在应用的使用过程中,记录用户操作页面的增量快照,所述全量快照用于记录整个用户操作页面,所述增量快照用于记录用户操作页面发生变化的变量,两个全量快照之间包括至少两个增量快照,两个全量快照之间的增量快照的数量可根据实际情况进行设置,例如,可设置两个全量快照之间的增量快照的数量为200;记录增量快照的预设时间间隔可根据实际情况进行设置,例如,可设置每隔5秒记录一张增量快照,或者每隔1分钟记录一张增量快照;在应用的使用过程中,当记录用户操作页面的增量快照之后,在增量快照的数量达到预设数量时,例如,已经记录了200个增量快照之后,记录当前操作页面的全量快照;在记录当前操作页面的全量快照之后,重新返回在应用的使用过程中,记录用户操作页面的增量快照,重复上述操作过程以记录全量快照以及全量快照对应的预设数量的增量快照。
本实施例根据上述技术方案,由于采用了在进入所述应用时,记录用户操作页面的全量快照;在应用的使用过程中,记录用户操作页面的增量快照;在增量快照的数量达到预设数量时,记录当前操作页面的全量快照;返回执行所述在应用的使用过程中,记录用户操作页面的增量快照的步骤的技术手段,实现了全量快照以及增量快照的记录过程。
如图4所示,图4为本申请的第三实施例示意图,基于第二实施例步骤S230,本申请的第三实施例包括以下步骤:
步骤S231,在增量快照的数量达到预设数量时,删除所述缓存队列中预设数量的快照;
步骤S232,记录当前操作页面的全量快照。
在本实施例中,为了减少快照对内存空间的占用以及快照传输流量消耗大的问题,本申请在增量快照的数量达到预设数量时,删除所述缓存队列中预设数量的快照,记录当前操作页面的全量快照,每次记录全量快照后,丢弃上上一个全量快照以及其到上一个全量快照中间的全部增量快照,例如第3个全量快照被记录时,丢弃第1个全量快照以及第1个全量快照到第2个全量快照之间的全部增量快照;SDK中对于全量快照和增量快照会用两个缓存队列进行维护;缓存队列1中保存全量快照及之后的200个增量,例如全量快照1以及增量快照1~200,缓存队列2中保存下一个全量快照以及之后的200个增量快照,例如,全量快照2以及增量快照201~400,当缓存队列1为空时,记录一次全量快照并开始记录增量快照;当缓存队列1满时,向缓存队列2中记录一次全量快照并开始继续记录增量快照;当缓存队列2在记录到100个增量快照时,将缓存队列1清空,并将此时的缓存队列2全量复制到缓存队列1,复制完成后清空队列2,后续新产生的增量快照均记录到缓存队列1,在应用运行异常时,异常视频文件回放永远都取缓存队列1中的全量快照以及到当前异常对应的增量快照。
本实施例根据上述技术方案,由于采用了在增量快照的数量达到预设数量时,删除所述缓存队列中预设数量的快照;记录当前操作页面的全量快照的技术手段,将缓存队列中无异常的快照删除以避免对存储空间的占用。
如图5所示,图5为本申请的第四实施例示意图,基于第三实施例步骤S110,本申请的第四实施例包括以下步骤:
步骤S110,在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常;
步骤S120,若所述异常为首次出现的异常时,从缓存队列中获取当前时间点对应的全量快照以及所述全量快照对应的增量快照。
在本实施例中,在检测到应用发生异常时,会先判断当前时间点对应的异常是否为当前应用操作过程中首次出现的异常,若当前时间点对应的异常是当前应用操作过程中的首次出现的异常,则从缓存队列中获取当前时间点对应的全量快照以及全量快照至当前时间点之间的增量快照;例如,判断所述异常是否为全量快照1至全量快照2后100个增量快照范围内的异常;若所述异常为首次出现的异常时,则将全量快照1作为当前异常回放的全量快照记录,并将全量快照1到当前时间点异常之间的所有增量快照作为回放的增量快照记录。
本实施例根据上述技术方案,由于采用了在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常;若所述异常为首次出现的异常时,从缓存队列中获取当前时间点对应的全量快照以及所述全量快照对应的增量快照的技术手段,实现了根据异常获取对应的快照。
以下为本申请的第五实施例,基于第四实施例步骤S110之后,本申请的第五实施例包括以下步骤:
步骤S310,若判定所述异常不是当前时间点之前的首个异常时,从缓存队列中获取当前时间点之前的全量快照以及增量快照。
在本实施例中,若当前时间点对应的异常不是当前应用操作过程中的首次出现的异常,则从缓存队列中获取当前时间点之前对应的全量快照以及增量快照;具体的,如果所述异常不是应用本次运行过程中首次出现的异常时,则将首个异常到当前异常之间的增量快照进行记录,同时结合首个异常所需的回放文件,即全量快照1以及全量快照1到首个异常之间的所有增量快照,作为当前异常所需的回放文件,如图8所示,若当前异常为E3时,则获取的快照包括:全量快照1、全量快照1至E3之间的增量快照以及全量快照1至E1之间的增量快照。
本实施例根据上述技术方案,由于采用了若判定所述异常不是当前时间点之前的首个异常时,从缓存队列中获取当前时间点之前的全量快照以及增量快照的技术手段,实现了根据异常获取对应的快照。
如图6所示,基于第一实施例的步骤S130之前,本申请的第六实施例包括以下步骤:
步骤S131,判断是否具有所述异常视频文件的播放权限;
步骤S132,在具有所述异常视频文件的播放权限时,执行播放所述异常视频文件的步骤。
在本实施例中,在检测到应用运行异常时,获取对应的快照文件并根据全量快照以及增量快照根据生成时间编码成异常视频文件,并不是直接播放所述异常视频文件,在播放所述异常视频文件之前,会先判断操作人员是否具有所述异常视频文件的播放权限,操作人员的播放异常视频文件的权限已经预先存储于权限列表中,在检测到操作人员具有所述异常视频文件的播放权限时,从对应的缓存队列地址中获取对应的异常视频文件,并播放所述异常视频文件以对所述异常视频文件进行还原。
本实施例根据上述技术方案,由于采用了判断是否具有所述异常视频文件的播放权限;在具有所述异常视频文件的播放权限时,执行播放所述异常视频文件的步骤的技术手段,实现了对播放权限进行验证。
如图7所示,本申请的第七实施例包括以下步骤:
步骤S310,在检测到应用运行异常时,确定当前时间点与上一次异常的时间点之间的时间间隔;
步骤S320,在所述时间间隔小于或等于预设时间间隔时,播放上一次异常的异常视频文件作为当前异常对应的异常视频文件;
步骤S330,在所述时间间隔大于预设时间间隔时,执行所述获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤。
在本实施例中,在检测到应用运行异常时,确定当前时间点与上一次异常的时间点之间的时间间隔,在所述时间间隔小于等于预设时间间隔时,将上一次异常时间点对应的异常视频文件作为当前异常对应的异常视频文件,所述预设时间间隔可根据实际情况进行设置,例如,可设置所述预设时间间隔为500ms;当所述时间间隔大于预设时间间隔时,则不能采用上一次异常时间点对应的异常视频文件作为当前异常对应的异常视频文件,此时,需要获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照;例如,判断是否距离上一次记录回放的异常超过500ms,如果未超过500ms,则当前异常直接使用上一次的回放记录;如果已超过500ms,则在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常;若所述异常为首次出现的异常时,从缓存队列中获取当前时间点对应的全量快照以及所述全量快照对应的增量快照,若判定所述异常不是当前时间点之前的首个异常时,从缓存队列中获取当前时间点之前的全量快照以及增量快照。
本实施例根据上述技术方案,由于采用了在检测到应用运行异常时,确定当前时间点与上一次异常的时间点之间的时间间隔;在所述时间间隔小于或等于预设时间间隔时,播放上一次异常的异常视频文件作为当前异常对应的异常视频文件;在所述时间间隔大于预设时间间隔时,执行所述获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤的技术手段,通过采用上一次异常的异常视频文件作为当前的异常视频文件,减少了异常视频文件所占用的存储空间。
基于同一发明构思,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括应用异常还原程序,所述应用异常还原程序被处理器执行时实现如上所述的应用异常还原方法的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
由于本申请实施例提供的计算机程序产品,为实施本申请实施例的方法所采用的计算机程序产品,故而基于本申请实施例所介绍的方法,本领域所属人员能够了解该计算机程序产品的具体结构及变形,故而在此不再赘述。凡是本申请实施例的方法所采用的计算机程序产品都属于本申请所欲保护的范围。
基于同一发明构思,本申请实施例还提供了一种存储介质,所述存储介质存储有应用异常还原程序,所述应用异常还原程序被处理器执行时实现如上所述的应用异常还原方法的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
由于本申请实施例提供的存储介质,为实施本申请实施例的方法所采用的存储介质,故而基于本申请实施例所介绍的方法,本领域所属人员能够了解该存储介质的具体结构及变形,故而在此不再赘述。凡是本申请实施例的方法所采用的计算机存储介质都属于本申请所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种应用异常还原方法,其特征在于,所述应用异常还原方法包括:
在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照,其中,两个全量快照之间包括至少两个增量快照;
基于所述全量快照以及所述增量快照的生成时间对所述全量快照以及所述增量快照进行整合后生成异常视频文件;
播放所述异常视频文件。
2.如权利要求1所述的应用异常还原方法,其特征在于,所述在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤之前包括:
在进入所述应用时,记录用户操作页面的全量快照;
在应用的使用过程中,记录用户操作页面的增量快照;
在增量快照的数量达到预设数量时,记录当前操作页面的全量快照;
返回执行所述在应用的使用过程中,记录用户操作页面的增量快照的步骤。
3.如权利要求2所述的应用异常还原方法,其特征在于,所述全量快照以及所述增量快照均记录于缓存队列中,所述在增量快照的数量达到预设数量时,记录当前操作页面的全量快照的步骤包括:
在增量快照的数量达到预设数量时,删除所述缓存队列中预设数量的快照;
记录当前操作页面的全量快照。
4.如权利要求3所述的应用异常还原方法,其特征在于,所述在检测到应用运行异常时,获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤包括:
在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常;
若所述异常为首次出现的异常时,从缓存队列中获取当前时间点对应的全量快照以及所述全量快照对应的增量快照。
5.如权利要求4所述的应用异常还原方法,其特征在于,所述在检测到应用运行异常时,判断所述异常是否为所述应用本次运行过程中首次出现的异常的步骤之后还包括:
若判定所述异常不是当前时间点之前的首个异常时,从缓存队列中获取当前时间点之前的全量快照以及增量快照。
6.如权利要求1所述的应用异常还原方法,其特征在于,所述播放所述异常视频文件的步骤之前包括:
判断是否具有所述异常视频文件的播放权限;
在具有所述异常视频文件的播放权限时,执行播放所述异常视频文件的步骤。
7.如权利要求1所述的应用异常还原方法,其特征在于,所述应用异常还原方法还包括:
在检测到应用运行异常时,确定当前时间点与上一次异常的时间点之间的时间间隔;
在所述时间间隔小于或等于预设时间间隔时,播放上一次异常的异常视频文件作为当前异常对应的异常视频文件;
在所述时间间隔大于预设时间间隔时,执行所述获取当前时间点之前所述应用操作过程中采集的全量快照以及全量快照对应的增量快照的步骤。
8.一种应用异常还原设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用异常还原程序,所述应用异常还原程序被所述处理器执行时实现如权利要求1-7中任一项所述的应用异常还原方法的步骤。
9.一种计算机程序产品,其特征在于,所述计算机程序产品包括应用异常还原程序,所述应用异常还原程序被处理器执行时实现如权利要求1-7任一项所述的应用异常还原方法的各个步骤。
10.一种存储介质,其特征在于,其上存储有应用异常还原程序,所述应用异常还原程序被处理器执行时实现权利要求1-7中任一项所述的应用异常还原方法的步骤。
CN202110810628.8A 2021-07-16 2021-07-16 应用异常还原方法、设备及存储介质 Active CN113613063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110810628.8A CN113613063B (zh) 2021-07-16 2021-07-16 应用异常还原方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110810628.8A CN113613063B (zh) 2021-07-16 2021-07-16 应用异常还原方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113613063A true CN113613063A (zh) 2021-11-05
CN113613063B CN113613063B (zh) 2023-08-04

Family

ID=78304795

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110810628.8A Active CN113613063B (zh) 2021-07-16 2021-07-16 应用异常还原方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113613063B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376071A (zh) * 2018-09-03 2019-02-22 平安普惠企业管理有限公司 应用软件异常反馈方法、装置、计算机设备及存储介质
CN109871963A (zh) * 2019-01-08 2019-06-11 西藏纳旺网络技术有限公司 运行故障还原方法、装置、电子设备及存储介质
CN110597661A (zh) * 2019-09-11 2019-12-20 苏州浪潮智能科技有限公司 一种虚拟机备份方法与装置
CN111046310A (zh) * 2019-12-12 2020-04-21 北京奇艺世纪科技有限公司 页面处理方法、装置、服务器及计算机可读存储介质
CN111338844A (zh) * 2020-02-14 2020-06-26 无锡华云数据技术服务有限公司 一种数据库备份管理的方法及电子设备
CN111367833A (zh) * 2020-03-31 2020-07-03 中国建设银行股份有限公司 数据缓存方法、装置、计算机设备以及可读存储介质
CN111381995A (zh) * 2020-03-13 2020-07-07 青岛海尔科技有限公司 用于还原用户操作的方法及装置、计算机
CN111859225A (zh) * 2020-07-31 2020-10-30 中国工商银行股份有限公司 程序文件的访问方法、装置、计算设备和介质
CN112035298A (zh) * 2020-09-10 2020-12-04 北京城市网邻信息技术有限公司 一种数据备份方法、装置、电子设备及存储介质
CN112256524A (zh) * 2020-09-27 2021-01-22 湖南映客互娱网络信息有限公司 一种基于录屏回放的web前端监控方法与系统
CN112527748A (zh) * 2020-12-24 2021-03-19 北京百度网讯科技有限公司 用于分析用户操作行为的方法、装置、设备以及存储介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376071A (zh) * 2018-09-03 2019-02-22 平安普惠企业管理有限公司 应用软件异常反馈方法、装置、计算机设备及存储介质
CN109871963A (zh) * 2019-01-08 2019-06-11 西藏纳旺网络技术有限公司 运行故障还原方法、装置、电子设备及存储介质
CN110597661A (zh) * 2019-09-11 2019-12-20 苏州浪潮智能科技有限公司 一种虚拟机备份方法与装置
CN111046310A (zh) * 2019-12-12 2020-04-21 北京奇艺世纪科技有限公司 页面处理方法、装置、服务器及计算机可读存储介质
CN111338844A (zh) * 2020-02-14 2020-06-26 无锡华云数据技术服务有限公司 一种数据库备份管理的方法及电子设备
CN111381995A (zh) * 2020-03-13 2020-07-07 青岛海尔科技有限公司 用于还原用户操作的方法及装置、计算机
CN111367833A (zh) * 2020-03-31 2020-07-03 中国建设银行股份有限公司 数据缓存方法、装置、计算机设备以及可读存储介质
CN111859225A (zh) * 2020-07-31 2020-10-30 中国工商银行股份有限公司 程序文件的访问方法、装置、计算设备和介质
CN112035298A (zh) * 2020-09-10 2020-12-04 北京城市网邻信息技术有限公司 一种数据备份方法、装置、电子设备及存储介质
CN112256524A (zh) * 2020-09-27 2021-01-22 湖南映客互娱网络信息有限公司 一种基于录屏回放的web前端监控方法与系统
CN112527748A (zh) * 2020-12-24 2021-03-19 北京百度网讯科技有限公司 用于分析用户操作行为的方法、装置、设备以及存储介质

Also Published As

Publication number Publication date
CN113613063B (zh) 2023-08-04

Similar Documents

Publication Publication Date Title
US7676699B2 (en) Event trace conditional logging
EP2650809B1 (en) Information processing device and information processing method
CN109344066B (zh) 一种浏览器页面的测试方法、系统及终端
US20130024466A1 (en) System event logging system
CN112799925A (zh) 数据采集方法、装置、电子设备和可读存储介质
EP3131041A1 (en) Testing of enterprise resource planning systems
CN113656107A (zh) 移动应用的加载方法、装置及电子设备
CN109492163B (zh) 一种列表展示的记录方法、装置、终端设备及存储介质
CN111400633A (zh) 页面资源加载的方法及装置
CN110944231B (zh) 视频播放器的监听方法及装置
CN111078418B (zh) 操作同步方法、装置、电子设备及计算机可读存储介质
CN108491315A (zh) 页面驻留时长的统计方法、装置及计算机可读存储介质
CN113613063B (zh) 应用异常还原方法、设备及存储介质
CN111625402A (zh) 数据恢复方法、装置、电子设备及计算机可读存储介质
CN115878358A (zh) 异常日志分析方法、装置、电子设备及存储介质
US10102052B2 (en) Dumping resources
CN110837433A (zh) 性能优化方法、装置及电子设备
CN113127242A (zh) 一种应用程序崩溃处理方法及处理装置
CN107679161B (zh) 电子终端的文件处理方法与电子终端
CN110362534B (zh) 一种快照验证方法、系统及电子设备和存储介质
CN112416735A (zh) 一种应用程序检测方法、装置及终端设备、存储介质
US10481999B2 (en) Partial process recording
CN113742299B (zh) 文件压缩和解压缩方法以及文件压缩和解压缩装置
CN116719663B (zh) 一种数据处理方法、装置、设备以及可读存储介质
US20240106903A1 (en) Method And System For Application Performance Neutral, Network Bandwidth Optimized Capturing Of Resources Used during The Interaction Of User With A web-Based Application To Create Monitoring Data For An Accurate Visual reconstruction Of The User Experience

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