本技术涉及日志输出,并且更具体地,涉及日志输出中一种日志输出优化方法、装置、设备及介质。
背景技术:
1、服务日志是分析生产问题的重要工具。在复杂的分布式系统中,服务日志提供可关于系统运行情况的详细信息,有助于开发人员和运维人员定位问题、诊断故障等,使得日志打印显得尤为重要。
2、相关技术中,由于开发人员基于个人开发经验进行日志输出,因此会输出大量的无用信息,从而导致当前输出的日志文件存在较多的不合理日志内容。
3、如此,如何提高日志输出的合理性成为亟需解决的问题。
技术实现思路
1、本技术提供了一种日志输出优化方法、装置、设备及介质,该方法能够提高日志输出的合理性。
2、第一方面,提供了一种日志输出优化方法,该方法包括:
3、获取多个节点设备的初始日志文件;其中,所述初始日志文件为基于初始输出策略输出的日志文件;
4、确定所述初始日志文件中的目标日志内容;其中,所述目标日志内容用于指示所述多个节点设备的目标文件中占比大于或等于第一预设阈值的日志内容;
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、在本技术的实施例中,若检测到待输出的源日志数据,基于目标输出策略,确定所述源日志数据对应的目标日志输出内容,输出目标日志输出内容对应的目标日志文件;在上述方案中,由于在检测到待输出的源日志数据时,可以基于新输出策略确定出源日志数据对应的目标日志输出内容,并输出目标日志输出内容对应的目标日志文件,因此目标日志文件不包括高占比的目标日志内容(即无用内容),从而提高了日志输出的合理性,与初始日志文件的占用空间相比,目标日志文件的占用空间也明显减少。
30、结合第一方面和上述实现方式,在某些可能的实现方式中,所述方法还包括:
31、基于每组日志内容在所述目标文件中的所述目标占比,生成可视化图表;其中,所述可视化图表用于指示每组日志内容在所述目标文件中的所述目标占比;
32、显示所述可视化图表。
33、在本技术的实施例中,由于可以基于每组日志内容在所述目标文件中的目标占比,生成可视化图表,并显示该可视化图表,因此用户可以通过该可视化图表直观查看高占比的目标日志内容,并便于开发人员通过该可视化图表查看目标日志内容的类包名;便于开发人员进行监测。
34、第二方面,提供了一种日志输出优化装置,该装置包括:
35、第一获取模块,用于获取多个节点设备的初始日志文件;其中,所述初始日志文件为基于初始输出策略输出的日志文件;
36、第一确定模块,用于确定所述初始日志文件中的目标日志内容;其中,所述目标日志内容用于指示所述多个节点设备的目标文件中占比大于或等于第一预设阈值的日志内容;
37、第二确定模块,用于确定所述目标日志内容是否关联目标业务;
38、第三确定模块,用于若所述目标日志内容不关联所述目标业务,基于目标日志内容,确定目标输出策略;其中,所述目标输出策略用于在下次执行日志输出时约束源日志数据中的日志输出内容。
39、第三方面,提供一种电子设备,包括:
40、存储器,用于存储可执行程序代码;
41、处理器,用于从所述存储器中调用并运行所述可执行程序代码,使得该电子设备执行上述第一方面或第一方面任意一种可能的实现方式中的方法。
42、第四方面,提供了一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行上述第一方面或第一方面任意一种可能的实现方式中的方法。
43、第五方面,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行上述第一方面或第一方面任意一种可能的实现方式中的方法。
1.一种日志输出优化方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定所述初始日志文件中的目标日志内容,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述目标信息,确定所述目标日志内容,包括:
4.根据权利要求1所述的方法,其特征在于,所述确定所述目标日志内容是否关联目标业务,包括:
5.根据权利要求1所述的方法,其特征在于,所述确定所述目标日志内容是否关联目标业务之前,所述方法包括:
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
7.根据权利要求3所述的方法,其特征在于,所述方法还包括:
8.一种日志输出优化装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被执行时,实现如权利要求1至7中任意一项所述的方法。
