CN109656778B - 数据获取方法、装置、计算机设备和存储介质 - Google Patents
数据获取方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109656778B CN109656778B CN201811433738.1A CN201811433738A CN109656778B CN 109656778 B CN109656778 B CN 109656778B CN 201811433738 A CN201811433738 A CN 201811433738A CN 109656778 B CN109656778 B CN 109656778B
- Authority
- CN
- China
- Prior art keywords
- data
- log data
- service
- calling
- log
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/875—Monitoring of systems including the internet
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及一种数据获取方法、装置、计算机设备和存储介质。所述方法包括:获取在调用服务的过程中产生的调用数据,对调用数据进行封装,生成相应的日志数据,将日志数据写入区块链网络中,当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。通过将服务提供方以及服务调用方在调用服务过程中生成的日志数据写入区块链中,解除了服务提供方和服务调用方之间数据的隔离,保证了调用服务过程中日志数据的透明度和可信度。由于可以直接从区块链网络中获取日志数据,使得日志数据的获取更加便捷。
Description
技术领域
本申请涉及互联网技术领域,特别是涉及一种数据获取方法、装置、计算机设备和存储介质。
背景技术
随着互联网技术的发展,企业之间以及企业的各个部门之间往往存在着服务调用的关系。提供互联网服务的一方可以通过接口向需要使用互联网服务的一方提供服务,例如,服务提供方可以通过API(Application Programming Interface,应用程序编程接口)接口向服务调用方提供服务。在提供服务的过程中,往往会产生日志数据,在调用服务发生异常或进行服务调用统计时,可以根据日志数据对异常情况进行排查和确认。
由于服务提供方以及服务调用方之间的数据是隔离的,当出现服务调用异常或进行服务调用统计时,需要在各自的跟踪系统中进行排查和确认,存在获取的数据可信度低以及数据获取过程繁琐的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种数据获取方法、装置、计算机设备和存储介质,可以提高数据获取的可信度,简化数据获取的过程。
一种数据获取方法,所述方法包括:
获取在调用服务的过程中产生的调用数据;
对所述调用数据进行封装,生成相应的日志数据;
将所述日志数据写入区块链网络中;
当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据。
在其中一个实施例中,所述方法还包括:
分别获取与所述调用数据对应的节点信息;
分别根据所述节点信息获取对应的成员节点;
当所述成员节点验证通过后,将所述成员节点加入所述区块链网络。
在其中一个实施例中,所述将所述日志数据写入区块链网络中,包括:
根据所述日志数据生成新区块;
当所述新区块通过区块链网络验证后,将含有所述日志数据的新区块加入所述区块链网络。
在其中一个实施例中,所述对所述调用数据进行封装,生成相应的日志数据,包括:
获取日志数据模型;
根据所述日志数据模型对所述调用数据进行封装,生成相应的日志数据。
在其中一个实施例中,所述方法还包括:
当获取到的所述日志数据存在异常时,突出展示所述日志数据;
获取突出展示的日志数据的数量;
当所述日志数据的数量大于数量阈值时,展示提示信息;所述提示信息用于提示数据异常。
在其中一个实施例中,所述方法还包括:
检测所述区块链网络中区块的数量;
当所述区块数量增加时,获取增加的区块对应的日志数据;
根据所述增加的区块对应的日志数据对界面上展示的日志数据进行更新。
在其中一个实施例中,所述查询指令中包含有用户标识;所述当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据,包括:
当检测到对所述调用数据的查询指令时,提取所述查询指令中的用户标识;
当所述用户标识验证通过时,从所述区块链网络中获取与所述调用数据对应的日志数据。
一种数据获取装置,所述装置包括:
调用数据获取模块,用于获取在调用服务的过程中产生的调用数据;
日志数据生成模块,用于对所述调用数据进行封装,生成相应的日志数据;
日志数据写入模块,用于将所述日志数据写入区块链网络中;
日志数据获取模块,用于当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取在调用服务的过程中产生的调用数据;
对所述调用数据进行封装,生成相应的日志数据;
将所述日志数据写入区块链网络中;
当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取在调用服务的过程中产生的调用数据;
对所述调用数据进行封装,生成相应的日志数据;
将所述日志数据写入区块链网络中;
当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据。
上述数据获取方法、装置、计算机设备和存储介质,通过获取在调用服务的过程中产生的调用数据,对调用数据进行封装,生成相应的日志数据,将日志数据写入区块链网络中,当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。通过将服务提供方以及服务调用方在调用服务过程中生成的日志数据写入区块链中,解除了服务提供方和服务调用方之间数据的隔离,保证了调用服务过程中日志数据的透明度和可信度。由于可以直接从区块链网络中获取日志数据,使得日志数据的获取更加便捷。
附图说明
图1为一个实施例中数据获取方法的应用环境图;
图2为一个实施例中数据获取方法的流程示意图;
图3为一个实施例中建立区块链网络的流程示意图;
图4为一个实施例中区块链网络的系统部分框架图;
图5为一个实施例中服务调用关系的示意图;
图6为一个实施例中数据获取装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的数据获取方法,可以应用于如图1所示的应用环境中。如图1所示,该应用环境包括计算机设备,具体的,计算机设备可以包括终端110和服务器120。其中,终端110通过网络与服务器120通过网络进行通信。服务器120可以获取在调用服务的过程中产生的调用数据,服务器120可以对调用数据进行封装,生成相应的日志数据。服务器120可以将日志数据写入区块链网络中。终端110可以检测对调用数据的查询指令,当终端110检测到对调用数据的查询指令时,终端110可以将查询指令发送给服务器120,服务器120可以从区块链网络中获取与调用数据对应的日志数据。服务器120可以将获取到的与调用数据对应的日志数据发送给终端110。其中,终端110可以包括但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种数据获取方法,以该方法应用于图1中的计算机设备为例进行说明,包括以下步骤:
步骤202,获取在调用服务的过程中产生的调用数据。
服务是由下层向上层通过层间接口提供的。服务可以是接口服务,还可以是其他服务,在此不做限定。终端与服务器之间可以通过调用服务来实现各种功能,具体的,服务器可以通过接口向终端提供服务。在一个实施例中,从终端发送服务请求开始到最终接收到服务器的响应为止,可以通过多个服务器提供接口服务,从而实现各种功能。
调用数据是指调用服务的过程中所生成的数据。调用数据可以包括但不限于服务调用方标识、服务提供方标识、调用服务的时间、调用服务的类型中的至少一种。在通过多个终端或者多个服务器调用服务的过程中,往往会产生调用数据。
步骤204,对调用数据进行封装,生成相应的日志数据。
封装是指隐藏对象的属性和实现细节,仅公开接口,将抽象得到的数据和功能相结合,形成一个有机的整体。日志数据中可以包括有调用数据、调用服务的次数、服务响应的时间等数据,在此不做限定。
计算机设备在获取到调用数据后,可以将获取的调用数据送入协议栈中,通过协议栈的每一层对调用数据增加首部信息,还可以增加尾部信息,从而实现对调用数据的封装。计算机设备对调用数据进行封装完成后,可以生成与调用数据相应的日志数据,即生成的日志数据中可以包含有该调用数据。
步骤206,将日志数据写入区块链网络中。
区块链网络是运行区块链技术的载体和组织方式。区块链技术BT(BlockchainTechnology)是一个分布式的、去中心化的公共账本。区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。区块链技术具有去中心化、公开透明等特征,可以让每个使用者参与到数据库的记录之中。区块链系统可以由数据层、网络层、共识层、激励层、合约层和应用层组成。
计算机设备在生成日志数据后,可以调用安装在区块链上的智能合约将日志数据写入到区块链网络中。
步骤208,当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。
其中,查询指令用于对调用数据进行查询。查询指令可以是用户通过计算机设备进行输入或者触发操作生成的,还可以是通过其他方式生成的,在此不做限定。计算机设备可以对调用数据的查询指令进行检测,当计算机设备检测到对调用数据的查询指令时,计算机设备可以根据查询指令从区块链网络中获取与调用数据对应的日志数据。例如,用户想要查询A服务的调用情况,用户可以通过计算机设备输入“A服务”从而产生对“A服务”的查询指令,计算机设备可以根据查询指令从区块链网络中获取“A服务”对应的日志数据。
在本实施例中,计算机程序或者服务器通过获取在调用服务的过程中产生的调用数据,对调用数据进行封装,生成相应的日志数据,将日志数据写入区块链网络中,当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。通过将服务提供方以及服务调用方在调用服务过程中生成的日志数据写入区块链中,解除了服务提供方和服务调用方之间数据的隔离,保证了调用服务过程中日志数据的透明度和可信度。由于可以直接从区块链网络中获取日志数据,使得日志数据的获取更加便捷。
如图3所示,在一个实施例中,提供的一种数据获取方法还可以包括建立区块链网络的过程,具体步骤包括:
步骤302,分别获取与调用数据对应的节点信息。
节点信息可以是调用服务的多个参与方作为成员节点的信息。计算机设备可以分别获取调用服务的多个参与方作为成员节点的信息,例如,服务调用方的标识、服务提供方的标识等信息。计算机设备可以将多个参与方分别作为不同的成员节点,每个成员节点都对应有参与方的信息,即每个成员节点对应有节点信息。
计算机设备在调用服务的过程中产生的调用数据中包含有服务调用方标识以及服务提供方标识等,由于每个成员节点都对应有参与方的信息,计算机设备可以分别获取与调用数据相对应的节点信息。当计算机设备获取到了多个不同的调用数据时,计算机设备可以根据获取到的多个不同的调用数据分别获取对应的节点信息。
步骤304,分别根据节点信息获取对应的成员节点。
节点信息对应的成员节点可以是调用服务的多个参与方,例如,成员节点可以是服务调用方标识对应的服务调用方服务器,成员节点可以是服务提供方标识对应的服务提供方终端。
计算机设备获取到的节点信息后,可以根据节点信息分别获取对应的成员节点。例如,计算机设备获取到的节点信息分别是服务调用方标识、服务提供方标识,计算机设备可以根据服务调用方标识获取对应的服务调用方服务器、服务调用方终端;计算机设备可以根据服务提供方标识获取对应的服务提供方服务器、服务提供方终端。
步骤306,当成员节点验证通过后,将成员节点加入区块链网络。
区块链网络可以采用共识机制对成员节点进行验证。其中,共识机制是区块链技术的重要组件,可以是通过区块链网络中各个区块节点的投票,在短时间内完成的验证和确认。每增加一个成员节点,区块链网络可以对新增加的成员节点进行验证,当成员节点通过区块链网络的验证后,计算机设备可以将成员节点加入区块链网络。
在本实施例中,计算机设备通过分别获取与调用数据对应的节点信息,分别根据节点信息获取对应的成员节点,当成员节点验证通过后,将成员节点加入区块链网络。计算机设备通过对加入的成员节点进行验证,只有验证通过的成员节点才可以加入到区块链网络中,保证了区块链网络中每个成员节点的安全性,从而提高了区块链中数据的可信度。
在一个实施例中,如图4所示,图4为数据跟踪系统的系统部分框架图。如图4所示,数据跟踪系统的部分系统可以包括接口服务层410、智能合约层420、共识机制层430、区块链基础设施层440以及服务跟踪可视化平台450。其中,接口服务层410由服务调用链上的所有接口服务组成,接口服务之间存在级联调用的关系,可以由不同的服务提供方提供。接口服务层的服务程序运行可以产生调用数据,计算机设备可以对调用数据进行封装,得到日志数据。
计算机设备可以通过调用智能合约层420中的代码将日志数据写入区块链。智能合约是运行在区块链上的业务逻辑代码,智能合约层420可以具备数据写入功能以及数据查询功能,其中,数据写入功能可以向区块链发起日志数据的写入请求;数据查询功能可以向区块链发起日志数据的查询请求。
共识机制层430可以提供区块链网络的管理和数据一致性共识。共识机制层430可以具备成员管理功能、共识机制功能以及管控机制功能。其中,成员管理功能可以用于对所有服务提供方以及服务调用方的身份合法性进行安全认证,对服务提供方以及服务调用方作为成员节点的加入、退出等行为进行管理。共识机制功能可以用于对每一条日志数据的写入请求进行合法性校验,校验通过才能成功写入区块链。管控机制功能可以用于对区块链网络的运行进行监控,对有故障、恶意行为的节点进行惩罚。
区块链基础设施层440可以提供区块链底层网络基础设施。区块链基础设施层440可以包括点对点网络通信模块442、数字签名模块444、账本数据库模块446以及状态数据库模块448。其中,点对点网络通信模块442可以用于各个节点之间的数据交换;数字签名模块444可以用于标记数据的来源,保证数据的可验证和可信性;账本数据库模块446可以以链式数据结构存储所有历史产生的日志数据,通过账本数据库模块446可以获得所有历史调用信息;状态数据库模块448可以用于存储实时的日志数据,通过状态数据库模块448可以获得接口调用过程的最新状态。
服务跟踪可视化平台450用于提供一个可视化的界面,可以直观展示日志数据以及节点信息等。
在一个实施例中,提供的一种数据获取方法还可以包括将日志数据写入区块链中的过程,具体包括:根据日志数据生成新区块;当新区块通过区块链网络验证后,将含有日志数据的新区块加入区块链网络。
区块是区块链网络的组成部分,区块链网络中可以包含有多个区块。计算机设备可以根据共识算法生成新区快,其中,共识算法可以是共识哈希算法。计算机设备可以根据共识算法建立多个新区块。日志数据是对调用数据的抽象和建模,日志数据记录了服务调用过程中某个服务调用环节的相关数据,例如,服务调用方标识、服务提供方标识等数据。
计算机设备获取到日志数据后,可以根据日志数据生成新区快。计算机设备可以对生成的新区块进行验证,当新区块通过区块链网络验证后,计算机设备可以将含有日志数据的新区块写入区块链网络。写入区块链网络中的新区块中包含有日志数据,每一条日志数据都会作为一条交易数据向区块链发起写入请求,交易数据被打包进新区块。每一条交易数据都需要进行合法性验证,必须得到区块链网络中一定数量的成员节点的支持,才能最终写入区块链的公共账本中。
在本实施例中,计算机设备通过根据日志数据生成新区块,当新区块通过区块链网络验证后,将含有日志数据的新区块加入区块链网络。计算机设备通过将日志数据写入新区块中,并将通过验证的新区块加入到区块链网络中,可以使区块链中的日志数据更加透明和可信。
在一个实施例中,提供的一种数据获取方法还可以包括生成日志数据的过程,具体包括:获取日志数据模型,根据日志数据模型对调用数据进行封装,生成相应的日志数据。
日志数据模型可以用于规范获取到的调用数据。其中,日志数据模型中可以包括服务调用方发送的调用请求、服务调用方发送调用请求时产生的日志、服务提供方收到调用请求时产生的日志、服务提供方的响应请求结果、服务提供方的响应请求时间等。
日志数据模型中可以包含有多个字段,例如,日志数据模型中可以包含有调用链标识、服务请求方标识、服务提供方标识、日志生产者标识、服务调用所处的阶段以及时间戳等字段。其中,调用链标识用于表示在时间段内发生的一次完整的接口调用过程所形成的调用链;服务请求方标识用于区分不同的服务请求方;服务提供方标识用于区分不同的服务提供方;日志生产者标识用于区分不同的日志生产者;服务调用所处的阶段可以包括服务请求方的请求发送阶段、服务请求方的服务接收阶段、服务提供方的服务响应阶段、服务提供方的响应确认阶段等;时间戳用于表示日志产生的时间。
计算机设备可以对获取到的调用数据进行验证,具体的,计算机设备可以对获取的调用数据是否合法进行验证。例如,计算机设备可以对获取的调用数据是否是服务提供方在调用服务的过程中产生的进行验证。当调用数据验证通过时,计算机设备可以将调用数据按照日志数据模型中的字段进行封装,从而生成相应的日志数据。
在本实施例中,计算机设备通过获取日志数据模型,根据日志数据模型对调用数据进行封装,生成相应的日志数据。计算机设备根据日志数据模型对验证通过的调用数据进行封装,从而生成日志数据,可以使生成的日志数据更加规范,便于查找。
在一个实施例中,如图5所示,图5为服务调用关系的示意图。如图5所示,服务调用关系中包含了服务调用方A、服务提供方B以及服务提供方C,服务调用方A可以向服务提供方B调用服务,服务提供方B可以向服务提供方C调用服务。服务调用方A向服务提供方B发送调用请求,可以产生的日志数据L1,服务提供方B接收到请求时可以产生的日志数据L2;服务提供方B向服务提供方C发送调用请求时,为服务提供方B发送请求时可以产生日志数据L3,服务提供方C接收到请求时可以产生的日志数据L4;服务提供方C向服务提供方B响应请求结果时,服务提供方C可以产生日志数据L5,服务提供方B确认服务提供方C的响应时可以产生日志数据L6;服务提供方B向服务调用方A响应请求结果时,服务提供方B可以产生日志数据L7,服务调用方A可以产生日志数据L8。
在一个实施例中,提供的一种数据获取方法还可以包括展示日志数据的过程,具体包括:当获取到的日志数据存在异常时,突出展示日志数据;获取突出展示的日志数据的数量;当日志数据的数量大于数量阈值时,展示提示信息;提示信息用于提示数据异常。
计算机设备可以对获取的日志数据是否异常进行检测。当计算机设备检测到获取的日志数据存在异常时,计算机设备可以根据用户输入的查询指令在区块链网络中查找对应的日志数据。例如,用户输入调用链标识为1的查询指令,计算机设备可以在区块链网络中查找含有调用链标识为1的日志数据。
计算机设备可以设有显示屏,用于展示日志数据。当计算机设备检测到用户输入的查询指令时,计算机设备可以在区块链网络中查找对应的日志数据,进而获取对应的日志数据。计算机设备可以将获取的日志数据展示在显示屏中。当计算机设备获取到的日志数据存在异常时,计算机设备可以对该异常日志数据进行突出展示。
数量阈值可以是用户通过计算机设备设置的,还可以是计算机设备自动生成的,可以是预先设置好的一个数值。例如,数量阈值可以是5、6、7等具体的数值。计算机设备可以获取突出展示的日志数据的数量,并将获取到的日志数据的数量与数量阈值进行比较,并得到比较结果。例如,数量阈值为5,计算机设备获取到的突出展示的日志数据的数量为6,计算机设备可以得到日志数据的数量大于数量阈值的比较结果。
提示信息可以用于提示数据异常。其中,提示信息的提示方式可以是语音提示、弹框提示等,在此不做限定。当日志数据的数量大于数量阈值时,计算机设备可以展示提示信息。
在本实施例中,当获取到的日志数据存在异常时,突出展示日志数据,获取突出展示的日志数据的数量,当日志数据的数量大于数量阈值时,展示提示信息,提示信息用于提示数据异常。计算机设备通过将获取的日志数据展示出来,并对异常日志数据进行突出展示,在异常日志数据达到一定数量时,计算机设备可以发出提示信息,使得日志数据展示得更加直观。
在另一个实施例中,提供的一种数据获取方法还可以包括更新界面中日志数据的过程,具体包括:检测区块链网络中区块的数量,当区块数量增加时,获取增加的区块对应的日志数据,根据增加的区块对应的日志数据对界面上展示的日志数据进行更新。
区块链网络中可以存在多个区块,计算机设备可以对区块链网络中区块的数量进行检测。具体的,计算机设备可以定时对区块链网络中区块的数量进行检测,例如,计算机设备可以每隔1分钟就对区块链网络中区块的数量进行检测一次。计算机设备还可以区块链网络中区块的数量是否有增加进行检测,例如,计算机设备检测到区块链网络中区块的数量为5,隔了1分钟后,计算机设备检测到的区块链网络中区块的数量为6,计算机设备可以得出区块链网络中区块的数量增加了。计算机设备可以获取增加的区块对应的日志数据,并根据增加的区块对应的日志数据分别对界面上展示的日志数据进行更新。
在本实施例中,计算机设备通过检测区块链网络中区块的数量,当区块数量增加时,获取增加的区块对应的日志数据,根据增加的区块对应的日志数据对界面上展示的日志数据进行更新。计算机设备通过获取增加的区块对应的日志数据,对界面上展示的日志数据进行更新,可以使界面中展示的日志数据都是最新的,保证了日志数据的可信度。
在一个实施例中,提供的一种数据获取方法还可以包括调用日志数据的过程,具体包括:当检测到对调用数据的查询指令时,提取查询指令中的用户标识;当用户标识验证通过时,从区块链网络中获取与调用数据对应的日志数据。
用户可以通过计算机设备输入对调用数据的查询指令,其中,查询指令中包含有用户标识。当计算机设备检测到对调用数据的查询指令时,计算机设备可以提取查询指令中的用户标识。计算机设备可以对提取的用户标识进行验证,当用户标识验证通过时,计算机设备可以从区块链网络中获取与调用数据对应的日志数据。
在本实施例中,当检测到对调用数据的查询指令时,提取查询指令中的用户标识,当用户标识验证通过时,从区块链网络中获取与调用数据对应的日志数据。计算机设备通过对查询调用数据的用户标识进行验证,只有验证通过时,计算机设备才会从区块链网络中获取与调用数据对应的日志数据,保证了日志数据的安全性。
应该理解的是,虽然上述各个流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各个流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种数据获取装置600,包括:调用数据获取模块610、日志数据生成模块620、日志数据写入模块630以及日志数据获取模块640,其中:
调用数据获取模块610,用于获取在调用服务的过程中产生的调用数据。
日志数据生成模块620,用于对调用数据进行封装,生成相应的日志数据。
日志数据写入模块630,用于将日志数据写入区块链网络中。
日志数据获取模块640,用于当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。
在本实施例中,计算机设备通过获取在调用服务的过程中产生的调用数据,对调用数据进行封装,生成相应的日志数据,将日志数据写入区块链网络中,当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。通过将服务提供方以及服务调用方在调用服务过程中生成的日志数据写入区块链中,解除了服务提供方和服务调用方之间数据的隔离,保证了调用服务过程中日志数据的透明度和可信度。由于可以直接从区块链网络中获取日志数据,使得日志数据的获取更加便捷。
在一个实施例中,提供的一种数据获取装置还可以包括区块链网络建立模块,用于分别获取与调用数据对应的节点信息,分别根据节点信息获取对应的成员节点,当成员节点验证通过后,将成员节点加入区块链网络。
在一个实施例中,日志数据写入模块630还可以用于根据日志数据生成新区块,当新区块通过区块链网络验证后,将含有日志数据的新区块加入区块链网络。
在一个实施例中,日志数据生成模块620还用于获取日志数据模型,根据日志数据模型对调用数据进行封装,生成相应的日志数据。
在一个实施例中,提供的一种数据获取模块还可以包括日志数据展示模块,用于当获取到的日志数据存在异常时,突出展示日志数据,获取突出展示的日志数据的数量,当日志数据的数量大于数量阈值时,展示提示信息,提示信息用于提示数据异常。
在一个实施例中,日志数据展示模块还用于检测区块链网络中区块的数量,当区块数量增加时,获取增加的区块对应的日志数据,根据增加的区块对应的日志数据对界面上展示的日志数据进行更新。
在一个实施例中,查询指令中包含有用户标识,日志数据获取模块640还用于当检测到对调用数据的查询指令时,提取查询指令中的用户标识,当用户标识验证通过时,从区块链网络中获取与调用数据对应的日志数据。
关于数据获取装置的具体限定可以参见上文中对于数据获取方法的限定,在此不再赘述。上述数据获取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,也可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储日志数据、调用数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据获取方法。该计算机设备的输入装置可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:获取在调用服务的过程中产生的调用数据;对调用数据进行封装,生成相应的日志数据;将日志数据写入区块链网络中;当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:分别获取与调用数据对应的节点信息;分别根据节点信息获取对应的成员节点;当成员节点验证通过后,将成员节点加入区块链网络。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据日志数据生成新区块;当新区块通过区块链网络验证后,将含有日志数据的新区块加入所述区块链网络。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取日志数据模型;根据日志数据模型对调用数据进行封装,生成相应的日志数据。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当获取到的日志数据存在异常时,突出展示日志数据;获取突出展示的日志数据的数量;当日志数据的数量大于数量阈值时,展示提示信息;提示信息用于提示数据异常。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:检测区块链网络中区块的数量;当区块数量增加时,获取增加的区块对应的日志数据;根据增加的区块对应的日志数据对界面上展示的日志数据进行更新。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:当检测到对调用数据的查询指令时,提取查询指令中的用户标识;当用户标识验证通过时,从区块链网络中获取与调用数据对应的日志数据。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取在调用服务的过程中产生的调用数据;对调用数据进行封装,生成相应的日志数据;将日志数据写入区块链网络中;当检测到对调用数据的查询指令时,从区块链网络中获取与调用数据对应的日志数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:分别获取与调用数据对应的节点信息;分别根据节点信息获取对应的成员节点;当成员节点验证通过后,将成员节点加入区块链网络。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据日志数据生成新区块;当新区块通过区块链网络验证后,将含有日志数据的新区块加入区块链网络。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取日志数据模型;根据日志数据模型对调用数据进行封装,生成相应的日志数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当获取到的日志数据存在异常时,突出展示日志数据;获取突出展示的日志数据的数量;当日志数据的数量大于数量阈值时,展示提示信息;提示信息用于提示数据异常。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:检测区块链网络中区块的数量;当区块数量增加时,获取增加的区块对应的日志数据;根据增加的区块对应的日志数据对界面上展示的日志数据进行更新。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:当检测到对调用数据的查询指令时,提取查询指令中的用户标识;当用户标识验证通过时,从区块链网络中获取与调用数据对应的日志数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种数据获取方法,所述方法包括:
获取在调用服务的过程中产生的调用数据;所述调用数据包括服务调用方标识、服务提供方标识、调用服务的时间、调用服务的类型中的至少一种;
获取日志数据模型,根据日志数据模型对调用数据进行封装,生成相应的日志数据;日志数据模型中包含调用链标识、服务请求方标识、服务提供方标识、日志生产者标识、服务调用所处的阶段以及时间戳,其中,调用链标识用于表示在时间段内发生的一次完整的接口调用过程所形成的调用链;服务请求方标识用于区分不同的服务请求方;服务提供方标识用于区分不同的服务提供方;日志生产者标识用于区分不同的日志生产者;服务调用所处的阶段包括服务请求方的请求发送阶段、服务请求方的服务接收阶段、服务提供方的服务响应阶段、服务提供方的响应确认阶段;时间戳用于表示日志产生的时间;
将所述日志数据写入区块链网络中;
当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
分别获取与所述调用数据对应的节点信息;
分别根据所述节点信息获取对应的成员节点;
当所述成员节点验证通过后,将所述成员节点加入所述区块链网络。
3.根据权利要求1所述的方法,其特征在于,所述将所述日志数据写入区块链网络中,包括:
根据所述日志数据生成新区块;
当所述新区块通过区块链网络验证后,将含有所述日志数据的新区块加入所述区块链网络。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当获取到的所述日志数据存在异常时,突出展示所述日志数据;
获取突出展示的日志数据的数量;
当所述日志数据的数量大于数量阈值时,展示提示信息;所述提示信息用于提示数据异常。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检测所述区块链网络中区块的数量;
当所述区块数量增加时,获取增加的区块对应的日志数据;
根据所述增加的区块对应的日志数据对界面上展示的日志数据进行更新。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述查询指令中包含有用户标识;所述当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据,包括:
当检测到对所述调用数据的查询指令时,提取所述查询指令中的用户标识;
当所述用户标识验证通过时,从所述区块链网络中获取与所述调用数据对应的日志数据。
7.一种数据获取装置,其特征在于,所述装置包括:
调用数据获取模块,用于获取在调用服务的过程中产生的调用数据;所述调用数据包括服务调用方标识、服务提供方标识、调用服务的时间、调用服务的类型中的至少一种;
日志数据生成模块,用于获取日志数据模型,根据日志数据模型对调用数据进行封装,生成相应的日志数据;日志数据模型中包含调用链标识、服务请求方标识、服务提供方标识、日志生产者标识、服务调用所处的阶段以及时间戳,其中,调用链标识用于表示在时间段内发生的一次完整的接口调用过程所形成的调用链;服务请求方标识用于区分不同的服务请求方;服务提供方标识用于区分不同的服务提供方;日志生产者标识用于区分不同的日志生产者;服务调用所处的阶段包括服务请求方的请求发送阶段、服务请求方的服务接收阶段、服务提供方的服务响应阶段、服务提供方的响应确认阶段;时间戳用于表示日志产生的时间;
日志数据写入模块,用于将所述日志数据写入区块链网络中;
日志数据获取模块,用于当检测到对所述调用数据的查询指令时,从所述区块链网络中获取与所述调用数据对应的日志数据。
8.根据权利要求7所述的装置,其特征在于,所述查询指令中包含有用户标识;日志数据获取模块还用于当检测到对所述调用数据的查询指令时,提取所述查询指令中的用户标识;当所述用户标识验证通过时,从所述区块链网络中获取与所述调用数据对应的日志数据。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811433738.1A CN109656778B (zh) | 2018-11-28 | 2018-11-28 | 数据获取方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811433738.1A CN109656778B (zh) | 2018-11-28 | 2018-11-28 | 数据获取方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109656778A CN109656778A (zh) | 2019-04-19 |
CN109656778B true CN109656778B (zh) | 2022-07-12 |
Family
ID=66111028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811433738.1A Active CN109656778B (zh) | 2018-11-28 | 2018-11-28 | 数据获取方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109656778B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275798A (zh) * | 2019-05-08 | 2019-09-24 | 深圳壹账通智能科技有限公司 | 区块链数据处理方法、装置、服务器及存储介质 |
CN110347524B (zh) * | 2019-05-28 | 2023-03-21 | 平安普惠企业管理有限公司 | 一种异常信息的反馈方法及装置、存储介质、电子设备 |
CN110348684B (zh) * | 2019-06-06 | 2023-07-18 | 创新先进技术有限公司 | 服务调用风险模型生成方法、预测方法及各自装置 |
CN110716846B (zh) * | 2019-10-09 | 2023-08-04 | 浪潮云信息技术股份公司 | 一种基于区块链的模块间调用日志记录方法及系统 |
CN111092745A (zh) * | 2019-10-12 | 2020-05-01 | 深圳壹账通智能科技有限公司 | 基于区块链的日志处理方法、装置、计算机设备及存储介质 |
CN110719203B (zh) * | 2019-10-12 | 2023-04-07 | 腾讯云计算(北京)有限责任公司 | 智能家居设备的操作控制方法、装置、设备及存储介质 |
CN110932918B (zh) * | 2019-12-26 | 2023-01-10 | 远景智能国际私人投资有限公司 | 日志数据采集方法、装置及存储介质 |
CN111367867B (zh) * | 2020-03-05 | 2023-03-21 | 腾讯云计算(北京)有限责任公司 | 日志信息处理方法、装置、电子设备及存储介质 |
CN112632017A (zh) * | 2020-11-05 | 2021-04-09 | 北京乐学帮网络技术有限公司 | 数据库日志的处理方法、装置以及电子设备、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102891873A (zh) * | 2011-07-21 | 2013-01-23 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
KR20130076406A (ko) * | 2011-12-28 | 2013-07-08 | 숭실대학교산학협력단 | 로그 데이터를 이용한 장소 추정 장치 및 그 방법 |
CN106951352A (zh) * | 2017-03-13 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种服务器日志存储管理方法 |
CN108415925A (zh) * | 2018-01-10 | 2018-08-17 | 平安科技(深圳)有限公司 | 电子装置、数据调用日志生成及查询方法及存储介质 |
CN108833514A (zh) * | 2018-06-01 | 2018-11-16 | 众安信息技术服务有限公司 | 基于区块链的审计日志处理方法、装置和日志审计系统 |
-
2018
- 2018-11-28 CN CN201811433738.1A patent/CN109656778B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102891873A (zh) * | 2011-07-21 | 2013-01-23 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
KR20130076406A (ko) * | 2011-12-28 | 2013-07-08 | 숭실대학교산학협력단 | 로그 데이터를 이용한 장소 추정 장치 및 그 방법 |
CN106951352A (zh) * | 2017-03-13 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种服务器日志存储管理方法 |
CN108415925A (zh) * | 2018-01-10 | 2018-08-17 | 平安科技(深圳)有限公司 | 电子装置、数据调用日志生成及查询方法及存储介质 |
CN108833514A (zh) * | 2018-06-01 | 2018-11-16 | 众安信息技术服务有限公司 | 基于区块链的审计日志处理方法、装置和日志审计系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109656778A (zh) | 2019-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109656778B (zh) | 数据获取方法、装置、计算机设备和存储介质 | |
CN110633323B (zh) | 业务数据存储方法、装置、存储介质和计算机设备 | |
CN110597925B (zh) | 一种基于区块链的跨链数据处理方法及装置 | |
CN110569251A (zh) | 一种数据处理方法、相关设备及计算机可读存储介质 | |
CN111445333A (zh) | 区块生成方法、装置、计算机设备以及存储介质 | |
CN111090581B (zh) | 智能合约测试方法、装置、计算机设备和存储介质 | |
CN111080295A (zh) | 一种基于区块链的电子合同处理方法以及设备 | |
CN110908812B (zh) | 业务数据处理方法、装置、可读存储介质和计算机设备 | |
CN113114476B (zh) | 基于合约的隐私存证方法及装置 | |
CN112134956A (zh) | 一种基于区块链的分布式物联网指令管理方法和系统 | |
CN110400217B (zh) | 智能合约的规则变更处理方法及装置 | |
CN110597541B (zh) | 基于区块链的接口更新处理方法、装置、设备及存储介质 | |
CN111127021B (zh) | 基于区块链的服务请求方法及装置 | |
US11196564B2 (en) | Hierarchical distributed ledger | |
CN112200569B (zh) | 基于区块链的数字印章使用方法、装置及电子设备 | |
CN111488372A (zh) | 一种数据处理方法、设备及存储介质 | |
CN111292057A (zh) | 一种基于区块链的业务处理方法 | |
CN111274597B (zh) | 一种数据处理方法以及设备 | |
CN110598476A (zh) | 基于区块链的作品存证方法、装置和计算机可读存储介质 | |
CN112200680B (zh) | 区块链节点管理方法、装置、计算机以及可读存储介质 | |
CN112069529B (zh) | 基于区块链的卷宗管理方法、装置、计算机以及存储介质 | |
CN115701078B (zh) | 跨链交易处理方法、装置、电子设备以及存储介质 | |
CN112583606B (zh) | 安全校验方法及服务器、终端、存储介质 | |
CN114979109A (zh) | 行为轨迹检测方法、装置、计算机设备和存储介质 | |
CN113469811A (zh) | 区块链交易处理方法及装置 |
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 |