CN113868214A - 日志的存储方法、装置、电子设备及计算机可读介质 - Google Patents
日志的存储方法、装置、电子设备及计算机可读介质 Download PDFInfo
- Publication number
- CN113868214A CN113868214A CN202111159938.4A CN202111159938A CN113868214A CN 113868214 A CN113868214 A CN 113868214A CN 202111159938 A CN202111159938 A CN 202111159938A CN 113868214 A CN113868214 A CN 113868214A
- Authority
- CN
- China
- Prior art keywords
- log
- template
- stored
- target
- log template
- 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/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- 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/172—Caching, prefetching or hoarding of files
-
- 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/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开涉及一种日志的存储方法、装置、电子设备及计算机可读介质,属于大数据技术领域。该方法包括:获取日志模板集合,并根据所述日志模板集合得到日志存储表;将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板;根据所述目标日志模板提取所述待存储日志中的日志参数,并将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置。本公开通过将日志转化成日志模板和对应的日志参数,并通过列式存储的方法存储日志参数,可以提高日志的压缩比,减少日志数据存储时的空间占用。
Description
技术领域
本公开涉及大数据技术领域,具体而言,涉及一种日志的存储方法、日志的存储装置、电子设备及计算机可读介质。
背景技术
***日志是记录***中硬件、软件和***问题的信息,同时还可以监视***中发生的事件。通过日志可以实现很多分析和预测工作,提升***运维效率。
然而随着时间的推移,***中存储的日志会越来越多,如果不进行处理,将会占用过量的磁盘空间,带来很大的存储成本。
鉴于此,本领域亟需一种能够有效减少日志数据存储时的空间占用的日志的存储方法。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种日志的存储方法、日志的存储装置、电子设备及计算机可读介质,进而至少在一定程度上减少日志数据存储时的空间占用。
根据本公开的第一个方面,提供一种日志的存储方法,包括:
获取日志模板集合,并根据所述日志模板集合得到日志存储表;
将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板;
根据所述目标日志模板提取所述待存储日志中的日志参数,并将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置。
在本公开的一种示例性实施例中,所述将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板,包括:
将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的候选日志模板;
判断所述待存储日志与所述候选日志模板是否完全匹配;
若所述待存储日志与所述候选日志模板完全匹配,则将所述候选日志模板作为所述待存储日志对应的目标日志模板;
若所述待存储日志与所述候选日志模板不完全匹配,则根据所述待存储日志得到所述目标日志模板,并根据所述目标日志模板更新所述日志模板集合。
在本公开的一种示例性实施例中,所述将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的候选日志模板,包括:
将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志与各个所述日志模板的匹配度;
根据所述匹配度最高的日志模板得到所述待存储日志对应的候选日志模板。
在本公开的一种示例性实施例中,所述根据所述待存储日志得到所述目标日志模板,包括:
获取所述待存储日志与所述候选日志模板的匹配度,并判断所述匹配度是否大于或等于匹配度阈值;
若所述匹配度大于或等于所述匹配度阈值,则根据所述待存储日志对所述候选日志模板进行字符转换,得到所述目标日志模板;
若所述匹配度小于所述匹配度阈值,则根据所述待存储日志重新生成所述目标日志模板。
在本公开的一种示例性实施例中,在所述根据所述待存储日志重新生成所述目标日志模板之前,所述方法还包括:
判断所述待存储日志是否为错误日志;
若所述待存储日志不是所述错误日志,则根据所述待存储日志重新生成所述目标日志模板;
若所述待存储日志为所述错误日志,则结束所述待存储日志的存储操作,并进行错误日志告警。
在本公开的一种示例性实施例中,所述将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置,包括:
将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置,并对重复的日志参数进行压缩。
在本公开的一种示例性实施例中,所述日志模板集合的生成方法包括:
离线获取历史日志;
根据日志模板提取算法提取各个所述历史日志对应的日志模板;
根据各个所述历史日志对应的日志模板生成所述日志模板集合。
根据本公开的第二方面,提供一种日志的存储装置,包括:
日志模板获取模块,用于获取日志模板集合,并根据所述日志模板集合得到日志存储表;
日志模板匹配模块,用于将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板;
列式存储日志模块,用于根据所述目标日志模板提取所述待存储日志中的日志参数,并将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置。
根据本公开的第三方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的日志的存储方法。
根据本公开的第四方面,提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的日志的存储方法。
本公开示例性实施例可以具有以下有益效果:
本公开示例实施方式的日志的存储方法中,通过将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的目标日志模板,然后将待存储日志的日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置。本公开示例实施方式中的日志的存储方法,一方面,通过将待存储日志与日志模板集合中的各个日志模板分别进行匹配,能够提高模板匹配效率与准确率;另一方面,通过将日志转化成日志模板和对应的日志参数,并通过列式存储的方法存储日志参数,可以提高日志的压缩比,减少日志数据存储时的空间占用,降低存储成本,从而保留尽可能多的日志数据供后续分析挖掘使用。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本公开示例实施方式的日志的存储方法的流程示意图;
图2示出了本公开示例实施方式的日志模板集合的生成方法的流程示意图;
图3示出了本公开示例实施方式的确定目标日志模板的流程示意图;
图4示出了本公开示例实施方式的根据待存储日志得到目标日志模板的流程示意图;
图5示出了根据本公开的一个具体实施方式中的日志存储表的示意图。
图6示出了本公开示例实施方式的日志的存储装置的框图;
图7示出了适于用来实现本公开实施方式的电子设备的计算机***的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在***中,特别是大规模分布式***中,日志是一个很重要的部分,不仅能够起到错误排查功能,也可以通过日志实现很多分析和预测工作,来提升***运维效率。但随着时间推移,存储的日志会越来越多,如果不进行处理,将会占用过量的磁盘空间,带来很大的存储成本。一般处理日志的方法包括只保留近期的日志,但是这种方法对日志的分析和挖掘是不利的,所以日志压缩是大型***必要考虑的因素。
在一些相关的实施例中,可以通过对日志文本直接压缩后进行存储,但是这种方法的压缩比有限,无法得到很好的效果。另外,由于日志的特点是存在大量重复或相似的内容,因此,还可以利用日志模板对日志进行压缩,但是目前该方法仍然存在匹配率低,压缩比不高等情况。
针对上述相关实施例中的日志压缩算法单一、压缩准确率和压缩比不高等问题,本示例实施方式首先提供了一种日志的存储方法。参考图1所示,上述日志的存储方法可以包括以下步骤:
步骤S110.获取日志模板集合,并根据日志模板集合得到日志存储表。
步骤S120.将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的目标日志模板。
步骤S130.根据目标日志模板提取待存储日志中的日志参数,并将日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置。
本公开示例实施方式的日志的存储方法中,通过将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的目标日志模板,然后将待存储日志的日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置。本公开示例实施方式中的日志的存储方法,一方面,通过将待存储日志与日志模板集合中的各个日志模板分别进行匹配,能够提高模板匹配效率与准确率;另一方面,通过将日志转化成日志模板和对应的日志参数,并通过列式存储的方法存储日志参数,可以提高日志的压缩比,减少日志数据存储时的空间占用,降低存储成本,从而保留尽可能多的日志数据供后续分析挖掘使用。
下面,结合图2至图5对本示例实施方式的上述步骤进行更加详细的说明。
在步骤S110中,获取日志模板集合,并根据日志模板集合得到日志存储表。
本示例实施方式中,日志即***日志,可以用于记录***中硬件、软件和***问题的信息,通过日志能够检查错误发生的原因等。日志模板指的是将同一类型的日志中固定不变的部分提取出来得到的模板,例如,某一类日志内容为“应用进程A向应用进程B发送文件C”,则对应的日志模板即为“应用进程*向应用进程*发送文件*”,而日志模板中填写的内容即为对应的日志参数,例如上述A、B、C。通过日志模板与对应的日志参数,可以还原出原始的日志。
获取预先生成的日志模板集合之后,将日志模板集合中的所有日志模板存储为一个表,即日志模板表。日志模板表可用于后续的日志存储。
本示例实施方式中,如图2所示,日志模板集合的生成方法具体可以包括以下几个步骤:
步骤S210.离线获取历史日志。
通过离线收集大批量的历史日志,可以尽可能地获得更多且更为准确的日志模板。
步骤S220.根据日志模板提取算法提取各个历史日志对应的日志模板。
针对获取到的历史日志,可以选择适合的日志模板提取算法进行模板提取,比如可以自由根据不同日志的特点使用不同的日志模板提取算法。其中,日志模板提取算法可例如Drain(解析树)算法、Spell(最长公共子序列计算)算法等。
步骤S230.根据各个历史日志对应的日志模板生成日志模板集合。
根据提取得到的各个历史日志对应的日志模板,生成在后续步骤中用于模板匹配的日志模板集合。
本示例实施方式中,通过离线提取日志模板,不仅避免了在线模板生成的不准确与低效,而且通过离线模板提取与在线模板更新相结合,能够提高模板匹配的准确率与效率。通过充分利用日志模板与日志事件算法的优势,能够挖掘日志数据不同特征。
在实际应用中,历史日志的日志模板生成功能作为新增的***功能,对现有生产流程不会产生任何影响,通过部署相应算法处理模块即可实现。
在步骤S120中,将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的目标日志模板。
本示例实施方式中,如图3所示,将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的目标日志模板,具体可以包括以下几个步骤:
步骤S310.将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的候选日志模板。
针对每一条新输入的待存储日志,可以将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志与各个日志模板的匹配度;然后根据匹配度最高的日志模板得到待存储日志对应的候选日志模板。在计算匹配度时,如果待存储日志与日志模板在相同位置出现同样字符的情况越多,且字符长度相同,则说明待存储日志与日志模板的匹配度越高。
步骤S320.判断待存储日志与候选日志模板是否完全匹配。
得到待存储日志对应的候选日志模板以后,还需要判断待存储日志与候选日志模板是否完全匹配,也就是判断待存储日志与候选日志模板的每一个位置的字符是否都能匹配得上。
步骤S330.若待存储日志与候选日志模板完全匹配,则将候选日志模板作为待存储日志对应的目标日志模板。
如果待存储日志与候选日志模板的每一个位置的字符都能匹配得上,则说明候选日志模板就是待存储日志所使用的模板,因此,可以直接将候选日志模板作为待存储日志对应的目标日志模板。
步骤S340.若待存储日志与候选日志模板不完全匹配,则根据待存储日志得到目标日志模板,并根据目标日志模板更新日志模板集合。
如果待存储日志与候选日志模板中有些位置上的字符内容无法完全匹配,则说明无法使用当前日志模板集合中已有的模板,因此需要重新生成新的日志模板,并将新生成的日志模板放入日志模板集合中,对日志模板集合进行更新。
本示例实施方式中,如图4所示,根据待存储日志得到目标日志模板,具体可以包括以下几个步骤:
步骤S410.获取待存储日志与候选日志模板的匹配度,并判断匹配度是否大于或等于匹配度阈值。
在确定候选日志模板时已经计算过待存储日志与候选日志模板的匹配度,此时可以判断该匹配度是否大于或等于匹配度阈值。匹配度阈值可以设定为0.7或0.8等数值,本示例实施方式中不做具体限定。
步骤S420.若匹配度大于或等于匹配度阈值,则根据待存储日志对候选日志模板进行字符转换,得到目标日志模板。
若待存储日志与候选日志模板的匹配度大于或等于匹配度阈值,则说明二者的匹配度还是比较高的,因此,可以直接在候选日志模板的基础上进行更新,通过结合待存储日志对候选日志模板中有区别的地方进行字符转换,即可得到待存储日志对应的目标日志模板。
步骤S430.若匹配度小于匹配度阈值,则根据待存储日志重新生成目标日志模板。
若待存储日志与候选日志模板的匹配度小于匹配度阈值,则说明待存储日志与候选日志模板之间的差别较大,此时,使用日志模板提取算法直接根据待存储日志重新生成新的日志模板,效率可能会更高。
本示例实施方式中,在根据待存储日志重新生成目标日志模板之前,还可以先判断待存储日志是否为错误日志,若待存储日志不是错误日志,则根据待存储日志重新生成目标日志模板;若待存储日志为错误日志,则结束待存储日志的存储操作,并进行错误日志告警。通过在日志匹配的过程中对日志进行自动化分析,找出错误日志,能够提前发现***运行过程中潜在的错误,并提前对***的不当行为进行预警和处理。
在步骤S130中,根据目标日志模板提取待存储日志中的日志参数,并将日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置。
本示例实施方式中,可以将每一个新输入的日志根据其匹配的日志模板进行分片,分片数量与日志模板集合中日志模板的总个数相同。由于匹配相同日志模板的日志的特性为相同参数一定是相同类型,且参数值重复率高,因此对不同模板的不同参数可以进行列式压缩存储。如图5所示是本公开的一个具体实施方式中的日志存储表的示意图。
本示例实施方式中,根据日志模板进行实时日志数据的压缩,把日志内容转化成日志模板和对应的日志参数,然后通过将日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置,并对重复的日志参数进行压缩,与其他压缩算法相比,充分利用了同模板类型参数的特性,增加压缩准确率和压缩比,从而减少了磁盘空间占用,达到降本增效的目的。
在实际应用中,在线日志匹配与日志模板更新、日志数据分片列式存储两个流程可以跟现有的日志实时采集***合并,作为采集***的功能实现。这两个流程效率较高,对现有采集***影响较小。
应当注意,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
进一步的,本公开还提供了一种日志的存储装置。参考图6所示,该日志的存储装置可以包括日志模板获取模块610、日志模板匹配模块620以及列式存储日志模块630。其中:
日志模板获取模块610可以用于获取日志模板集合,并根据日志模板集合得到日志存储表;
日志模板匹配模块620可以用于将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的目标日志模板;
列式存储日志模块630可以用于根据目标日志模板提取待存储日志中的日志参数,并将日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置。
在本公开的一些示例性实施例中,日志模板匹配模块620可以包括候选模板确定单元、候选模板匹配单元、目标模板确定单元以及日志模板更新单元。其中:
候选模板确定单元可以用于将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志对应的候选日志模板;
候选模板匹配单元可以用于判断待存储日志与候选日志模板是否完全匹配;
目标模板确定单元可以用于若待存储日志与候选日志模板完全匹配,则将候选日志模板作为待存储日志对应的目标日志模板;
日志模板更新单元可以用于若待存储日志与候选日志模板不完全匹配,则根据待存储日志得到目标日志模板,并根据目标日志模板更新日志模板集合。
在本公开的一些示例性实施例中,候选模板确定单元可以包括模板匹配度计算单元以及候选日志模板确定单元。其中:
模板匹配度计算单元可以用于将待存储日志与日志模板集合中的各个日志模板分别进行匹配,得到待存储日志与各个日志模板的匹配度;
候选日志模板确定单元可以用于根据匹配度最高的日志模板得到待存储日志对应的候选日志模板。
在本公开的一些示例性实施例中,日志模板更新单元可以包括匹配度阈值判断单元、候选模板转换单元以及模板重新生成单元。其中:
匹配度阈值判断单元可以用于获取待存储日志与候选日志模板的匹配度,并判断匹配度是否大于或等于匹配度阈值;
候选模板转换单元可以用于若匹配度大于或等于匹配度阈值,则根据待存储日志对候选日志模板进行字符转换,得到目标日志模板;
模板重新生成单元可以用于若匹配度小于匹配度阈值,则根据待存储日志重新生成目标日志模板。
在本公开的一些示例性实施例中,日志模板更新单元还可以包括错误日志判断单元、日志模板生成单元以及错误日志告警单元。其中:
错误日志判断单元可以用于判断待存储日志是否为错误日志;
日志模板生成单元可以用于若待存储日志不是错误日志,则根据待存储日志重新生成目标日志模板;
错误日志告警单元可以用于若待存储日志为错误日志,则结束待存储日志的存储操作,并进行错误日志告警。
在本公开的一些示例性实施例中,列式存储日志模块630可以包括日志参数压缩单元,可以用于将日志参数以列式存储的方式存储在日志存储表中的目标日志模板对应的目标位置,并对重复的日志参数进行压缩。
在本公开的一些示例性实施例中,本公开提供的一种日志的存储装置还可以包括日志模板集合生成模块,该日志模板集合生成模块可以包括历史日志获取单元、日志模板提取单元以及模板集合生成单元。其中:
历史日志获取单元可以用于离线获取历史日志;
日志模板提取单元可以用于根据日志模板提取算法提取各个历史日志对应的日志模板;
模板集合生成单元可以用于根据各个历史日志对应的日志模板生成日志模板集合。
上述日志的存储装置中各模块/单元的具体细节在相应的方法实施例部分已有详细的说明,此处不再赘述。
图7示出了适于用来实现本发明实施例的电子设备的计算机***的结构示意图。
需要说明的是,图7示出的电子设备的计算机***700仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,计算机***700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有***操作所需的各种程序和数据。CPU701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的***中限定的各种功能。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种日志的存储方法,其特征在于,包括:
获取日志模板集合,并根据所述日志模板集合得到日志存储表;
将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板;
根据所述目标日志模板提取所述待存储日志中的日志参数,并将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置。
2.根据权利要求1所述的日志的存储方法,其特征在于,所述将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板,包括:
将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的候选日志模板;
判断所述待存储日志与所述候选日志模板是否完全匹配;
若所述待存储日志与所述候选日志模板完全匹配,则将所述候选日志模板作为所述待存储日志对应的目标日志模板;
若所述待存储日志与所述候选日志模板不完全匹配,则根据所述待存储日志得到所述目标日志模板,并根据所述目标日志模板更新所述日志模板集合。
3.根据权利要求2所述的日志的存储方法,其特征在于,所述将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的候选日志模板,包括:
将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志与各个所述日志模板的匹配度;
根据所述匹配度最高的日志模板得到所述待存储日志对应的候选日志模板。
4.根据权利要求2所述的日志的存储方法,其特征在于,所述根据所述待存储日志得到所述目标日志模板,包括:
获取所述待存储日志与所述候选日志模板的匹配度,并判断所述匹配度是否大于或等于匹配度阈值;
若所述匹配度大于或等于所述匹配度阈值,则根据所述待存储日志对所述候选日志模板进行字符转换,得到所述目标日志模板;
若所述匹配度小于所述匹配度阈值,则根据所述待存储日志重新生成所述目标日志模板。
5.根据权利要求4所述的日志的存储方法,其特征在于,在所述根据所述待存储日志重新生成所述目标日志模板之前,所述方法还包括:
判断所述待存储日志是否为错误日志;
若所述待存储日志不是所述错误日志,则根据所述待存储日志重新生成所述目标日志模板;
若所述待存储日志为所述错误日志,则结束所述待存储日志的存储操作,并进行错误日志告警。
6.根据权利要求1所述的日志的存储方法,其特征在于,所述将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置,包括:
将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置,并对重复的日志参数进行压缩。
7.根据权利要求1所述的日志的存储方法,其特征在于,所述日志模板集合的生成方法包括:
离线获取历史日志;
根据日志模板提取算法提取各个所述历史日志对应的日志模板;
根据各个所述历史日志对应的日志模板生成所述日志模板集合。
8.一种日志的存储装置,其特征在于,包括:
日志模板获取模块,用于获取日志模板集合,并根据所述日志模板集合得到日志存储表;
日志模板匹配模块,用于将待存储日志与所述日志模板集合中的各个日志模板分别进行匹配,得到所述待存储日志对应的目标日志模板;
列式存储日志模块,用于根据所述目标日志模板提取所述待存储日志中的日志参数,并将所述日志参数以列式存储的方式存储在所述日志存储表中的目标日志模板对应的目标位置。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储一个或多个程序,当所述一个或多个程序被所述处理器执行时,使得所述处理器实现如权利要求1至7中任一项所述的日志的存储方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至7中任一项所述的日志的存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111159938.4A CN113868214A (zh) | 2021-09-30 | 2021-09-30 | 日志的存储方法、装置、电子设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111159938.4A CN113868214A (zh) | 2021-09-30 | 2021-09-30 | 日志的存储方法、装置、电子设备及计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113868214A true CN113868214A (zh) | 2021-12-31 |
Family
ID=79001078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111159938.4A Pending CN113868214A (zh) | 2021-09-30 | 2021-09-30 | 日志的存储方法、装置、电子设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113868214A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115757049A (zh) * | 2023-01-09 | 2023-03-07 | 深圳市蓝凌软件股份有限公司 | 多业务模块日志记录方法、***、电子设备及存储介质 |
CN116894021A (zh) * | 2023-05-24 | 2023-10-17 | 北京优特捷信息技术有限公司 | 一种日志数据存储方法、查询方法、装置、设备及介质 |
-
2021
- 2021-09-30 CN CN202111159938.4A patent/CN113868214A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115757049A (zh) * | 2023-01-09 | 2023-03-07 | 深圳市蓝凌软件股份有限公司 | 多业务模块日志记录方法、***、电子设备及存储介质 |
CN115757049B (zh) * | 2023-01-09 | 2023-05-05 | 深圳市蓝凌软件股份有限公司 | 多业务模块日志记录方法、***、电子设备及存储介质 |
CN116894021A (zh) * | 2023-05-24 | 2023-10-17 | 北京优特捷信息技术有限公司 | 一种日志数据存储方法、查询方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109697207B (zh) | 时序数据的异常监控方法及*** | |
CN113868214A (zh) | 日志的存储方法、装置、电子设备及计算机可读介质 | |
CN109857431B (zh) | 代码修改方法及装置、计算机可读介质及电子设备 | |
CN110727437B (zh) | 代码优化项获取方法、装置、存储介质及电子设备 | |
CN115122155A (zh) | 基于工业互联网大数据的机床远程诊断方法及*** | |
CN109871263B (zh) | 线下区块链***的运行方法、装置、设备及存储介质 | |
CN112651172B (zh) | 一种降雨峰值类型划分方法、装置、设备和存储介质 | |
CN114860542A (zh) | 趋势预测模型的优化方法、优化装置、电子设备和介质 | |
CN111104214A (zh) | 一种工作流应用方法及装置 | |
CN112783508B (zh) | 文件的编译方法、装置、设备以及存储介质 | |
CN110704614B (zh) | 对应用中的用户群类型进行预测的信息处理方法及装置 | |
CN117251559A (zh) | 基于自然语言大模型的工程标准规范获取方法及*** | |
CN114692767A (zh) | 异常检测方法和装置、计算机可读存储介质、电子设备 | |
CN110797081B (zh) | 激活区域识别方法及装置、存储介质及电子设备 | |
CN114141236A (zh) | 语言模型更新方法、装置、电子设备及存储介质 | |
CN114490547A (zh) | 数据压缩方法、装置、设备及介质 | |
CN115292146B (zh) | 一种***容量预估方法、***、设备及存储介质 | |
CN115828977B (zh) | 工业互联网标签编码方法、装置、介质及电子设备 | |
CN117708071A (zh) | 基于大数据的煤矿设备运行参数的处理方法及装置 | |
CN115858324B (zh) | 基于ai的it设备故障处理方法、装置、设备和介质 | |
CN115758135B (zh) | 轨道交通信号***功能需求追溯方法、装置及电子设备 | |
CN110716817B (zh) | ***运行故障处理方法、装置、存储介质及电子设备 | |
CN116244488A (zh) | 一种目标数据识别方法及识别装置 | |
US20230132618A1 (en) | Method for denoising click data, electronic device and storage medium | |
CN113077821A (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 |