应用程序的异常处理方法及设备技术

技术编号:37214347 阅读:15 留言:0更新日期:2023-04-20 23:03
本公开提供一种应用程序的异常处理方法及设备,涉及计算机软件技术领域。该方法包括:在应用程序出现异常时,获取第三方工具生成的堆栈信息文件和应用程序本身的属性信息,堆栈信息文件中包括应用程序出现异常时的函数调用关系对应的堆栈信息;将堆栈信息和属性信息写入异常日志文件中;将异常日志文件发送给应用程序对应的服务端。在大量用户使用应用程序的过程中,如果出现异常,该用户的应用程序均可以生成异常日志文件,并发送给服务端,以使服务端可以收集到线上的大量应用程序的异常日志文件。这样,可以发现更多的异常,更好的保证应用程序的正常运行。证应用程序的正常运行。证应用程序的正常运行。

【技术实现步骤摘要】
应用程序的异常处理方法及设备


[0001]本公开涉及计算机软件
,尤其涉及一种应用程序的异常处理方法及设备。

技术介绍

[0002]在计算机软件领域中,应用程序是一种可以完成一项或多项特定任务的计算机程序。当应用程序在运行过程中出现异常时,需要定位导致该异常的异常原因,以根据该异常原因对应用程序进行异常处理,使应用程序恢复正常运行。
[0003]现有技术中,在应用程序出现异常时,软件工程师可以对应用程序进行代码跟踪,以确定应用程序出现异常时的状态,该状态可以包括但不限于:出现异常的函数、出现异常时的代码行以及出现异常时所使用的参数取值等。从而,可以根据该状态定位异常原因。例如,如果出现异常的函数中的一个参数的取值不符合预设规则,那么可以确定异常原因为参数不符合预设规则。
[0004]然而,上述方案不能较好的保证应用程序的正常运行。

技术实现思路

[0005]本公开提供一种应用程序的异常处理方法及设备,用以更好的保证应用程序的正常运行。
[0006]第一方面,本公开提供一种应用程序的异常处理方法,包括:
[0007]在所述应用程序出现异常时,获取第三方工具生成的堆栈信息文件和所述应用程序本身的属性信息,所述堆栈信息文件中包括所述应用程序出现异常时的函数调用关系对应的堆栈信息;
[0008]将所述堆栈信息和所述属性信息写入异常日志文件中;
[0009]将所述异常日志文件发送给所述应用程序对应的服务端。
[0010]可选地,所述属性信息包括以下至少一项:所述应用程序的类型、所述应用程序的版本、所述应用程序的标识、所述应用程序的运行时长、所述应用程序的进程信息、所述应用程序的启动参数信息、所述应用程序开启的附加功能信息、所述应用程序所在的处理器信息、所述应用程序的图形处理单元信息、可丢弃的内存。
[0011]可选地,所述图形处理单元信息包括以下至少一项:图形处理单元的供应方、所述图形处理单元的设备标识、所述图形处理单元的驱动信息、所述图形处理单元的顶点着色器版本、所述图形处理单元的像素着色器版本、所述图形处理单元的类型、所述图形处理单元的开源图形库供应方、所述图形处理单元的渲染器信息;
[0012]所述启动参数信息包括以下至少一项:启动参数数量、启动参数取值。
[0013]可选地,所述方法还包括:
[0014]在启动所述应用程序时,实例化所述第三方工具中的第一处理对象,所述第一处理对象用于在所述应用程序运行过程中生成所述堆栈信息文件;
[0015]注册所述第一处理对象对应的第二处理对象,所述第二处理对象用于在所述应用程序出现异常时生成和发送所述异常日志文件。
[0016]可选地,所述将所述异常日志文件发送给所述应用程序对应的服务端,包括:
[0017]在日志上传功能已开启的情况下,将所述异常日志文件发送给所述服务端。
[0018]可选地,所述将所述异常日志文件发送给所述应用程序对应的服务端,包括:
[0019]对所述异常日志文件进行压缩之后发送给所述服务端。
[0020]可选地,所述堆栈信息文件包括小存储器转储文件,用于记录与所述异常相关联的最少堆栈信息。
[0021]第二方面,本公开提供一种应用程序的异常处理方法,包括:
[0022]信息获取模块,用于在所述应用程序出现异常时,获取第三方工具生成的堆栈信息文件和所述应用程序本身的属性信息,所述堆栈信息文件中包括所述应用程序出现异常时的函数调用关系对应的堆栈信息;
[0023]日志文件生成模块,用于将所述堆栈信息和所述属性信息写入异常日志文件中;
[0024]日志文件发送模块,用于将所述异常日志文件发送给所述应用程序对应的服务端。
[0025]可选地,所述属性信息包括以下至少一项:所述应用程序的类型、所述应用程序的版本、所述应用程序的标识、所述应用程序的运行时长、所述应用程序的进程信息、所述应用程序的启动参数信息、所述应用程序开启的附加功能信息、所述应用程序所在的处理器信息、所述应用程序的图形处理单元信息、可丢弃的内存。
[0026]可选地,所述图形处理单元信息包括以下至少一项:图形处理单元的供应方、所述图形处理单元的设备标识、所述图形处理单元的驱动信息、所述图形处理单元的顶点着色器版本、所述图形处理单元的像素着色器版本、所述图形处理单元的类型、所述图形处理单元的开源图形库供应方、所述图形处理单元的渲染器信息;
[0027]所述启动参数信息包括以下至少一项:启动参数数量、启动参数取值。
[0028]可选地,所述装置还包括:
[0029]第一处理对象实例化模块,用于在启动所述应用程序时,实例化所述第三方工具中的第一处理对象,所述第一处理对象用于在所述应用程序运行过程中生成所述堆栈信息文件;
[0030]第二处理对象注册模块,用于注册所述第一处理对象对应的第二处理对象,所述第二处理对象用于在所述应用程序出现异常时生成和发送所述异常日志文件。
[0031]可选地,所述日志文件发送模块还用于:
[0032]在日志上传功能已开启的情况下,将所述异常日志文件发送给所述服务端。
[0033]可选地,所述日志文件发送模块还用于:
[0034]对所述异常日志文件进行压缩之后发送给所述服务端。
[0035]可选地,所述堆栈信息文件包括小存储器转储文件,用于记录与所述异常相关联的最少堆栈信息。
[0036]第三方面,本公开实施例还提供了一种电子设备,包括:至少一个处理器和存储器;
[0037]所述存储器存储计算机执行指令;
[0038]所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述电子设备实现如第一方面所述的方法。
[0039]第四方面,本公开实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被电子设备执行时用于实现第一方面所述的方法。
[0040]第五方面,本公开实施例还提供了一种计算机程序,该计算机程序用于实现上述第一方面的方法。
[0041]本公开提供的应用程序的异常处理方法及设备,该方法包括:在应用程序出现异常时,获取第三方工具生成的堆栈信息文件和应用程序本身的属性信息,堆栈信息文件中包括应用程序出现异常时的函数调用关系对应的堆栈信息;将堆栈信息和属性信息写入异常日志文件中;将异常日志文件发送给应用程序对应的服务端。在大量用户使用应用程序的过程中,如果出现异常,该用户的应用程序均可以生成异常日志文件,并发送给服务端,以使服务端可以收集到线上的大量应用程序的异常日志文件。这样,可以发现更多的异常,更好的保证应用程序的正常运行。
附图说明
[0042]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0043]图1是本公开实施例适用的应用场景示意图;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序的异常处理方法,其特征在于,所述方法包括:在所述应用程序出现异常时,获取第三方工具生成的堆栈信息文件和所述应用程序本身的属性信息,所述堆栈信息文件中包括所述应用程序出现异常时的函数调用关系对应的堆栈信息;将所述堆栈信息和所述属性信息写入异常日志文件中;将所述异常日志文件发送给所述应用程序对应的服务端。2.根据权利要求1所述的方法,其特征在于,所述属性信息包括以下至少一项:所述应用程序的类型、所述应用程序的版本、所述应用程序的标识、所述应用程序的运行时长、所述应用程序的进程信息、所述应用程序的启动参数信息、所述应用程序开启的附加功能信息、所述应用程序所在的处理器信息、所述应用程序的图形处理单元信息、可丢弃的内存。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:在启动所述应用程序时,实例化所述第三方工具中的第一处理对象,所述第一处理对象用于在所述应用程序运行过程中生成所述堆栈信息文件;注册所述第一处理对象对应的第二处理对象,所述第二处理对象用于在所述应用程序出现异常时生成和发送所述异常日志文件。4.根据权利要求1或2所述的方法,其特征在于,所述将所述异常日志文件发送给所述应用程序对应的服务端,包括:在日志上传功能已开启的情况下,将所述异常日志文件发送给所述服务端。5.根据...

【专利技术属性】
技术研发人员:刘威汪清余银
申请(专利权)人:龙芯中科合肥技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1