【技术实现步骤摘要】
一种清理日志文件缓存的方法及装置
本申请涉及计算机领域,尤其是涉及一种清理日志文件缓存的方法及装置。
技术介绍
随着网络技术的飞速发展,软件系统在读写日志过程中,会申请文件缓存。大量的日志文件会产生大量的文件内存缓存。进程在申请内存且发现内存不足时,一般会触发缓存回收。但是软件业务模块基于处理业务效率方面的考虑,申请内存时不会触发缓存回收,而是直接返回错误,因此造成过多的缓存积累,过多的缓存占用内存空间,浪费存储资源且影响业务模块正常运行。
技术实现思路
为了解决上述技术问题,本申请提供一种清理文件日志缓存的方法及装置。具体地,本申请是通过如下技术方案实现的:在预先创建的日志存放路径下按照预设日志产生周期创建以日志产生时间命名的日志文件,其中日志存放路径包括以日志类型命名的上级目录以及以日志ID命名的下级目录;对于新产生的日志记录,根据该日志记录的日志类型、日志ID以及日志产生时间在所述日志存放路径中找到对应的日志文件,将该日志记录写入对应的日志文件;在缓存中创建同样的日志存放路径,将进入缓存的日志文件存放在所述同样的日志存放路径下;当达到清理触发条件时,确定清理时间 ...
【技术保护点】
1.一种清理日志文件缓存的方法,其特征在于,所述方法包括步骤:在预先创建的日志存放路径下按照预设日志产生周期创建以日志产生时间命名的日志文件,其中日志存放路径包括以日志类型命名的上级目录以及以日志ID命名的下级目录;对于新产生的日志记录,根据该日志记录的日志类型、日志ID以及日志产生时间在所述日志存放路径中找到对应的日志文件,将该日志记录写入对应的日志文件;在缓存中创建同样的日志存放路径,将进入缓存的日志文件存放在所述同样的日志存放路径下;当达到清理触发条件时,确定清理时间范围;按照所述日志存放路径在缓存中进行遍历,根据文件名筛选出创建时间在所述清理时间范围内的日志文件,针 ...
【技术特征摘要】
1.一种清理日志文件缓存的方法,其特征在于,所述方法包括步骤:在预先创建的日志存放路径下按照预设日志产生周期创建以日志产生时间命名的日志文件,其中日志存放路径包括以日志类型命名的上级目录以及以日志ID命名的下级目录;对于新产生的日志记录,根据该日志记录的日志类型、日志ID以及日志产生时间在所述日志存放路径中找到对应的日志文件,将该日志记录写入对应的日志文件;在缓存中创建同样的日志存放路径,将进入缓存的日志文件存放在所述同样的日志存放路径下;当达到清理触发条件时,确定清理时间范围;按照所述日志存放路径在缓存中进行遍历,根据文件名筛选出创建时间在所述清理时间范围内的日志文件,针对任意一个筛选出的日志文件,判断该日志文件是否符合预设特殊缓存规则,如果不符合,将该文件从缓存中清理掉。2.根据权利要求1所述的方法,其特征在于,所述清理触发条件为下面两种条件中最先达到的一种:清理触发条件一:自最近一次日志文件清理后,等待时间长度达到动态回收周期T时确定达到清理触发条件,其中动态回收周期T是在最近一次日志文件清理完成时,根据预设周期算法重新赋值,其中所述周期算法包括:T=(t1–t0)*x/p其中,t0为上一次清理缓存的时间点,t1为本次清理缓存的时间点,x为预设的内存占比基准值,p为内存占比;清理触发条件二:可用内存低于预设阈值。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:针对触发清理时间间隔所界定的时间段内每一种被查询过的日志类型,创建与日志类型对应的查询信息文件;分析针对日志的查询操作并在查询索引文件中记录查询操作相关的查询信息,其中查询信息包含查询操作指定的开始时间及查询操作指定的结束时间;其中所述清理时间范围包括:将每一个查询文件中的所述开始时间以及结束时间界定的时间段以及所述触发清理时间间隔所界定的时间段取并集得到清理时间范围。4.根据权利要求3所述的方法,其特征在于,按照所述日志存放路径进行遍历具体包括:针对每一个查询索引文件,根据查询信息文件获取对应的日志类型,在日志存放路径中以日志类型为起点向下遍历创建时间在所述触发清理时间间隔内的日志文件;在本次清理后删除所有的查询信息文件。5.根据权利要求3所述的方法,其特征在于,所述查询信息还包括查询操作时间,其中所述符合特殊缓存规则包括:创建时间距离所述清理时间范围中的开始清理时间小于第一预设时长TX的日志文件;聚类信息所涵盖的时间段中尚未结束的聚类日志文件;距离所述清理时间范围中的开始清理时间之前第二预设时长Ty内被查询操作过的日志文件。6.一种清理日志文件缓存的装...
【专利技术属性】
技术研发人员:曾露,魏方征,
申请(专利权)人:杭州迪普科技股份有限公司,
类型:发明
国别省市:浙江,33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。