一种日志存储方法、控制节点及计算机可读存储介质技术

技术编号:20074768 阅读:54 留言:0更新日期:2019-01-15 00:33
本申请公开了一种日志存储方法、控制节点及计算机可读存储介质,所述方法包括:控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;控制节点创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志。本申请通过将云管理平台上报的日志和云主机上报的日志存储于日志侧链中,并在区块头中包括上一区块的哈希值,为云平台提供可靠准确无法篡改的操作日志服务,为云平台的后续功能提供进一步的可靠服务,并利用链的数据查询优势,提高了数据查询效率。

A Log Storage Method, Control Node and Computer Readable Storage Media

This application discloses a log storage method, a control node and a computer readable storage medium. The method includes: a control node receives logs reported by a cloud management platform and at least one log reported by a cloud host; a control node creates a current block, the current block includes a block head and a log side chain, and the block head includes a hash value of the previous block and the log side. The chain stores the received logs in a predefined order. By storing the logs reported by the cloud management platform and the logs reported by the cloud host in the log side chain and including the hash value of the previous block in the block head, this application provides reliable and accurate operation log services for the cloud platform, provides further reliable services for the follow-up functions of the cloud platform, and improves the efficiency of data query by taking advantage of the data query advantages of the chain.

【技术实现步骤摘要】
一种日志存储方法、控制节点及计算机可读存储介质
本专利技术涉及但不限于云服务
,尤其涉及一种日志存储方法、控制节点及计算机可读存储介质。
技术介绍
传统的云平台的操作日志主要存放于关系型数据库或非关系型数据库中,随着数据量的增大,数据库的查询效率逐渐降低,对云平台的整体效率造成极大影响。同时,传统的关系型数据库或非关系型数据库都容易遭到攻击,引起数据被窃取、篡改、增加或删除,造成数据破坏。
技术实现思路
本专利技术实施例提供了一种日志存储方法、控制节点及计算机可读存储介质,能够为云平台提供可靠准确无法篡改的操作日志服务并能提高数据查询效率。为了达到本专利技术目的,本专利技术实施例的技术方案是这样实现的:本专利技术实施例提供了一种日志存储方法,包括:控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;控制节点创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志。进一步地,所述日志侧链为以所述区块头或所述区块头指向的头结点为链头和链尾的闭合环链。进一步地,所述控制节点使用令牌公钥创建所述当前区块,除所述控制节点以外的节点通过令牌私钥获取所述当前区块的内容。进一步地,所述控制节点为所述云管理平台或所述云主机。进一步地,在所述控制节点接收云管理平台上报的日志及至少一个云主机上报的日志之后,所述方法还包括以下至少之一:所述控制节点按照预先定义的第一规则,对所述接收的日志进行筛选;所述控制节点按照预先定义的第二规则,将所述接收的日志中的动作流日志转化为事务日志;所述控制节点对所述接收的日志进行格式转化。本专利技术实施例还提供了一种日志存储方法,包括:在多个控制节点中竞争选出一当前控制节点;当前控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;当前控制节点创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志;当前控制节点将创建的所述当前区块的内容同步至除所述当前控制节点以外的其它控制节点。本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如以上任一项所述的日志存储方法的步骤。本专利技术实施例还提供了一种控制节点,包括处理器及存储器,其中:所述处理器用于执行存储器中存储的日志存储程序,以实现如以上任一项所述的日志存储方法的步骤。本专利技术实施例还提供了一种控制节点,包括第一日志接收模块和第一日志存储模块,其中:第一日志接收模块,用于接收云管理平台上报的日志及至少一个云主机上报的日志;第一日志存储模块,用于创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志。本专利技术实施例还提供了一种控制节点,包括第二日志接收模块、第二日志存储模块、竞争模块和日志同步模块,其中:竞争模块,用于与除所述控制节点自身以外的其它控制节点进行竞争,选出一当前控制节点,当所述控制节点自身为当前控制节点时,通知第二日志接收模块;当所述控制节点自身不是当前控制节点时,通知日志同步模块;第二日志接收模块,用于接收到竞争模块的通知,接收云管理平台上报的日志及至少一个云主机上报的日志,通知第二日志存储模块;第二日志存储模块,用于接收到第二日志接收模块的通知,创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志,通知日志同步模块;日志同步模块,用于接收到第二日志存储模块的通知,将所述创建的当前区块的内容同步至除所述控制节点自身以外的其它控制节点;接收竞争模块的通知,与所述当前控制节点创建的所述当前区块的内容进行同步。本专利技术实施例的技术方案,具有如下有益效果:本专利技术实施例提供的日志存储方法、控制节点及计算机可读存储介质,通过将云管理平台上报的日志和云主机上报的日志存储于日志侧链中,并在区块头中包括上一区块的哈希值,为云平台提供可靠准确无法篡改的操作日志服务,为云平台的后续功能提供进一步的可靠服务,并利用链的数据查询优势,提高了数据查询效率。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1为本专利技术第一实施例的一种日志存储方法的流程示意图;图2为本专利技术第一实施例的一种日志侧链的结构示意图;图3为本专利技术第一实施例的一种区块结构示意图;图4为本专利技术第一实施例的一种控制节点的结构示意图;图5为本专利技术第一实施例的另一种控制节点的结构示意图;图6为本专利技术第二实施例的一种日志存储方法的流程示意图;图7为本专利技术第二实施例的一种控制节点的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。实施例一如图1所示,根据本专利技术实施例的一种日志存储方法,包括如下步骤:步骤101:控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;需要说明的是,传统云平台的操作日志主要记录云管理平台相关的操作日志,不涉及云主机内部的相关操作日志,缺乏对平台整体日志的完整记录。单方面提供云管理平台的操作日志,不足够为重大事故以及云主机内部故障等事务提供有效完整的依据,本申请通过记录云主机内部的重要操作和系统错误日志,在所记录的日志种类上进行了扩展,为对应的审计和故障定位提供的有效的补充手段。本实施例中,所述控制节点可以为所述云管理平台或任一所述云主机。本实施例中,在所述控制节点接收云管理平台上报的日志及至少一个云主机上报的日志之后,所述方法还包括以下至少之一:所述控制节点按照预先定义的第一规则,对所述接收的日志进行筛选;所述控制节点按照预先定义的第二规则,将所述接收的日志中的动作流日志转化为事务日志;所述控制节点对所述接收的日志进行格式转化。需要说明的是,所述预先定义的第一规则,用于去除所述云管理平台上报的日志和各个云主机上报的日志中的非重要日志。至于哪些日志属于重要日志,哪些日志属于非重要日志,可以由系统管理员预先进行定义。传统云平台的操作日志大多属于动作流日志;所谓的动作流日志,记录一个从开始到结束的整个过程,主要在各个操作动作的不同应用程序编程接口(API,ApplicationProgrammingInterface)请求节点,通过调用消息队列(MessageQueue,MQ),将对应的日志固化到底层存储。动作流日志区别于事务日志,其无法为后续的日志审计和依赖日志的云平台计费提供有效的依据,限制了平台整体的扩展性;同时动作流日志无法有效准确地提供失败和未完成的事务日志,给云平台的操作日志平添不少遗憾。本申请通过将动作流日志解析合并生成事务日志,唯一标识平台操作。此处预先定义的第二规则,由系统管理员生成,例如,可以预先指定某一事务日志为一系列数据更新操作的动作有序记录集合,具体地,一组创建实例的动作流如下:instancecreatestart-&g本文档来自技高网...

【技术保护点】
1.一种日志存储方法,其特征在于,包括:控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;控制节点创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志。

【技术特征摘要】
1.一种日志存储方法,其特征在于,包括:控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;控制节点创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志。2.根据权利要求1所述的方法,其特征在于,所述日志侧链为以所述区块头或所述区块头指向的头结点为链头和链尾的闭合环链。3.根据权利要求1所述的方法,其特征在于,所述控制节点使用令牌公钥创建所述当前区块,除所述控制节点以外的节点通过令牌私钥获取所述当前区块的内容。4.根据权利要求1所述的方法,其特征在于,所述控制节点为所述云管理平台或所述云主机。5.根据权利要求1所述的方法,其特征在于,在所述控制节点接收云管理平台上报的日志及至少一个云主机上报的日志之后,所述方法还包括以下至少之一:所述控制节点按照预先定义的第一规则,对所述接收的日志进行筛选;所述控制节点按照预先定义的第二规则,将所述接收的日志中的动作流日志转化为事务日志;所述控制节点对所述接收的日志进行格式转化。6.一种日志存储方法,其特征在于,包括:在多个控制节点中竞争选出一当前控制节点;当前控制节点接收云管理平台上报的日志及至少一个云主机上报的日志;当前控制节点创建当前区块,所述当前区块包括区块头和日志侧链,所述区块头包括上一区块的哈希值,所述日志侧链按照预先定义的顺序,存储接收的日志;当前控制节点将创建的所述当前区块的内容同步至除所述当前控制节点以外的其它控制节点。7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述...

【专利技术属性】
技术研发人员:杨清强彭明媛严晓杰林子皇
申请(专利权)人:厦门集微科技有限公司
类型:发明
国别省市:福建,35

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

1