【技术实现步骤摘要】
区块链日志的生成方法及装置、电子设备、存储介质
[0001]本说明书一个或多个实施例涉及区块链
,尤其涉及一种区块链日志的生成方法及装置、电子设备、存储介质。
技术介绍
[0002]区块链技术构建在传输网络(例如点对点网络)之上。区块链网络中的节点利用链式数据结构来验证与存储数据,并采用分布式节点共识算法来生成和更新数据。
[0003]日志(Log)作为区块链中的节点在运行时输出的参考信息,可供区块链网络的用户或者运维人员用于审计该区块链网络的运行状态,比如审计整个交易流程是否合理、是否按照预期执行等等。
技术实现思路
[0004]有鉴于此,本说明书一个或多个实施例提供一种区块链日志的生成方法及装置、电子设备、存储介质。
[0005]为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
[0006]根据本说明书一个或多个实施例的第一方面,提出了一种区块链日志的生成方法,应用于节点设备,所述节点设备上运行有分别属于不同区块链网络的多个节点实例,所述多个节点实例分别对应于不同的线程,且每一线程与相应节点实例所属区块链网络的网络标识绑定;所述方法包括:
[0007]响应于任一节点实例需处理的区块链任务,确定与所述区块链任务匹配的目标线程;
[0008]在所述目标线程为所述任一节点实例对应的线程的情况下,通过所述目标线程执行所述区块链任务,使目标线程在打印所述区块链任务对应的日志信息时添加自身绑定的第一网络标识。
[0009]根据本说明书一个或多个实 ...
【技术保护点】
【技术特征摘要】
1.一种区块链日志的生成方法,应用于节点设备,所述节点设备上运行有分别属于不同区块链网络的多个节点实例,所述多个节点实例分别对应于不同的线程,且每一线程与相应节点实例所属区块链网络的网络标识绑定;所述方法包括:响应于任一节点实例需处理的区块链任务,确定与所述区块链任务匹配的目标线程;在所述目标线程为所述任一节点实例对应的线程的情况下,通过所述目标线程执行所述区块链任务,使目标线程在打印所述区块链任务对应的日志信息时添加自身绑定的第一网络标识。2.根据权利要求1所述的方法,还包括:在所述目标线程为所述节点设备上的另一节点实例对应的线程的情况下,向所述目标线程提供所述任一节点实例所属区块链网络的第二网络标识,使所述目标线程执行所述区块链任务并在打印所述区块链任务对应的日志信息时添加第二网络标识。3.根据权利要求2所述的方法,所述多个节点实例分别运行有各自使用的用于处理区块链任务的组件,各组件分别由相应节点实例对应的线程所承载;所述确定与所述区块链任务匹配的目标线程,包括:确定所述任一节点实例运行的用于处理所述区块链任务的组件,以将承载确定出的组件的线程作为所述目标线程;或者,确定所述节点设备上的其他节点实例运行的用于处理所述区块链任务的组件,以将承载确定出的组件的线程作为所述目标线程。4.根据权利要求3所述的方法,所述另一节点实例运行的组件中包含供所述任一节点实例调用的共享组件;所述向所述目标线程提供所述任一节点实例所属区块链网络的第二网络标识,使所述目标线程执行所述区块链任务并在打印所述区块链任务对应的日志信息时添加第二网络标识,包括:在用于处理所述区块链任务的组件属于所述共享组件的情况下,运行所述任一节点实例以调用所述共享组件,并向所述共享组件提供第二网络标识,使得承载所述共享组件的线程执行所述区块链任务并在打印所述区块链任务对应的日志信息时添加第二网络标识。5.根据权利要求1所述的方法,通过以下方式将每一线程与相应节点实例所属区块链网络的网络标识绑定:在创建每一节点实例的过程中为该节点实例所属区块链网络分配网络标识,并将该节点实例对应的线程设置为与所分配的网络标识绑定。6.根据权利要求5所述的方法,所述将该节点实例对应的线程设置为与所分配的网络标识绑定,包括:通过threadlocal的方式将该节点实例对应的线程的标识设置为所分配的网络标识。7.根据权利要求1所述的方法,还包括:将所述多个节点实例分别对应的日志信息输出至同一日志文件中。8.根据权利要求7所述的方法,还包括:响应于针对日志信息的查询交易,在所述日志文件中查询添加有所述查询交易指示的网络标识的日志信息,以由查询方获取并进行审计。9.根据权利要求1所述的方法,所述节点设备上运行的节点实例包括区块链主网中主网节点的主网实例和所述区块链主网管理的区块链子网中子网节点的子网实例。
10.根据权利要求9所述的方法,还包括:所述区块链主网管理的源区块链子网中在所述节点设备上运行的源子网节点向所述区块链主网管理的目的区块链子网发起跨子网请求,以使所述目的区块链子网中的各目的子网节点分别获得所述跨子网请求,所述跨子网请求由所述源区块链子网中的至少一个源子网节点向目的区块链子网发起;所述源子网节点获取各个目的子网节点分别响应于所述跨子网请求返回的跨子网应答,根据所述源子网节点所处节点设备上部署的主网节点在第一区块高度所维护的目的区块链子网节点列表对获取到的跨子网应答进行验签及拜占庭容错校验,并将验签成功且通过拜占庭容错校验的标准跨子网应答和第一区块高度构造为重构应答;所述源子网节点在所述源区块链子网中广播所述重构应答,并接收所述源区块链子网中的其他子网节点广播的重构应答;所述源子网节点根据源区块链子网节点列表对获取到的重构应答进行验签及拜占庭容错校验,并将验签成功且通过拜占庭容错校验的重构应答确定为响应所述跨子网请求的认证应答;所述源子网节点对所述跨子网请求、所述认证应答、验签成功且通过拜占庭容错校验的所有跨子网应答对应的应答签名信息以及验签成功且通过拜占庭容错校验的所有重构应答对应的共识签名信息进行存证。11.根据权利要求10所述的方法,所述源区块链子网中的至少一个源子网节点在其维护的业务合约执行过程中触发生成针对所述目的区块链子网的跨子网请求的情况下,调用跨子网合约将所述跨子网请求发送至所述各目的子网节点。12.根据权利要求11所述的方法,所述方法还包括:调用所述跨子网合约中的回调方法,将所述认证应答返回至所述业务合约。13.根据权利要求10所述的方法,第一区块高度为所述源子网节点对获取到的跨子网应答进行验签及拜占庭容错校验时所述主网节点所维护的最新区块的区块高度;或者,第一区块高度为所述源子网节点按照预设的区块选取规则从所述主网节点所维护的区块中所选取的目标区块的区块高度。14.根据权利要求10所述的方法,所述重构应答还包含第二区块高度,第二区块高度为所述源子网节点构造重构应答时所述源区块链子网或所述主网节点所维护的最新区块的区块高度,第二区块高度用于在审计过程中获取所述源区块链子网节点列表。15.根据权利要求10所述的方法,所述响应于所述跨子网...
【专利技术属性】
技术研发人员:陶友贤,
申请(专利权)人:蚂蚁区块链科技上海有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。