[发明专利]用于存储日志的方法和装置在审
申请号: | 202111078493.7 | 申请日: | 2021-09-15 |
公开(公告)号: | CN113742308A | 公开(公告)日: | 2021-12-03 |
发明(设计)人: | 周力 | 申请(专利权)人: | 京东科技信息技术有限公司 |
主分类号: | G06F16/18 | 分类号: | G06F16/18;G06F16/172 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司 11204 | 代理人: | 王达佐;马晓亚 |
地址: | 100176 北京市大兴区经济*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 存储 日志 方法 装置 | ||
本申请公开了用于存储日志的方法和装置,涉及计算机技术领域。该方法包括:获取消息队列中的至少一个待存储日志块,待存储日志块中包括至少一条系统日志;针对至少一个待存储日志块中的每一个待存储日志块,根据待存储日志块的序号信息,确定存储空间中用于存储待存储日志块的存储单元的目标标识;响应于确定目标标识所指示的目标存储单元的状态为可用状态,将待存储日志块存储于目标存储单元。采用该方法可以提高存储日志的效率。
技术领域
本公开涉及计算机技术领域,具体涉及用于存储日志的方法和装置。
背景技术
日志是用于记录系统运行过程的重要信息,对系统日志进行存档可以便于系统恢复或者异常检测等操作。现有的存储日志的方法包括:采用多线程进行日志传输,日志存储服务扫描各个线程并依日志序列编号次序获取日志并存储,或者基于单线程进行日志传输,日志存储服务依日志序列编号次序接收到各个日志后,对日志依次进行存储。
然而,在基于多线程进行日志传输并存储的方法中,由于各个线程的处理速度不同,导致日志分布不均匀,为了获取到次序中的下一条日志,会导致某些处理快速的线程一直等待其日志被存储,影响该线程正常运行,以及影响日志存储效率。基于单线程进行日志传输并存储的方法会导致日志存储效率低的问题。
发明内容
本公开提供了一种用于存储日志的方法、装置、电子设备以及计算机可读存储介质。
根据本公开的第一方面,提供了一种用于存储日志的方法,包括:获取消息队列中的至少一个待存储日志块,待存储日志块中包括至少一条系统日志;针对至少一个待存储日志块中的每一个待存储日志块,根据待存储日志块的序号信息,确定存储空间中用于存储待存储日志块的存储单元的目标标识;响应于确定目标标识所指示的目标存储单元的状态为可用状态,将待存储日志块存储于目标存储单元。
在一些实施例中,待存储日志块的序号信息包括待存储日志块中起始日志的日志序列编号;根据待存储日志块的序号信息,确定存储空间中用于存储待存储日志块的存储单元的目标标识,包括:根据起始日志的日志序列编号以及存储空间的空间大小,确定目标标识。
在一些实施例中,待存储日志块的序号信息包括待存储日志块的块序号;根据待存储日志块的序号信息,确定存储空间中用于存储待存储日志块的存储单元的目标标识,包括:根据待存储日志块的块序号以及存储空间所包含存储单元的数量,确定目标标识。
在一些实施例中,确定目标存储单元的状态为可用状态的方法,包括:响应于确定目标存储单元中存在已存储日志块,判断已存储日志块是否已被预设程序运行;响应于确定已存储日志块已被预设程序运行,确定目标存储单元的状态为可用状态;或者,响应于确定目标存储单元中不存在日志块,确定目标存储单元的状态为可用状态。
在一些实施例中,目标存储单元中存在已存储日志块,将待存储日志块存储于目标存储单元,包括:响应于确定待存储日志块的块序号大于已存储日志块的块序号,采用待存储日志块覆盖已存储日志块;或者,响应于确定待存储日志块的块序号等于已存储日志块的块序号,判断待存储日志块中末尾日志的日志序列编号与已存储日志块中末尾日志的日志序列编号之间的关系;响应于确定待存储日志块中末尾日志的日志序列编号大于已存储日志块中末尾日志的日志序列编号,采用待存储日志块覆盖已存储日志块。
在一些实施例中,待存储日志块包括日志块头、日志体以及日志块尾,存储空间包括:用于存储日志块的控制信息的第一存储区域、用于存储日志块头以及日志块尾的第二存储区域、用于存储日志体的第三存储区域;根据待存储日志块的序号信息,确定存储空间中用于存储待存储日志块的存储单元的目标标识,包括:根据待存储日志块的序号信息,确定存储空间中用于存储待存储日志块的控制信息、日志块头以及日志块尾、日志体的存储单元的目标标识;将待存储日志块存储于目标存储单元,包括:将日志的控制信息存储于第一存储区域中具有目标标识的存储单元;将日志块头以及日志块尾存储于第二存储区域中具有目标标识的存储单元;将日志体存储于第三存储区域中具有目标标识的存储单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京东科技信息技术有限公司,未经京东科技信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111078493.7/2.html,转载请声明来源钻瓜专利网。