一种基于云计算的日志生成方法及系统与流程

文档序号:12123554阅读:308来源:国知局
一种基于云计算的日志生成方法及系统与流程

本发明涉及云计算技术领域,尤其涉及一种基于云计算的日志生成方法及系统。



背景技术:

云计算(Cloud Computing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机和其他设备。云是网络、互联网的一种比喻说法,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展。

目前,日志信息生成方法为:获取云环境中的虚拟机或宿主机的日志信息,并将其保存到存储空间中供后续分析使用。通常,日志信息可以包括云环境中的虚拟机或宿主机的CPU使用率信息、内存使用率或磁盘使用率信息,还可以包括磁盘IO(Input Output,输入输出)流量信息、网络流量信息,以及系统登录信息、访问信息、端口连接信息等。通过对日志信息的分析,可获取虚拟机或宿主机的负载及访问情况等信息,从而为企业对突发事件、网络攻击等事件的发生和应对提供数据参考;同时,可以根据日志信息中提供的用户数据进行用户行为研究,还可为企业的未来产品发展提供数据依据。

现有技术中,对于云环境中的日志信息,一般采用完全保存的方式进行存储,随着云环境中用户的剧增,这种方式会导致形成不必要的冗余数据,浪费云计算服务器的磁盘存储空间,同时也降低了对日志信息的查询速度;而且,由于智能手机、平板电脑和其他互联网设备的普及,以及云计算技术的发展,互联网带宽资源和云端内网资源在不久的将来都将面临带宽极限的问题,现有技术中将日志信息的所有原始数据上传至存储空间的方式,浪费了大量的网络带宽,使其存在局限性。



技术实现要素:

本发明的目的在于提出一种基于云计算的日志生成方法及系统,能够以节约存储空间、节约网络带宽。

为达此目的,本发明采用以下技术方案:

本发明一方面提供了一种基于云计算的日志生成方法,包括:

周期性获取云环境中的各虚拟机的日志信息到缓存;

当预设的处理周期到来时,对本处理周期内缓存的日志信息进行分组,将其中来自同一虚拟机的日志信息归为一组;

分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理;

对合并处理后的日志信息进行存储;

其中,所述预设的处理周期为获取日志信息的时间周期的4~10倍。

其中,日志信息的类型包括:

第一类:CPU使用率、磁盘使用率、磁盘IO流量或网络流量信息;

第二类:系统登录信息或访问信息。

其中,所述分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理,包括:

确定本处理周期内的各组日志信息中各条日志信息的类型;

对其中的第一类日志信息进行合并处理具体为,计算平均值,生成包含所述平均值的一条日志信息作为第一类日志信息的合并日志信息;

对其中的第二类日志信息进行合并处理具体为,将本处理周期内获取到的第一条第二类日志信息作为临时日志记录,将其他第二类日志信息与该临时日志记录比较,若其他第二类日志信息的登录或者访问用户包含在临时日志记录中,则将舍弃该第二类日志信息;否则,更新临时日志记录将对应的用户信息加入;将最终的临时日志记录中作为第二类日志信息的合并日志信息。

其中,所述对其中的第一类日志信息进行合并处理,还包括:

统计全部第一类日志信息中的最大值、最小值,根据所述最大值、最小值计算出本处理周期内的波动值,所述第一类日志信息的合并日志信息中还包含所述最大值、最小值和波动值。

其中,所述对其中的第二类日志信息进行合并处理,还包括:

统计对应用户的访问次数,所述第二类日志信息的合并日志信息中还包括对应用户的访问次数的信息。

本发明还提供了一种基于云计算的日志生成系统,包括:

缓存模块,用于周期性获取云环境中的各虚拟机的日志信息到缓存;

分组模块,用于当预设的处理周期到来时,对本处理周期内缓存的日志信息进行分组,将其中来自同一虚拟机的日志信息归为一组;

合并模块,用于分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理;

存储模块,用于对合并处理后的日志信息进行存储;

其中,所述预设的处理周期为获取日志信息的时间周期的4~10倍。

其中,其中,日志信息的类型包括:

第一类:CPU使用率、磁盘使用率、磁盘IO流量或网络流量信息;

第二类:系统登录信息或访问信息。

其中,所述分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理,包括:

确定本处理周期内的各组日志信息中各条日志信息的类型;

对其中的第一类日志信息进行合并处理具体为,计算平均值,生成包含所述平均值的一条日志信息作为第一类日志信息的合并日志信息;

对其中的第二类日志信息进行合并处理具体为,将本处理周期内获取到的第一条第二类日志信息作为临时日志记录,将其他第二类日志信息与该临时日志记录比较,若其他第二类日志信息的登录或者访问用户包含在临时日志记录中,则将舍弃该第二类日志信息;否则,更新临时日志记录将对应的用户信息加入;将最终的临时日志记录中作为第二类日志信息的合并日志信息。

其中,所述对其中的第一类日志信息进行合并处理,还包括:

统计全部第一类日志信息中的最大值、最小值,根据所述最大值、最小值计算出本处理周期内的波动值,所述第一类日志信息的合并日志信息中还包含所述最大值、最小值和波动值。

其中,所述对其中的第二类日志信息进行合并处理,还包括:

统计对应用户的访问次数,所述第二类日志信息的合并日志信息中还包括对应用户的访问次数的信息。

实施本发明实施例,具有如下有益效果:

本发明实施例,当日志信息的采集频率高于统计分析频率时,将一个处理周期内,从同一虚拟机或宿主机获取的多条日志信息进行合并,仅将合并后的日志信息存储到存储空间内,而不需要缓存或者保存日志信息的所有原始数据;从而,节约存储空间,并节约网络带宽,并降低了保存大量日志信息的原始数据的成本。基于本发明的方案,若用户需要查询或统计一段时间内的日志信息,基于本发明的方案处理后的日志信息中查询或统计,可提高了查询或统计速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明第一实施例的一种基于云计算的日志生成方法的流程示意图。

图2是本发明第二实施例的一种基于云计算的日志生成系统的结构示意图。

具体实施方式

下面结合本发明的附图对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

结合图1对本发明的第一实施例进行说明。

图1是本发明第一实施例的一种基于云计算的日志生成方法流程图,详述如下:

步骤101,周期性获取云环境中的各虚拟机的日志信息到缓存。

在第一实施例中,将获取的日志信息先进行缓存,而不是直接存储到数据库中,等待合并处理。获取日志信息的时间周期可根据需要进行设定。

需要说明的是,该步骤也为周期性获取云环境中的各宿主机的日志信息到缓存,其原理相同,应该属于本发明的保护范围。

步骤102,当预设的处理周期到来时,对本处理周期内缓存的日志信息进行分组,将其中来自同一虚拟机的日志信息归为一组。

在第一实施例中,当设定的处理周期到达后,对于在本次处理周期内缓存的全部日志信息中,来自同一虚拟机或宿主机的日志信息划分到一个组中。

其中,设定的处理周期需大于获取日志信息的时间周期,具体时间可以由本领域技术人员根据需要设定。优选的,本实施例中,将所述预设的处理周期设定为获取日志信息的时间周期的4~10倍。

步骤103,分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理。

在第一实施例中,日志信息分为两类,具体为:第一类:CPU使用率、磁盘使用率、磁盘IO流量或网络流量信息等可以反映负载情况的信息;第二类:系统登录信息或访问信息等可以反映访问情况的信息。

作为本发明的一优选实施方式,步骤103的具体实现方式可如下:

首先,确定本处理周期内的各组日志信息中各条日志信息的类型,识别出各组日志信息中的第一类日志信息和第二类日志信息;

然后,对其中的第一类日志信息进行合并处理。具体可为,计算各组中全部第一类日志信息的平均值,生成包含所述平均值的一条日志信息作为第一类日志信息的合并日志信息。即对于本处理周期内,来自同一虚拟机的负载信息进行平均值计算,将得到的负载信息的平均情况作为反应本处理周期内的对应虚拟机的负载情况的日志信息。

对其中的第二类日志信息进行合并处理,具体可为,将本处理周期内获取到的第一条第二类日志信息作为临时日志记录,将其他第二类日志信息与该临时日志记录比较,若其他第二类日志信息的登录或者访问用户包含在临时日志记录中,则将舍弃该第二类日志信息;否则,更新临时日志记录将对应的用户信息加入;将最终的临时日志记录中作为第二类日志信息的合并日志信息。即对于本处理周期内重复访问的用户信息进行合并,删除冗余的用户信息。

步骤104,对合并处理后的日志信息进行存储。

在第一实施例中,只将合并处理后的日志信息写入磁盘或者数据库中进行存储,以供查阅和分析,存储完成后,释放缓存,清空其中的日志信息。

较佳的,作为本发明的另一优选实施方式,对本处理周期内的各组日志信息中的第一类日志信息进行合并处理时,还可为:统计全部第一类日志信息中的最大值、最小值,根据所述最大值、最小值计算出本处理周期内的波动值,计算第一类日志信息包含的CPU使用率、磁盘使用率、磁盘IO流量或网络流量信息等负载信息的平均值,生成包含所述平均值、最大值、最小值和波动值的一条日志信息作为第一类日志信息的合并日志信息。以更全面的保全日志信息的内容,便于后续根据日志信息分析时获得更详尽的负载信息。

较佳的,作为本发明的另一优选实施方式,对本处理周期内的各组日志信息中的第二类日志信息进行合并处理时,还可为:将本处理周期内获取到的第一条第二类日志信息作为临时日志记录,将其他第二类日志信息与该临时日志记录比较,若其他第二类日志信息的登录或者访问用户包含在临时日志记录中,则舍弃该第二类日志信息,更新对应用户的访问次数;否则,更新临时日志记录将对应的用户信息加入,更新对应用户的访问次数;将最终的临时日志记录、以及对应用户的访问次数作为第二类日志信息的合并日志信息。以更全面的保全日志信息的用户访问信息,便于后续根据日志信息分析时获得更详尽的用户访问信息。

通过本发明第一实施例,当日志信息的采集频率高于统计分析频率时,将一个处理周期内,从同一虚拟机或宿主机获取的多条日志信息进行合并,仅将合并后的日志信息存储到存储空间内,而不需要缓存或者保存日志信息的所有原始数据;从而,节约存储空间,并节约网络带宽,并降低了保存大量日志信息的原始数据的成本。基于本发明的方案,若用户需要查询或统计一段时间内的日志信息,基于本发明的方案处理后的日志信息中查询或统计,可提高了查询或统计速度。

以下为本发明实施例提供的一种基于云计算的日志生成系统的实施例。所述系统的实施例与上述的方法实施例属于同一构思,系统的实施例中未详尽描述的细节内容,可以参考上述方法实施例。

图2示出了本发明第二实施例的一种基于云计算的日志生成系统的结构示意图,下面进行详细说明。

请参见图2,本实施例的基于云计算的日志生成系统包括:缓存模块210、分组模块220、合并模块230以及存储模块240。各模块具体说明如下:

所述的缓存模块210,用于周期性获取云环境中的各虚拟机的日志信息到缓存。

在本实施例中,将获取的日志信息先进行缓存,而不是直接存储到数据库中,等待合并处理。获取日志信息的时间周期可根据需要进行设定。

需要说明的是,该步骤也为周期性获取云环境中的各宿主机的日志信息到缓存,其原理相同,应该属于本发明的保护范围。

所述分组模块220,用于当预设的处理周期到来时,对本处理周期内缓存的日志信息进行分组,将其中来自同一虚拟机的日志信息归为一组。

其中,设定的处理周期需大于获取日志信息的时间周期,具体时间可以由本领域技术人员根据需要设定。优选的,本实施例中,将所述预设的处理周期设定为获取日志信息的时间周期的4~10倍。

所述的合并模块230,用于分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理。

在第二实施例中,日志信息分为两类,具体为:第一类:CPU使用率、磁盘使用率、磁盘IO流量或网络流量信息等可以反映负载情况的信息;第二类:系统登录信息或访问信息等可以反映访问情况的信息。

所述分析本处理周期内的各组日志信息,将各组日志信息中类型相同的若干条日志信息进行合并处理具体可为:

首先,确定本处理周期内的各组日志信息中各条日志信息的类型,识别出各组日志信息中的第一类日志信息和第二类日志信息;

然后,对其中的第一类日志信息进行合并处理。具体可为,计算各组中全部第一类日志信息的平均值,生成包含所述平均值的一条日志信息作为第一类日志信息的合并日志信息。即对于本处理周期内,来自同一虚拟机的负载信息进行平均值计算,将得到的负载信息的平均情况作为反应本处理周期内的对应虚拟机的负载情况的日志信息。

对其中的第二类日志信息进行合并处理,具体可为,将本处理周期内获取到的第一条第二类日志信息作为临时日志记录,将其他第二类日志信息与该临时日志记录比较,若其他第二类日志信息的登录或者访问用户包含在临时日志记录中,则将舍弃该第二类日志信息;否则,更新临时日志记录将对应的用户信息加入;将最终的临时日志记录中作为第二类日志信息的合并日志信息。即对于本处理周期内重复访问的用户信息进行合并,删除冗余的用户信息。

所述的存储模块240,用于对合并处理后的日志信息进行存储。

在本实施例中,只将合并处理后的日志信息写入磁盘或者数据库中进行存储,以供查阅和分析,存储完成后,释放缓存,清空其中的日志信息。

进一步的,作为本实施例的另一优选实施方式,所述对第一类日志信息进行合并处理时,还可以包括:统计全部第一类日志信息中的最大值、最小值,根据所述最大值、最小值计算出本处理周期内的波动值,所述第一类日志信息的合并日志信息中还包含所述最大值、最小值和波动值。

进一步的,作为本实施例的另一优选实施方式,所述对第二类日志信息进行合并处理,还可以包括:统计对应用户的访问次数,所述第二类日志信息的合并日志信息中还包括对应用户的访问次数的信息。

通过本发明上述实施例,通过将一定时间内(处理周期内)缓存的若干条日志信息进行合并处理,仅将合并后的一条日志信息存储到存储空间内;从而,节约存储空间,并节约网络带宽,并降低了保存大量日志信息的原始数据的成本。基于本发明的方案,若用户需要查询或统计一段时间内的日志信息,基于本发明的方案处理后的日志信息中查询或统计,可提高了查询或统计速度。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利要求范围,因此,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,仍属本发明所涵盖的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1