evm合约调试方法、计算机设备和存储介质技术

技术编号:30142809 阅读:36 留言:0更新日期:2021-09-23 15:09
本发明专利技术提供一种evm合约调试方法、计算机设备和存储介质,该方法包括:将evm虚拟机的makeLog函数重定义为在原有功能的基础上新增以下功能:在evm合约执行第一交易失败时,将执行第一交易的第一日志信息存储到本地对应于evm合约的日志文件中;通过第一evm合约执行第二交易失败时,将执行第二交易的第二日志信息存储到本地对应于第一evm合约的第一日志文件中;响应于开发人员调试第一evm合约,将第一日志文件和第一evm合约的abi文件导入日志解析工具以通过abi文件中的abi数据将第一日志文件中的各日志信息解析为可读格式信息并输出。本发明专利技术实现了使evm合约调试更为便利且省时。本发明专利技术实现了使evm合约调试更为便利且省时。本发明专利技术实现了使evm合约调试更为便利且省时。

【技术实现步骤摘要】
evm合约调试方法、计算机设备和存储介质


[0001]本申请涉及区块链
,具体涉及一种evm合约调试方法、计算机设备和存储介质。

技术介绍

[0002]在当前的区块链系统中,开发者在开发evm合约的过程中,调试非常不便以及耗时,其原因在于:
[0003]开发者将所开发的evm合约在部署到区块链上之后,开发者是无法进行调试领域最常用的单步调试的,而只能通过获取记录运行过程的日志信息来查找出错原因以进行调试;
[0004]而区块链通过智能合约执行交易的特点在于,当智能合约执行一笔交易tx1失败时,是不会将相关数据记录到区块链上的,因此会导致执行该笔交易tx1的日志信息无法输出,开发者无法获取到日志信息;
[0005]此时开发者只能在无法获得日志信息的情况下盲目地修改合约代码、重新部署所开发的合约、重新发送交易:
[0006]再次执行失败,则需要继续盲目地修改合约代码、重新部署合约、重新发送交易;
[0007]执行成功,才能最终从区块链上获取到日志信息以进行调试(然而调试往往是个漫长的过程,开发者需要多次本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种evm合约调试方法,其特征在于,所述方法适用于区块链节点,所述方法包括:将evm虚拟机的makeLog函数重定义为在原有功能的基础上新增以下功能:在evm合约执行第一交易失败时,将执行所述第一交易的第一日志信息存储到本地对应于所述evm合约的日志文件中;通过第一evm合约执行第二交易失败时,将执行所述第二交易的第二日志信息存储到本地对应于所述第一evm合约的第一日志文件中;响应于开发人员调试所述第一evm合约,将所述第一日志文件和所述第一evm合约的abi文件导入日志解析工具以通过所述abi文件中的abi数据将所述第一日志文件中的各日志信息解析为可读格式信息并输出。2.一种evm合约调试方法,其特征在于,所述方法适用于区块链节点,所述方法包括:将evm虚拟机的makeLog函数重定义为在原有功能的基础上新增以下功能:在evm合约执行第三交易失败时,将执行所述...

【专利技术属性】
技术研发人员:何正军王志文吴思进曹競李斌
申请(专利权)人:杭州复杂美科技有限公司
类型:发明
国别省市:

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

1