CN112527746A - 日志存储方法、装置、设备及存储介质 - Google Patents
日志存储方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112527746A CN112527746A CN202011503009.6A CN202011503009A CN112527746A CN 112527746 A CN112527746 A CN 112527746A CN 202011503009 A CN202011503009 A CN 202011503009A CN 112527746 A CN112527746 A CN 112527746A
- Authority
- CN
- China
- Prior art keywords
- log
- log files
- preset
- files
- preset threshold
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
-
- 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
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- 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
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
- G06F11/3082—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting the data filtering being achieved by aggregating or compressing the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1737—Details of further file system functions for reducing power consumption or coping with limited storage space, e.g. in mobile devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1748—De-duplication implemented within the file system, e.g. based on file segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提出一种日志存储方法、装置、终端及存储介质,所述日志存储方法包括:在进行日志记录时,将***生成的日志存储至日志文件;在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小;判断所有日志文件的大小是否超过第一预设阈值;若是,则按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值。通过上述方法能够控制预设时间段内生成的日志文件的数量,防止骤增的日志占用过多存储空间而导致预设时间段之前生成日志文件被删除或覆盖掉。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种日志存储方法、装置、设备及存储介质。
背景技术
日志文件通常是***或者某些软件对已完成的某种处理的记录,以便将来作为参考,一些技术人员可以通过查看日志文件,检查是否有一些报错记录,然后根据其报错,找到问题的根源。目前,通常采用根据时间或文件大小滚动策略来保存日志,主要是依据时间或文件总大小来实现,例如,将日志保留的最大天数设置为30天,将日志文件总大小设置为15G,则当日志存储时间超过30天或日志文件总大小超过15G时,将最早生成的日志文件删除,以达到控制日志文件总大小的目的。
但是,当某天出现异常情况,而导致产生大量日志时,过多的日志会导致在今天之前的日志被大量挤压掉,进而可能影响到日志的正常存储和使用。
发明内容
本发明提供一种日志存储方法、装置、终端及存储介质,以解决短期内骤增的海量日志会挤压掉有效的历史日志的问题。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种日志存储方法,其包括:在进行日志记录时,将***生成的日志存储至日志文件;在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小;判断所有日志文件的大小是否超过第一预设阈值;若是,则按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值。
作为本发明的进一步改进,在进行日志记录时,将***生成的日志存储至日志文件,包括:获取到***新生成的日志时,将日志写入至当前日志文件;检测到当前日志文件触发预设条件时,暂停向当前日志文件写入日志,并创建新的日志文件,再将新产生的日志写入新的日志文件。
作为本发明的进一步改进,检测到当前日志文件触发预设条件,包括:实时检测到当前日志文件的大小达到第二预设阈值时,触发预设条件;或者是,当当前日志文件持续写入日志的时间达到预设时长时,触发预设条件。
作为本发明的进一步改进,按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值,包括:获取每个日志文件的大小,并将日志文件从小至大依次排序;按照日志文件的排列顺序依次删除排名靠前的日志文件,直至剩余的日志文件的总大小小于第一预设阈值,或者是,按照日志文件的排列顺序依次将日志文件转移至备份数据库,直至剩余的日志文件的总大小小于第一预设阈值。
作为本发明的进一步改进,按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值,包括:获取日志文件的生成时间,并根据生成时间的先后顺序将日志文件进行排序;按照日志文件的排列顺序依次删除排名靠前的日志文件,直至剩余的日志文件的总大小小于第一预设阈值,或者是,按照日志文件的排列顺序依次将日志文件转移至备份数据库,直至剩余的日志文件的总大小小于第一预设阈值。
作为本发明的进一步改进,按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值之后,还包括:生成日志异常记录,日志异常记录记录预设时间段内生成的所有日志文件的名称和存储路径。
作为本发明的进一步改进,按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值之后,还包括:将处理后的所有日志文件上传至区块链。
为解决上述技术问题,本发明还采用的一个技术方案是:提供一种日志存储装置,其包括:存储模块,用于在进行日志记录时,将***生成的日志存储至日志文件;获取模块,用于在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小;判断模块,用于判断所有日志文件的大小是否超过第一预设阈值;处理模块,用于当所有日志文件的大小超过第一预设阈值时,按照预设策略处理日志文件,以使得所有日志文件的总大小小于第一预设阈值。
为解决上述技术问题,本发明还采用的一个技术方案是:提供一种终端,终端包括处理器、与处理器耦接的存储器,存储器中存储有程序指令,程序指令被处理器执行时,使得处理器执行如上述中任一项权利要求的日志存储方法的步骤。
为解决上述技术问题,本发明还采用的一个技术方案是:提供一种存储介质,存储有能够实现如上述中任一项的日志存储方法的程序文件。
本发明的有益效果是:本发明的日志存储方法通过在进行日志存储时,在间隔预设时间段后,统计在该预设时间段内生成的所有日志文件的大小,再比对所有日志文件的大小是否超过第一预设阈值,若是,则按照预设策略处理日志文件,以致剩余的日志文件的总大小小于第一预设阈值,从而达到控制该预设时间段内生成的日志文件的大小,从而避免在短暂时间内激增的日志挤压掉在预设时间段之前生成的有效日志文件,避免影响到日志文件的正常存储和查询。
附图说明
图1是本发明第一实施例的日志存储方法的流程示意图;
图2是本发明第二实施例的日志存储方法的流程示意图;
图3是本发明第三实施例的日志存储方法的流程示意图;
图4是本发明第四实施例的日志存储方法的流程示意图;
图5是本发明实施例的日志文件生成装置的功能模块示意图;
图6是本发明实施例的日志文件生成设备的结构示意图;
图7是本发明实施例的存储介质的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本申请实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
图1是本申请第一实施例的日志存储方法的流程示意图。需注意的是,若有实质上相同的结果,本申请的方法并不以图1所示的流程顺序为限。如图1所示,该方法包括以下步骤:
步骤S101:在进行日志记录时,将***生成的日志存储至日志文件。
在步骤S101中,在***或应用生成日志后,记录该日志,在记录日志时,将日志写入至日志文件中,再保存该日志文件,并且,在对日志文件进行命名是,还可将在命名中添加时间信息。
通常地,日志记录可通过Logback日志框架来实现,Logback是目前java使用最为广泛的日志框架之一,Logback首先将***日志记录到文件中,然后写入磁盘空间,当满足日志切换条件时进行日志文件的切换,即保存已生成的日志文件,重新生成新的日志文件。Logback日志框架包括三个参数maxFileSize,MaxHistory,totalSizeCap,其中,maxFileSize是单个日志文件的最大容量,MaxHistory就是日志保留的最大天数,totalSizeCap是总的日志文件的最大容量,在Logback日志框架的处理流程下,当日志文件的大小超过maxFileSize,则会进行日志文件切换,当日志文件保存的时间超过MaxHistory,则会进行日志文件清理,如删除,当日志文件的总大小超过totalSizeCap,则会进行日志文件清理,如删除存储时间最早的日志文件。
步骤S102:在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小。
需要说明的是,该预设时间段预先设置。优选地,在本实施例中,该预设时间段设置为1天。
在步骤S102中,每间隔预设时间段,统计一次在该预设时间段内生成的所有日志文件的大小,例如,通过预先设置每天晚上24:00点时统计当前从00:00~24:00期间生成的所有日志文件的大小。日志文件的命名规则中是可以添加日期信息的,例如,SizeAndTimeBasedRollingPolicy的文件名命名规则即有日期信息,其命名规则可以写作:smartpai.%d{yyyy-MM-dd}.%i.log,其中,yyyy-MM-dd即日期信息。本实施例中,可过日志文件的名称识别出当天生成的所有日志文件,然后统计日志文件的总大小。
步骤S103:判断所有日志文件的大小是否超过第一预设阈值。若是,则执行步骤S104。
需要说明的是,第一预设阈值预先设置,例如,可以设置为1G、5G、10G等。进一步的,不同***或应用产生的日志文件可以采用不同的命名方式来实现区分,并且,针对于不同的***或应用设置的第一预设阈值也可以相同或不同,优选地,针对于日志增量较多的***或应用,其对应的第一预设阈值设置较大,针对于日志增量较少的***或应用,其对应的第一预设阈值设置较小。
步骤S104:按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值。
在步骤S104中,为了减少预设时间段内生成的日志文件占用过多的存储空间而挤压掉在预设时间段之前生成的日志文件,当在预设时间段内生成的所有日志文件的大小超过第一预设阈值时,按照预设策略处理所有日志文件,以使得剩余日志文件的总大小小于第一预设阈值,其中该预设策略可以为对日志文件压缩、转移、删除等方式来实现。
本申请第一实施例的日志存储方法通过在进行日志存储时,在间隔预设时间段后,统计在该预设时间段内生成的所有日志文件的大小,再比对所有日志文件的大小是否超过第一预设阈值,若是,则按照预设策略处理日志文件,以致剩余的日志文件的总大小小于第一预设阈值,从而达到控制该预设时间段内生成的日志文件的大小,从而避免在短暂时间内激增的日志挤压掉在预设时间段之前生成的有效日志文件,避免影响到日志文件的正常存储和查询。
图2是本申请第二实施例的日志存储方法的流程示意图。需注意的是,若有实质上相同的结果,本申请的方法并不以图2所示的流程顺序为限。如图2所示,该方法包括以下步骤:
步骤S201:获取到***新生成的日志时,将日志写入至当前日志文件。
在步骤S201中,当前日志文件是指当前时间用于写入日志的文件。具体地,为了避免日志文件过大而影响日志文件的读取速度,日志通常可以依次写入至不同的日志文件中,并且,日志文件的大小预先设置,例如,每个日志文件最大设置为50M,则日志文件能够写入50M的日志数据,当日志数据的总大小超过50M时,则生成多个日志文件,每个日志文件的大小不超过50M。
步骤S202:检测到当前日志文件触发预设条件时,暂停向当前日志文件写入日志,并创建新的日志文件,再将新产生的日志写入新的日志文件。
在步骤S202中,通过实时检测当前日志文件是否触发预设条件,在当前日志文件触发预设条件时,暂停向当前日志文件写入日志,并且,再创建一个新的日志文件,并将新产生的日志写入至新的日志文件。
在一些实施例中,所述检测当前日志文件触发预设条件的步骤包括:实时检测到当前日志文件的大小达到第二预设阈值时,触发预设条件。
具体地,预设条件的触发可通过当前日志文件的大小来判断,该第二预设阈值小于第一预设阈值,并且,该第一预设阈值可以为第二预设阈值的整数倍,例如,第二预设阈值设置为50M,第一预设阈值设置为500M,当实时检测到当前日志文件的大小达到第二预设阈值时,触发预设条件。
在另一些实施例中,所述检测当前日志文件触发预设条件的步骤包括:当当前日志文件持续写入日志的时间达到预设时长时,触发预设条件。
具体地,预设条件的触发可通过当前日志文件写入日志时的持续时间来判断,在当前日志文件生成并开始写入日志时,记录开始时间,实时统计当前日志文件持续写入日志的时间,在当前日志文件持续写入日志的时间达到预设时长时,触发预设条件。该预设时长预先设置,例如,2小时,在当前日志文件持续写入日志的时间达到2小时时,触发预设条件。
步骤S203:在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小。
在本实施例中,图2中的步骤S203和图1中的步骤S102类似,为简约起见,在此不再赘述。
步骤S204:判断所有日志文件的大小是否超过第一预设阈值。若是,则执行步骤S205。
在本实施例中,图2中的步骤S204和图1中的步骤S103类似,为简约起见,在此不再赘述。
步骤S205:按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值。
在本实施例中,图2中的步骤S205和图1中的步骤S104类似,为简约起见,在此不再赘述。
本申请第二实施例的日志存储方法在第一实施例的基础上,通过将日志划分为多个日志文件进行存储,使得每个日志文件的大小处于一定范围内,防止影响日志文件的读取,并且,设置预设条件,通过实时检测当前日志文件是否触发预设条件,若检测到触发预设条件,则生成一个新的日志文件,用于写入日志。
图3是本申请第三实施例的日志存储方法的流程示意图。需注意的是,若有实质上相同的结果,本申请的方法并不以图3所示的流程顺序为限。如图3所示,该方法包括以下步骤:
步骤S301:在进行日志记录时,将***生成的日志存储至日志文件。
在本实施例中,图3中的步骤S301和图1中的步骤S101类似,为简约起见,在此不再赘述。
步骤S302:在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小。
在本实施例中,图3中的步骤S302和图1中的步骤S102类似,为简约起见,在此不再赘述。
步骤S303:判断所有日志文件的大小是否超过第一预设阈值。若是,则执行步骤S304~步骤S305。
在本实施例中,图3中的步骤S303和图1中的步骤S103类似,为简约起见,在此不再赘述。
步骤S304:获取每个日志文件的大小,并将日志文件从小至大依次排序。
具体地,需要理解的是,日志文件的大小可能相同或不同,例如,日志文件未写满即切换至新的日志文件,或者是在预设时间段内最后一个日志文件,均存在未写满的可能性。本实施例中,获取预设时间段内每个日志文件的大小,将日志文件从小至大依次排序。
步骤S305:按照日志文件的排列顺序依次删除排名靠前的日志文件,直至剩余的日志文件的总大小小于第一预设阈值,或者是,按照日志文件的排列顺序依次将日志文件转移至备份数据库,直至剩余的日志文件的总大小小于第一预设阈值。
具体地,在一些实施例中,在将日志文件排列好顺序之后,根据排列顺序依次开始删除排名靠前的日志文件,直至剩余的日志文件的总大小小于第一预设阈值时为止,例如,假设当前有5个日志文件,根据大小依次排序为:30M、40M、50M、50M、50M,第一预设阈值为200M,则需要将排在第一位的日志文件删除,剩余日志文件的总大小为190M,满足小于200M的条件。
在另一些实施例中,在将日志文件排列好顺序之后,根据排列顺序依次转移日志文件至备份数据库,直至剩余的日志文件的总大小小于第一预设阈值,同样以上述例子为例,将排在第一位的地址文件转移至备份数据库。
本申请第三实施例的日志存储方法在第一实施例的基础上,通过将日志文件从小至大依次排序,再将排名靠前的日志文件删除或转移至备份数据流,从而使得剩余的日志文件的总大小小于第一预设阈值,并且,通过优先删除或转移较小的日志文件,保留较大的日志文件,尽量减少日志文件的损失,保全日志数据的完整性。
进一步的,在另一些实施例中,步骤S304还可以为:获取日志文件的生成时间,并根据生成时间的先后顺序将日志文件进行排序。
具体地,在将日志文件按照生成时间的先后顺序依次进行排序,再根据日志文件的排列顺序删除或转移日志文件,使得剩余的日志文件的总大小小于第一预设阈值。
进一步的,在一些实施例中,日志文件的总大小超过第一预设阈值时,还可对所有日志文件进行压缩,以使得日志文件的总大小小于第一预设阈值。
图4是本申请第四实施例的日志存储方法的流程示意图。需注意的是,若有实质上相同的结果,本申请的方法并不以图4所示的流程顺序为限。如图4所示,该方法包括以下步骤:
步骤S401:在进行日志记录时,将***生成的日志存储至日志文件。
在本实施例中,图4中的步骤S401和图1中的步骤S101类似,为简约起见,在此不再赘述。
步骤S402:在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小。
在本实施例中,图4中的步骤S402和图1中的步骤S102类似,为简约起见,在此不再赘述。
步骤S403:判断所有日志文件的大小是否超过第一预设阈值。若是,则执行步骤S404。
在本实施例中,图4中的步骤S403和图1中的步骤S103类似,为简约起见,在此不再赘述。
步骤S404:按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值。
在本实施例中,图4中的步骤S404和图1中的步骤S104类似,为简约起见,在此不再赘述。
步骤S405:生成日志异常记录,日志异常记录记录预设时间段内生成的所有日志文件的名称和存储路径。
具体地,日志文件的总大小超过第一预设阈值时,说明在该预设时间段内产生的日志文件过多,可能存在异常,因此,在处理好日志文件之后,生成日志异常记录,该日志异常记录中记录有在该预设时间段内生成的所有的日志文件的名称,以及存储路径,及时告知用户。
本申请第五实施例的日志存储方法在第一实施例的基础上,通过生日日志异常记录,从而及时告知用户在预设时间段内生成的日志过多,可能存储重复的异常日志,提醒用户及时查看和处理。
进一步的,在一些实施例中,按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值之后,还包括:将处理后的所有日志文件上传至区块链。
具体地,基于处理后的所有日志文件得到对应的摘要信息,具体来说,摘要信息由处理后的所有日志文件进行散列处理得到,比如利用sha256s算法处理得到。将摘要信息上传至区块链可保证其安全性和对用户的公正透明性。用户设备可以从区块链中下载得该摘要信息,以便查证处理后的所有日志文件是否被篡改。本示例所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
图5是本申请实施例的日志存储装置的功能模块示意图。如图5所示,该日志存储装置50包括存储模块51、获取模块52、判断模块53和处理模块54。
存储模块51,用于在进行日志记录时,将***生成的日志存储至日志文件。
获取模块52,用于在间隔预设时间段后,获取在预设时间段内生成的所有日志文件的大小。
判断模块53,用于判断所有日志文件的大小是否超过第一预设阈值。
处理模块54,用于当所有日志文件的大小超过第一预设阈值时,按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值。
可选地,存储模块51在进行日志记录时,将***生成的日志存储至日志文件的操作还可以为:获取到***新生成的日志时,将日志写入至当前日志文件;检测到当前日志文件触发预设条件时,暂停向当前日志文件写入日志,并创建新的日志文件,再将新产生的日志写入新的日志文件。
可选地,存储模块51检测到当前日志文件触发预设条件的操作还可以为:实时检测到当前日志文件的大小达到第二预设阈值时,触发预设条件;或者是,当当前日志文件持续写入日志的时间达到预设时长时,触发预设条件。
可选地,处理模块54在当所有日志文件的大小超过第一预设阈值时,按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值的操作还可以为:获取每个日志文件的大小,并将日志文件从小至大依次排序;按照日志文件的排列顺序依次删除排名靠前的日志文件,直至剩余的日志文件的总大小小于第一预设阈值,或者是,按照日志文件的排列顺序依次将日志文件转移至备份数据库,直至剩余的日志文件的总大小小于第一预设阈值。
可选地,处理模块54在当所有日志文件的大小超过第一预设阈值时,按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值的操作还可以为:获取日志文件的生成时间,并根据生成时间的先后顺序将日志文件进行排序;按照日志文件的排列顺序依次删除排名靠前的日志文件,直至剩余的日志文件的总大小小于第一预设阈值,或者是,按照日志文件的排列顺序依次将日志文件转移至备份数据库,直至剩余的日志文件的总大小小于第一预设阈值。
可选地,处理模块54按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值的操作之后,还用于生成日志异常记录,日志异常记录记录预设时间段内生成的所有日志文件的名称和存储路径。
可选地,处理模块54按照预设策略处理所有日志文件,以使得所有日志文件的总大小小于第一预设阈值的操作之后,还用于将处理后的所有日志文件上传至区块链。
关于上述实施例日志存储装置中各模块实现技术方案的其他细节,可参见上述实施例中的日志存储方法中的描述,此处不再赘述。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
请参阅图6,图6为本申请实施例的终端的结构示意图。如图6所示,该终端60包括处理器61及和处理器61耦接的存储器62。
存储器62存储有程序指令,程序指令被处理器61执行时,使得处理器61执行上述实施例中的日志存储方法的步骤。
其中,处理器61还可以称为CPU(Central Processing Unit,中央处理单元)。处理器61可能是一种集成电路芯片,具有信号的处理能力。处理器61还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
参阅图7,图7为本申请实施例的存储介质的结构示意图。本申请实施例的存储介质存储有能够实现上述所有方法的程序文件71,其中,该程序文件71可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
在本申请所提供的几个实施例中,应该理解到,所揭露的终端、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种日志存储方法,其特征在于,其包括:
在进行日志记录时,将***生成的日志存储至日志文件;
在间隔预设时间段后,获取在所述预设时间段内生成的所有日志文件的大小;
判断所述所有日志文件的大小是否超过第一预设阈值;
若是,则按照预设策略处理所述日志文件,以使得所述所有日志文件的总大小小于所述第一预设阈值。
2.根据权利要求1所述的日志存储方法,其特征在于,所述在进行日志记录时,将***生成的日志存储至日志文件,包括:
获取到***新生成的日志时,将所述日志写入至当前日志文件;
检测到所述当前日志文件触发预设条件时,暂停向所述当前日志文件写入所述日志,并创建新的日志文件,再将新产生的日志写入所述新的日志文件。
3.根据权利要求2所述的日志存储方法,其特征在于,所述检测到所述当前日志文件触发预设条件,包括:
实时检测到所述当前日志文件的大小达到第二预设阈值时,触发所述预设条件;
或者是,
当所述当前日志文件持续写入所述日志的时间达到预设时长时,触发所述预设条件。
4.根据权利要求1所述的日志存储方法,其特征在于,所述按照预设策略处理所述日志文件,以使得所述所有日志文件的总大小小于所述第一预设阈值,包括:
获取每个日志文件的大小,并将所述日志文件从小至大依次排序;
按照所述日志文件的排列顺序依次删除排名靠前的所述日志文件,直至剩余的日志文件的总大小小于所述第一预设阈值,或者是,按照所述日志文件的排列顺序依次将所述日志文件转移至备份数据库,直至剩余的日志文件的总大小小于所述第一预设阈值。
5.根据权利要求1所述的日志存储方法,其特征在于,所述按照预设策略处理所述日志文件,以使得所述所有日志文件的总大小小于所述第一预设阈值,包括:
获取所述日志文件的生成时间,并根据所述生成时间的先后顺序将所述日志文件进行排序;
按照所述日志文件的排列顺序依次删除排名靠前的所述日志文件,直至剩余的日志文件的总大小小于所述第一预设阈值,或者是,按照所述日志文件的排列顺序依次将所述日志文件转移至备份数据库,直至剩余的日志文件的总大小小于所述第一预设阈值。
6.根据权利要求1所述的日志存储方法,其特征在于,所述按照预设策略处理所述日志文件,以使得所述所有日志文件的总大小小于所述第一预设阈值之后,还包括:
生成日志异常记录,所述日志异常记录记录所述预设时间段内生成的所有日志文件的名称和存储路径。
7.根据权利要求1所述的日志存储方法,其特征在于,所述按照预设策略处理所述日志文件,以使得所述所有日志文件的总大小小于所述第一预设阈值之后,还包括:
将处理后的所述所有日志文件上传至区块链。
8.一种日志存储装置,其特征在于,其包括:
存储模块,用于在进行日志记录时,将***生成的日志存储至日志文件;
获取模块,用于在间隔预设时间段后,获取在所述预设时间段内生成的所有日志文件的大小;
判断模块,用于判断所述所有日志文件的大小是否超过第一预设阈值;
处理模块,用于当所述所有日志文件的大小超过第一预设阈值时,按照预设策略处理所述日志文件,以使得所述所有日志文件的总大小小于所述第一预设阈值。
9.一种终端,其特征在于,所述终端包括处理器、与所述处理器耦接的存储器,所述存储器中存储有程序指令,所述程序指令被所述处理器执行时,使得所述处理器执行如权利要求1-7中任一项权利要求所述的日志存储方法的步骤。
10.一种存储介质,其特征在于,存储有能够实现如权利要求1-7中任一项所述的日志存储方法的程序文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011503009.6A CN112527746A (zh) | 2020-12-18 | 2020-12-18 | 日志存储方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011503009.6A CN112527746A (zh) | 2020-12-18 | 2020-12-18 | 日志存储方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527746A true CN112527746A (zh) | 2021-03-19 |
Family
ID=75001539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011503009.6A Pending CN112527746A (zh) | 2020-12-18 | 2020-12-18 | 日志存储方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527746A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113064869A (zh) * | 2021-03-23 | 2021-07-02 | 网易(杭州)网络有限公司 | 日志处理方法、装置、发送端、接收端设备及存储介质 |
CN115543949A (zh) * | 2022-09-27 | 2022-12-30 | 北京北方华创微电子装备有限公司 | 一种日志处理方法和半导体工艺设备 |
WO2023041050A1 (zh) * | 2021-09-18 | 2023-03-23 | 北京字跳网络技术有限公司 | 文档处理方法、装置、设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190155786A1 (en) * | 2010-03-29 | 2019-05-23 | Carbonite, Inc. | Log file management |
CN111488320A (zh) * | 2020-04-17 | 2020-08-04 | 上海思询信息科技有限公司 | 一种清理Kubernetes中业务应用程序日志的方法 |
CN111597158A (zh) * | 2020-04-23 | 2020-08-28 | 远光软件股份有限公司 | 日志文件的滚存方法、装置、存储介质及终端 |
-
2020
- 2020-12-18 CN CN202011503009.6A patent/CN112527746A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190155786A1 (en) * | 2010-03-29 | 2019-05-23 | Carbonite, Inc. | Log file management |
CN111488320A (zh) * | 2020-04-17 | 2020-08-04 | 上海思询信息科技有限公司 | 一种清理Kubernetes中业务应用程序日志的方法 |
CN111597158A (zh) * | 2020-04-23 | 2020-08-28 | 远光软件股份有限公司 | 日志文件的滚存方法、装置、存储介质及终端 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113064869A (zh) * | 2021-03-23 | 2021-07-02 | 网易(杭州)网络有限公司 | 日志处理方法、装置、发送端、接收端设备及存储介质 |
WO2023041050A1 (zh) * | 2021-09-18 | 2023-03-23 | 北京字跳网络技术有限公司 | 文档处理方法、装置、设备及介质 |
CN115543949A (zh) * | 2022-09-27 | 2022-12-30 | 北京北方华创微电子装备有限公司 | 一种日志处理方法和半导体工艺设备 |
CN115543949B (zh) * | 2022-09-27 | 2023-09-08 | 北京北方华创微电子装备有限公司 | 一种日志处理方法和半导体工艺设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112527746A (zh) | 日志存储方法、装置、设备及存储介质 | |
CN108512876B (zh) | 数据的推送方法及装置 | |
CN111324303B (zh) | Ssd垃圾回收方法、装置、计算机设备及存储介质 | |
KR100690804B1 (ko) | 휴대단말기의 메모리 정리 방법 | |
CN111756601B (zh) | 微服务架构监控方法、装置、计算机设备及可读存储介质 | |
CN104216835B (zh) | 一种实现内存融合的方法及装置 | |
CN107506266B (zh) | 一种数据恢复方法及*** | |
CN111061752B (zh) | 数据处理方法、装置及电子设备 | |
CN106844108A (zh) | 一种数据存储方法、服务器以及存储*** | |
CN111966449A (zh) | 一种虚拟机备份管理方法、***、终端及存储介质 | |
CN111459399A (zh) | 一种数据写入方法、数据读取方法及装置 | |
CN113568891B (zh) | 分布式id生成方法、装置、服务器和可读存储介质 | |
CN112367384A (zh) | 基于Kafka集群的动态限速方法、装置以及计算机设备 | |
CN108958660B (zh) | 分布式存储***及其数据处理方法和装置 | |
CN109413166B (zh) | 一种工业网关及其数据管理方法 | |
CN114896215A (zh) | 元数据的存储方法及装置 | |
CN111857603B (zh) | 数据处理方法及相关装置 | |
CN116700623A (zh) | 一种数据存储方法、***、电子设备及存储介质 | |
CN111597129A (zh) | 缓存管理方法、装置、存储介质和固态非易失存储设备 | |
CN114780296B (zh) | 数据库集群的数据备份方法、装置及*** | |
CN108984422B (zh) | 一种基于ntfs和fat32文件***簇管理节省内存的方法 | |
CN113051428A (zh) | 一种摄像机前端存储备份的方法及装置 | |
CN116204311A (zh) | Pod集群扩缩容方法、装置、计算机设备和存储介质 | |
CN114218017B (zh) | 一种数据恢复方法、***、装置及存储设备 | |
CN114968945A (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 |