一种日志存储方法、装置、设备、介质制造方法及图纸

技术编号:24010495 阅读:32 留言:0更新日期:2020-05-02 01:34
本申请公开了一种日志存储方法、装置、设备、介质,该方法包括:通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存;通过所述第一级日志缓存对所述日志数据进行存储;通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据,其中,所述第二级日志缓存获取的所述日志数据的数量由操作系统当前的内存使用率确定;通过预设数据库从所述第二级日志缓存中获取所述日志数据,并对所述日志数据进行保存,其中,所述预设数据库获取的所述日志数据的数量由所述操作系统当前的综合运行压力确定。这样能够为日志存储提供足够的容量,避免日志数据因容量不够而丢失,减低磁盘压力,提高系统运行性能。

A log storage method, device, equipment and medium

【技术实现步骤摘要】
一种日志存储方法、装置、设备、介质
本申请涉及日志存储
,特别涉及一种日志存储方法、装置、设备、介质。
技术介绍
日志是所有系统必须的一个模块,因为系统在运行过程中总是会出现各种各样的问题,如果没有日志系统去记录关键信息,运维团队和开发者很难去定位问题。因此,在所有规模的系统中,日志是关键的核心功能。目前主流系统中,大约90%的系统都采用文件的方式记录日志。这样就带来了一个很直接的问题:磁盘IO压力会很高,因为日志系统在高并发情况下,会频繁地打开、写入和关闭文件,造成文件系统磁盘压力骤增。主流的日志系统采用单一缓存定时取数据的方式来缓解日志存储中遇到的文件系统磁盘压力骤增问题,但这种方法在高并发情况下,单一缓存的容量会不足够,从而造成数据的丢失。而且如果本身系统的磁盘压力已经过大,日志系统定时的往磁盘中写入定量的日志数据,会给磁盘带来更高的压力,影响系统的运行,降低系统运行性能。
技术实现思路
有鉴于此,本申请的目的在于提供一种日志存储方法、装置、设备、介质,能够为日志存储提供足够的容量,避免日志数据因容量不够而丢失,减低磁盘压力,提高系统运行性能。其具体方案如下:第一方面,本申请公开了一种日志存储方法,应用于日志系统,包括:通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存;通过所述第一级日志缓存对所述日志数据进行存储;通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据,其中,所述第二级日志缓存获取的所述日志数据的数量由操作系统当前的内存使用率确定;通过预设数据库从所述第二级日志缓存中获取所述日志数据,并对所述日志数据进行保存,其中,所述预设数据库获取的所述日志数据的数量由所述操作系统当前的综合运行压力确定。可选的,所述日志存储方法,还包括:通过所述第二级日志缓存记录日志信息,其中,所述日志信息包括已存储到所述预设数据库中的日志信息和已向所述预设数据库发送日志通知但还未存入所述预设数据库的日志信息。可选的,所述通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据之后,还包括:将所述第一级日志缓存中已被所述第二级日志缓存读取过的所述日志数据删除。可选的,所述通过第二级日志缓存从所述第一级日志缓存中获取相应数量的所述日志数据,包括:通过第二级日志缓存接收到所述第一级日志缓存发送的日志通知后,从所述第一级日志缓存中获取相应数量的所述日志数据。可选的,所述通过第二级日志缓存从所述第一级日志缓存中获取相应数量的所述日志数据,包括:若所述操作系统当前的内存使用率小于预设内存使用阈值,则通过所述第二级日志缓存主动从所述第一级日志缓存中获取所述日志数据。可选的,所述通过预设数据库从所述第二级日志缓存中获取所述日志数据,包括:通过预设数据库接收所述第二级日志缓存发送的所述日志通知后,从所述第二级日志缓存中获取所述日志数据。可选的,所述通过预设数据库从所述第二级日志缓存中获取所述日志数据,包括:若所述操作系统当前的综合运行压力小于预设综合运行压力阈值,则通过预设数据库主动从所述第二级日志缓存中获取所述日志数据。第二方面,本申请公开了一种日志存储装置,应用于日志系统,包括:日志接口,用于获取日志数据,并将所述日志数据发送给第一级日志缓存;第一级日志缓存,用于对所述日志数据进行存储;第二级日志缓存,用于从所述第一级日志缓存中获取所述日志数据,其中,所述第二级日志缓存获取的所述日志数据的数量由操作系统当前的内存使用率确定;预设数据库,用于从所述第二级日志缓存中获取所述日志数据,并对所述日志数据进行保存,其中,所述预设数据库获取的所述日志数据的数量由所述操作系统当前的综合运行压力确定。第三方面,本申请公开了一种日志存储设备,包括:存储器和处理器;其中,所述存储器,用于存储计算机程序;所述处理器,用于执行所述计算机程序,以实现前述公开的日志存储方法。第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的日志存储方法。可见,本申请先通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存;通过所述第一级日志缓存对所述日志数据进行存储;再通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据,其中,所述第二级日志缓存获取的所述日志数据的数量由操作系统当前的内存使用率确定;然后通过预设数据库从所述第二级日志缓存中获取所述日志数据,并对所述日志数据进行保存,其中,所述预设数据库获取的所述日志数据的数量由所述操作系统当前的综合运行压力确定。由此可见,本申请通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存;通过所述第一级日志缓存对所述日志进行存储,再通过第二级日志缓存从所述第一级日志缓存中获取适量的所述日志数据,然后再通过预设数据库从所述第二级日志缓存中获取适量的所述日志数据,并对所述日志数据进行存储,这样能够为日志存储提供足够的容量,避免日志数据因容量不够而丢失,减低磁盘压力,提高系统运行性能。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请公开的一种日志存储方法流程图;图2为本申请公开的一种具体的日志存储方法流程图;图3为本申请公开的一种日志存储装置结构示意图;图4为本申请公开的一种日志存储设备结构图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。目前,主流的日志系统采用单一缓存定时取数据的方式来缓解日志存储中遇到的文件系统磁盘压力骤增问题,但这种方法在高并发情况下,单一缓存的容量会不足够,从而造成数据的丢失。而且如果本身系统的磁盘压力已经过大,日志系统定时的往磁盘中定量的日志数据,会给磁盘带来更高的压力,影响本身的系统的运行,降低系统运行性能。有鉴于此,本申请提出了一种日志缓存方法,能够为日志存储提供足够的容量,避免日志数据因容量不够而丢失,减低磁盘压力,提高系统运行性能。参见图1所示,本申请实施例公开了一种日志存储方法,应用于日志系统,该方法包括:步骤S11:通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存。在具体的实时过程中,需要先通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存,其中,所述日志接口可以是HTTP接口。通过所述日志接口本文档来自技高网...

【技术保护点】
1.一种日志存储方法,其特征在于,应用于日志系统,包括:/n通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存;/n通过所述第一级日志缓存对所述日志数据进行存储;/n通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据,其中,所述第二级日志缓存获取的所述日志数据的数量由操作系统当前的内存使用率确定;/n通过预设数据库从所述第二级日志缓存中获取所述日志数据,并对所述日志数据进行保存,其中,所述预设数据库获取的所述日志数据的数量由所述操作系统当前的综合运行压力确定。/n

【技术特征摘要】
1.一种日志存储方法,其特征在于,应用于日志系统,包括:
通过日志接口获取日志数据,并将所述日志数据发送给第一级日志缓存;
通过所述第一级日志缓存对所述日志数据进行存储;
通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据,其中,所述第二级日志缓存获取的所述日志数据的数量由操作系统当前的内存使用率确定;
通过预设数据库从所述第二级日志缓存中获取所述日志数据,并对所述日志数据进行保存,其中,所述预设数据库获取的所述日志数据的数量由所述操作系统当前的综合运行压力确定。


2.根据权利要求1所述的日志存储方法,其特征在于,还包括:
通过所述第二级日志缓存记录日志信息,其中,所述日志信息包括已存储到所述预设数据库中的日志信息和已向所述预设数据库发送日志通知但还未存入所述预设数据库的日志信息。


3.根据权利要求1所述的日志存储方法,其特征在于,所述通过第二级日志缓存从所述第一级日志缓存中获取所述日志数据之后,还包括:
将所述第一级日志缓存中已被所述第二级日志缓存读取过的所述日志数据删除。


4.根据权利要求1至3任一项所述的日志存储方法,其特征在于,所述通过第二级日志缓存从所述第一级日志缓存中获取相应数量的所述日志数据,包括:
通过第二级日志缓存接收到所述第一级日志缓存发送的日志通知后,从所述第一级日志缓存中获取相应数量的所述日志数据。


5.根据权利要求4所述的日志存储方法,其特征在于,所述通过第二级日志缓存从所述第一级日志缓存中获取相应数量的所述日志数据,包括:
若所述操作系统当前的内存使用率小于预设内存使用阈值,则通过所述第...

【专利技术属性】
技术研发人员:齐增田
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1