[发明专利]程序异常代码获取方法、装置、电子设备以及存储介质在审
申请号: | 202011359452.0 | 申请日: | 2020-11-27 |
公开(公告)号: | CN112445706A | 公开(公告)日: | 2021-03-05 |
发明(设计)人: | 陈晓丹;殷凇;李宗波;邬秋元;杨永帮;张卓韬 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 张娜;臧建明 |
地址: | 518027 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 异常 代码 获取 方法 装置 电子设备 以及 存储 介质 | ||
本申请实施例提供一种程序异常代码获取方法、装置、电子设备以及存储介质,获取用于加载目标程序和增强程序的触发指令,根据触发指令将目标程序和增强程序加载至内存,运行增强程序,以将增强代码增加至目标程序生成增强后的目标程序,其中,增强代码用于输出目标程序的异常代码,运行增强后的目标程序,以在目标程序异常时输出异常代码。相较于现有技术由人工确定异常代码的方式,本方案可以自动输出异常代码,通过增强程序在目标程序内增加增强代码,且无需人工修改目标代码。
技术领域
本申请实施例涉金融科技(Fintech),尤其涉及一种程序异常代码获取方法、装置、电子设备以及存储介质。
背景技术
随着计算机技术的飞速发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性和实时性要求,也对技术提出了更高的要求。
金融业务程序系统支持金融企业从事各种金融业务。在对金融业务程序系统进行开发测试过程中出现异常时,开发人员需要通过异常堆栈信息到金融业务程序系统对应项目工程的源代码中找到对应的代码行,再通过源码上下文信息来确定异常发生的可能原因。另外,在Java异常堆栈信息中只有程序调用链,没有程序调用参数。
然而,现有技术由开发人员根据异常堆栈信息人工确定出现异常的代码,导致确定异常代码的效率低。又异常堆栈信息中不包含调用参数,导致无法准确确定异常原因。
发明内容
本申请实施例提供一种程序异常代码获取方法、装置、电子设备以及存储介质,旨在输出程序的异常代码和属性数据,无需人工根据异常堆栈信息确定异常代码,提高确定异常代码的效率。
第一方面,本申请提供一种程序异常代码获取方法,包括:
获取用于加载目标程序和增强程序的触发指令;
根据触发指令将目标程序和增强程序加载至内存;
运行增强程序,以将增强代码增加至目标程序生成增强后的目标程序;其中,增强代码用于输出目标程序的异常代码;
运行增强后的目标程序,以在目标程序异常时输出异常代码。
可选地,运行增强程序,具体包括:
执行解析代码,以对目标程序的源代码进行解析获得解析结果;
当解析结果满足预设插入条件时执行增强代码,以生成增强后的目标程序;
其中,增强程序包括解析代码和增强代码。
可选地,当解析结果满足预设插入条件时执行增强代码以生成增强后的目标程序,具体包括:
当解析结果指示解析到方法主体时插入位置代码;其中,位置代码用于获取异常代码的异常位置信息;
插入输出代码;其中,输出代码是根据目标程序的源代码和位置代码生成的,输出代码用于输出异常代码;
增强代码包括位置代码和输出代码。
可选地,当解析结果满足预设插入条件时插入位置代码,具体包括:
当解析结果指示解析到方法主体时插入用于捕获异常的捕获代码和用于调用异常堆栈信息的堆栈代码。
可选地,当解析结果满足预设插入条件时执行增强代码以生成增强后的目标程序,还包括:
当解析结果指示解析到参数定义标识时插入用于获取属性数据的属性代码,其中,增强程序还包括属性代码。
可选地,当解析结果满足预设插入条件时执行增强代码以生成增强后的目标程序,还包括:
当解析结果指示解析到方法结束标识时插入用于获取异常类型的类型代码;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011359452.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种凤尾菇培养基的灭菌设备
- 下一篇:衍生变量确定方法、装置、设备和存储介质