本技术涉及计算机,具体涉及一种日志记录方法及装置。
背景技术:
1、随着信息化的发展,为了确保网络安全,许多网络建设需要进行物理隔离建设,以保障核心领域的网络安全。网络边界产品位于不同安全等级网络边界处,用来保证不同安全等级网络数据以逻辑隔离和物理隔离的方式进行数据安全交换,因此,网络边界产品在运行中会有大量的长链接和短连接业务数据。出于网络安全的需求,需要记录所有这些经过边界产品的链接信息,以便事后审查和追溯,而这些信息则以日志的形式被记录。
2、目前网络边界产品在处理高并发(即短时间内大量出现)日志时,通常采用每条不落的方式记录所有的日志,部分会通过增加多台设备借助分布式技术来解决大量日志的存储。这就导致需要消耗设备大量的性能以及磁盘内存来处理这些日志,且后期查找日志时也无法进行高效率的检索。
技术实现思路
1、本技术提供一种日志记录方法及装置,用以提高日志记录的效率。
2、第一方面,本技术提供一种日志记录方法,该方法具体包括:获取一个或多个业务数据,其中,每个业务数据对应的生成时间均处于预设的第一时间范围内;基于所述一个或多个业务数据携带的五元组信息异同,对所述一个或多个业务数据进行第一归并处理,获得相应的至少一个第一归并日志;其中,每个第一归并日志均携带第一字段,所述第一字段用于指示:在所述第一时间范围内,被归并至相应的第一归并日志的业务数据的个数;每个第一归并日志的业务类型为:被归并至相应的第一归并日志的业务数据的业务类型中的一个;将所述至少一个第一归并日志保存至数据库。
3、在本方案中,可以首先将一段时间范围内接收到的具有相同五元组信息的业务数据进行合并,这样,仅通过一条归并日志即可表名其对应的五元组信息以及出现次数,而无需花费较多的内存去存储具有相同信息的冗余日志,有效地提高了内存利用率。另一方面,本方案无需扩展硬件或其他网络资源即可提高日志记录能力,实施成本低,可靠性强。
4、可选的,所述第一归并日志还包括五元组信息,则所述基于所述一个或多个业务数据携带的五元组信息异同,对所述一个或多个业务数据进行第一归并处理,获得相应的至少一个第一归并日志,包括:分别获取各个第一时间范围中的目标业务数据;若确定在相应的第一时间范围中不存在与所述目标业务数据携带相同五元组信息的第一归并日志,则生成与所述目标业务数据对应的目标第一归并日志;其中,所述目标第一归并日志携带与所述目标业务数据相同的五元组信息以及所述第一字段;若确定在相应的第一时间范围中存在与所述目标业务数据对应的目标第一归并日志,则在所述目标第一归并日志携带的第一字段的值上加1。
5、在本方式中,基于业务数据的五元组信息,将各个第一时间范围内的业务数据进行第一归并处理,如此,得到了不同的第一时间范围对应的至少一条第一归并日志,每个第一归并日志中都通过第一字段记录该第一时间范围内,具有相同五元组信息的业务数据的个数,提高了一条日志的信息含量。并且,在每接收新的业务数据时,可以首先判断是否存在对应的第一归并日志,并根据第一归并日志中的第一字段的值记录重复出现的具有相同五元组信息的业务数据,极大地减少了日志记录对内存的消耗。
6、可选的,在所述将所述至少一个第一归并日志保存至数据库之前,所述方法还包括:基于所述第一归并日志对应的业务类型和/或被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志;其中,所述生成时间在预设的第二时间范围内,所述第二时间范围包含所述第一时间范围。
7、在本方式中,在一次归并处理后,还可以利用业务类型和/或被归并至所述第一归并日志的业务数据的生成时间对归并后的日志进行再次归并,通过多次归并的方式,进一步地提高一条日志的信息含量,降低了存储日志所需的空间成本。
8、可选的,所述第一归并日志对应的业务类型为被归并至第一归并日志的业务数据对应的业务类型中的一个;则所述基于所述第一归并日志对应的业务类型,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:基于获得的各第一归并日志各自对应的业务类型,以及各自携带的五元组信息,对具有相同的业务类型以及携带相同五元组信息的第一归并日志进行第二归并处理,获得所述至少一个第二归并日志;其中,每个第二归并日志均携带五元组信息以及第二字段,所述第二字段的值为被归并至所述第二归并日志的各第一归并日志的第一字段值之和。
9、在本方式中,通过业务类型对第一归并日志进行第二归并处理,使得具有相同的业务类型以及相同的五元组信息的各个第一归并日志可以被归并至相应的第二归并日志中,如此,进一步的提高了一条日志中包含的信息内容,降低了存储日志所需要耗费的内存空间,提高了内存的利用效率。
10、可选的,所述第一归并日志对应的业务类型为被归并至的业务数据对应的业务类型中的一个;则所述基于所述第一归并日志对应的业务类型,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:基于所述至少一个第一归并日志各自对应的业务类型,将所述业务类型相同的第一归并日志划分至同一业务集合;针对获得的各业务集合,分别执行如下操作:保留一个业务集合中携带相同五元组信息的第一归并日志中的一个,作为相应的第二归并日志,并将所述一个业务集合中携带相同五元组信息的第一归并日志中第一字段值的和,作为所述第二归并日志携带的第二字段的值。
11、在本方式中,通过将对应不同业务类型的第一归并日志划分至不同的业务集合中,再将业务集合中的具有相同五元组信息的第一归并日志进行归并处理,实现了对第一归并日志的第二归并处理,亦即完成了对业务数据的归并处理,得到了最终的归并日志。在后续继续进行记录日志的过程时,电子设备可以仅记录数量有限的归并日志,即可完成对业务数据携带的信息的全部记录,既提高了日志记录的效率以及日志存储时的空间利用率,也确保了日志记录的有效性。
12、可选的,所述被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:基于获得的各第一归并日志携带的五元组信息,对所述第二时间范围内的所有第一归并日志进行第二归并处理,得到所述至少一个第二归并日志;其中,每个第二归并日志均携带五元组信息以及第二字段,所述第二字段用于指示在所述第二时间范围内,与所述第二归并日志携带的五元组信息相同的业务数据的个数。
13、在本方式中,基于第一归并日志对应的业务数据的生成时间,对第二时间范围内的第一归并日志进行第二归并处理,进一步地降低了日志数量,同时提高了日志中包含的信息含量,提高了日志存储时的空间利用率。
14、可选的,所述基于所述第一归并日志对应的业务类型和被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:基于获得的至少一个第一归并日志各自对应的业务类型,对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志;其中,每个第三归并日志均携带五元组信息以及第三字段;所述第三字段用于指示在各个第三时间范围,携带的五元组信息以及对应的业务类型均与所述第三归并日志对应的第一归并日志的第一字段值之和;基于获得的各第三归并日志各自携带的五元组信息,对所述第二时间范围内所有的第三归并日志进行第四归并处理,获得相应的至少一个第二归并日志,每个第二归并日志均携带五元组信息以及第二字段,所述第二字段用于指示在所述第二时间范围内,被归并至所述每个第二归并日志的业务数据的个数。
15、在本方式中,将归并处理的方式划分为三级归并,最大程度的限制了每次归并处理时,电子设备所需处理的日志数量,从而进一步地降低了单次处理日志的耗时以及单次处理日志所需的设备性能。
16、可选的,所述基于获得的至少一个第一归并日志各自对应的业务类型,对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志,包括:确定所述至少一个第一归并日志各自对应的业务标识;其中,所述业务标识用于表示相应的第一归并日志对应的业务类型;依据所述第三时间范围以及所述第一归并日志携带的五元组信息的异同,将携带相同业务标识以及五元组信息的第一归并日志合并,获得所述至少一个第三归并日志。
17、在本方式中,通过各日志的业务标识,确定各日志对应的业务类型,实现过程简单便捷,提高了本方案的可实施性。
18、可选的,在所述获得相应的至少一个第一归并日志之后,所述方法还包括:基于所述第一时间范围,分别将各第一时间范围内的至少一个第一归并日志发送至第一队列;则在所述基于所述第一归并日志对应的业务类型和/或被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志之前,所述方法还包括:从所述第一队列中获取一个或多个第一归并日志。
19、在本方式中,将归并后的日志发送至第一队列进行保存,从而避免了获取业务数据的模块需要耗费较多的内容对业务数据进行保存。
20、可选的,所述从所述第一队列中获取一个或多个第一归并日志,包括:基于第一时间要求,定时遍历所述第一队列;获取所述第一队列中存在时长达到第二时间要求的第一归并日志。
21、在本方式中,定期访问第一队列,并从中获取到经过一次归并处理的第一归并日志,从而确保了日志可以在要求时间内完成后续的处理,避免出现日志长期未被处理的问题,提高了本方案实施的可靠性。
22、可选的,在对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志之后,所述方法还包括:基于所述第三时间范围,将所述至少一个第三归并日志发送至第二队列,所述第二队列中包含至少一个子队列,每个子队列均对应一个业务类型。
23、在本方式中,通过第二队列将分类后的日志进行暂时存储,进一步地将日志记录的整个流程划分,这样电子设备可以分块完成上述三级归并处理,使得不同的模块可以专注完成其对应的工作,从而提高电子设备的处理性能。
24、可选的,所述从所述第一队列中获取一个或多个第一归并日志,包括:基于第一时间要求,定时遍历所述第一队列;获取所述第一队列中存在时长达到第二时间要求的第一归并日志。
25、在本方式中,定期访问第一队列,并从中获取到经过一次归并处理的第一归并日志,从而确保了日志可以在要求时间内完成后续的处理,避免出现日志长期未被处理的问题,提高了本方案实施的可靠性。
26、可选的,所述将所述至少一个第一归并日志保存至数据库,包括:基于预设数量要求,分批将所述至少一个第一归并日志保存至数据库。
27、在本方式中,可以按照需求将不同数量的日志存储至数据库,完成其对日志的记录,提高了本方案的灵活性。同时,一次性完成对多个归并日志的保存,降低了对数据库的写入次数,避免了过多的写入所造成的性能损耗。
28、第二方面,本技术提供一种日志记录装置,该装置包括:获取模块,用于获取一个或多个业务数据,其中,每个业务数据对应的生成时间均处于预设的第一时间范围内;归并模块,用于基于所述一个或多个业务数据携带的五元组信息异同,对所述一个或多个业务数据进行第一归并处理,获得相应的至少一个第一归并日志;其中,每个第一归并日志均携带第一字段,所述第一字段用于指示:在所述第一时间范围内,被归并至相应的第一归并日志的业务数据的个数;每个第一归并日志的业务类型为:被归并至相应的第一归并日志的业务数据的业务类型中的一个;记录模块,用于将所述至少一个第一归并日志保存至数据库。
29、可选的,所述第一归并日志还包括五元组信息,则所述归并模块用于基于所述一个或多个业务数据携带的五元组信息异同,对所述一个或多个业务数据进行第一归并处理,获得相应的至少一个第一归并日志时,具体用于:分别获取各个第一时间范围中的目标业务数据;若确定在相应的第一时间范围中不存在与所述目标业务数据携带相同五元组信息的第一归并日志,则生成与所述目标业务数据对应的目标第一归并日志;其中,所述目标第一归并日志携带与所述目标业务数据相同的五元组信息以及所述第一字段;若确定在相应的第一时间范围中存在与所述目标业务数据对应的目标第一归并日志,则在所述目标第一归并日志携带的第一字段的值上加1。
30、可选的,在所述将所述至少一个第一归并日志保存至数据库之前,所述归并模块还用于:基于所述第一归并日志对应的业务类型和/或被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志;其中,所述生成时间在预设的第二时间范围内,所述第二时间范围包含所述第一时间范围。
31、可选的,所述第一归并日志对应的业务类型为被归并至第一归并日志的业务数据对应的业务类型中的一个;则所述归并模块用于基于所述第一归并日志对应的业务类型,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志时,具体用于:基于获得的各第一归并日志各自对应的业务类型,以及各自携带的五元组信息,对具有相同的业务类型以及携带相同五元组信息的第一归并日志进行第二归并处理,获得所述至少一个第二归并日志;其中,每个第二归并日志均携带五元组信息以及第二字段,所述第二字段的值为被归并至所述第二归并日志的各第一归并日志的第一字段值之和。
32、可选的,所述第一归并日志对应的业务类型为被归并至的业务数据对应的业务类型中的一个;则所述归并模块用于基于所述第一归并日志对应的业务类型,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志时,具体用于:基于所述至少一个第一归并日志各自对应的业务类型,将所述业务类型相同的第一归并日志划分至同一业务集合;针对获得的各业务集合,分别执行如下操作:保留一个业务集合中携带相同五元组信息的第一归并日志中的一个,作为相应的第二归并日志,并将所述一个业务集合中携带相同五元组信息的第一归并日志中第一字段值的和,作为所述第二归并日志携带的第二字段的值。
33、可选的,所述归并模块用于基于被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志时,具体用于:基于获得的各第一归并日志携带的五元组信息,对所述第二时间范围内的所有第一归并日志进行第二归并处理,得到所述至少一个第二归并日志;其中,每个第二归并日志均携带五元组信息以及第二字段,所述第二字段用于指示在所述第二时间范围内,与所述第二归并日志携带的五元组信息相同的业务数据的个数。
34、可选的,所述归并模块用于基于所述第一归并日志对应的业务类型和被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志时,具体用于:基于获得的至少一个第一归并日志各自对应的业务类型,对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志;其中,每个第三归并日志均携带五元组信息以及第三字段;所述第三字段用于指示在各个第三时间范围,携带的五元组信息以及对应的业务类型均与所述第三归并日志对应的第一归并日志的第一字段值之和;基于获得的各第三归并日志各自携带的五元组信息,对所述第二时间范围内所有的第三归并日志进行第四归并处理,获得相应的至少一个第二归并日志,每个第二归并日志均携带五元组信息以及第二字段,所述第二字段用于指示在所述第二时间范围内,被归并至所述每个第二归并日志的业务数据的个数。
35、可选的,所述归并模块用于基于获得的至少一个第一归并日志各自对应的业务类型,对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志时,具体用于:确定所述至少一个第一归并日志各自对应的业务标识;其中,所述业务标识用于表示相应的第一归并日志对应的业务类型;依据所述第三时间范围以及所述第一归并日志携带的五元组信息的异同,将携带相同业务标识以及五元组信息的第一归并日志合并,获得所述至少一个第三归并日志。
36、可选的,在所述获得相应的至少一个第一归并日志之后,所述归并模块还用于:基于所述第一时间范围,分别将各第一时间范围内的至少一个第一归并日志发送至第一队列;则在所述基于所述第一归并日志对应的业务类型和/或被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志之前,所述归并模块还用于:从所述第一队列中获取一个或多个第一归并日志。
37、可选的,所述归并模块用于从所述第一队列中获取一个或多个第一归并日志时,具体用于:基于第一时间要求,定时遍历所述第一队列;获取所述第一队列中存在时长达到第二时间要求的第一归并日志。
38、可选的,在对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志之后,所述归并模块还用于:基于所述第三时间范围,将所述至少一个第三归并日志发送至第二队列,所述第二队列中包含至少一个子队列,每个子队列均对应一个业务类型。
39、可选的,所述归并模块用于从所述第一队列中获取一个或多个第一归并日志时,具体用于:基于第一时间要求,定时遍历所述第一队列;获取所述第一队列中存在时长达到第二时间要求的第一归并日志。
40、可选的,所述记录模块用于将所述至少一个第一归并日志保存至数据库时,具体用于:基于预设数量要求,分批将所述至少一个第一归并日志保存至数据库。
41、第三方面,提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,使得所述至少一个处理器通过执行第一方面或第一方面任一种可选的实施方式中所述的方法。
42、第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质用于存储指令,当所述指令被执行时,使如第一方面或第一方面任一种可选的实施方式中的方法被实现。
43、本技术实施例中第二、第三以及第四方面中提供的一个或多个技术方案所具有的技术效果或优点,均可以由第一方面中提供的对应的一个或多个技术方案所具有的技术效果或优点对应解释。
1.一种日志记录方法,其特征在于,包括:
2.如权利要求1所述的方法,其特征在于,所述第一归并日志还包括五元组信息,则所述基于所述一个或多个业务数据携带的五元组信息异同,对所述一个或多个业务数据进行第一归并处理,获得相应的至少一个第一归并日志,包括:
3.如权利要求1所述的方法,其特征在于,在所述将所述至少一个第一归并日志保存至数据库之前,所述方法还包括:
4.如权利要求3所述的方法,其特征在于,所述基于所述第一归并日志对应的业务类型,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:
5.如权利要求3所述的方法,其特征在于,所述基于所述第一归并日志对应的业务类型,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:
6.如权利要求3所述的方法,其特征在于,所述基于被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:
7.如权利要求3所述的方法,其特征在于,所述基于所述第一归并日志对应的业务类型和被归并至所述第一归并日志的业务数据的生成时间,对所述第一归并日志进行第二归并处理,获得相应的至少一个第二归并日志,包括:
8.如权利要求7所述的方法,其特征在于,所述基于获得的至少一个第一归并日志各自对应的业务类型,对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志,包括:
9.如权利要求3所述的方法,其特征在于,在所述获得相应的至少一个第一归并日志之后,所述方法还包括:
10.如权利要求9所述的方法,其特征在于,所述从所述第一队列中获取一个或多个第一归并日志,包括:
11.如权利要求7所述的方法,其特征在于,在对所述至少一个第一归并日志进行第三归并处理,获得至少一个第三归并日志之后,所述方法还包括:
12.如权利要求1所述的方法,其特征在于,所述将所述至少一个第一归并日志保存至数据库,包括:
13.一种日志记录装置,其特征在于,包括:
14.一种电子设备,其特征在于,包括:
