核心转储文件的生成方法、装置及电子设备制造方法及图纸

技术编号:38590702 阅读:8 留言:0更新日期:2023-08-26 23:30
本发明专利技术提供了一种核心转储文件的生成方法、装置及电子设备,响应针对目标进程的核心转储事件,获取目标进程的内存快照及基础核心转储信息;基于预设的多个核心转储参数模板及基础核心转储信息,确定目标进程对应的目标核心转储参数模板;基于目标核心转储参数模板及基础核心转储信息,确定目标进程的核心转储文件的存储参数;基于存储参数及内存快照,生成目标进程的核心转储文件。该方式中,目标核心转储参数模板中的参数可以表征目标进程的基础特征及即时场景特征,因此,通过基于该种模板生成的存储参数可以快速识别核心转储文件对应的进程执行场景,提供的相关服务等,提高了对目标进程的核心转储文件进行识别与分析的效率。的效率。的效率。

【技术实现步骤摘要】
核心转储文件的生成方法、装置及电子设备


[0001]本专利技术涉及计算机
,具体而言,涉及一种核心转储文件的生成方法、装置及电子设备。

技术介绍

[0002]Linux系统响应核心转储信号时,会将core文件模板中的系统模板参数替换为具体的参数值,从而得到core文件的路径文件名,系统模板参数位于系统文件中定义的core文件模板中;然后将目标进程当时的内存快照写入core文件。然而,linux系统文件"/proc/sys/kernel/core_pattern"中只能定义一个core文件模板,该模板是进程的core文件生成时都会使用的公共模板,因此生成的core文件的路径文件名只能表示系统模板参数所代表的进程的公共特征,而不能表示在不同的进程执行场景中该目标进程的即时场景特征,如服务于哪个场景,或提供了何种服务等,难以满足对该类目标进程的核心转储文件的快速识别与分析需求。

技术实现思路

[0003]有鉴于此,本专利技术的目的在于提供一种核心转储文件的生成方法、装置及电子设备,以提高对目标进程的核心转储文件进行识别与分析的效率。
[0004]第一方面,本专利技术实施例提供了一种核心转储文件的生成方法,包括:响应针对目标进程的核心转储事件,获取目标进程的内存快照及基础核心转储信息;基于预设的多个核心转储参数模板及基础核心转储信息,确定目标进程对应的目标核心转储参数模板;其中,核心转储参数模板包括多个核心转储参数;核心转储参数用于:表征目标进程的基础特征或即时场景特征;基于目标核心转储参数模板及基础核心转储信息,确定目标进程的核心转储文件的存储参数;基于存储参数及内存快照,生成目标进程的核心转储文件。
[0005]第二方面,本专利技术实施例提供了一种核心转储文件的生成装置,包括:内存快照和基础核心转储信息获取模块,用于响应针对目标进程的核心转储事件,获取目标进程的内存快照;目标核心转储参数模板确定模块,用于基于预设的多个核心转储参数模板及基础核心转储信息,确定目标进程对应的目标核心转储参数模板;其中,核心转储参数模板包括多个核心转储参数;核心转储参数用于:表征目标进程的基础特征或即时场景特征;存储参数确定模块,用于基于目标核心转储参数模板及基础核心转储信息,确定目标进程的核心转储文件的存储参数;文件生成模块,用于基于存储参数及内存快照,生成目标进程的核心转储文件。
[0006]第三方面,本专利技术实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述的核心转储文件的生成方法。
[0007]第四方面,本专利技术实施例提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处
理器实现上述的核心转储文件的生成方法。
[0008]本专利技术实施例带来了以下有益效果:
[0009]上述一种核心转储文件的生成方法、装置及电子设备,响应针对目标进程的核心转储事件,获取目标进程的内存快照及基础核心转储信息;基于预设的多个核心转储参数模板及基础核心转储信息,确定目标进程对应的目标核心转储参数模板;其中,核心转储参数模板包括多个核心转储参数;核心转储参数用于:表征目标进程的基础特征或即时场景特征;基于目标核心转储参数模板及基础核心转储信息,确定目标进程的核心转储文件的存储参数;基于存储参数及内存快照,生成目标进程的核心转储文件。该方式中,目标核心转储参数模板中的参数可以表征目标进程的基础特征及即时场景特征,因此,通过基于该种模板生成的存储参数可以快速识别核心转储文件对应的进程执行场景,提供的相关服务等,提高了对目标进程的核心转储文件进行识别与分析的效率。
[0010]本专利技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本专利技术而了解。本专利技术的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
[0011]为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0012]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0013]图1为本专利技术实施例提供的一种核心转储文件的生成方法的流程图;
[0014]图2为本专利技术实施例提供的core转储器的原理框图;
[0015]图3为本专利技术实施例提供的一种进程的广义模板参解析流程图;
[0016]图4为本专利技术实施例提供的另一种进程的广义模板参解析流程图;
[0017]图5为本专利技术实施例提供的另一种进程的广义模板参解析流程图;
[0018]图6为本专利技术实施例提供的另一种进程的广义模板参解析流程图;
[0019]图7为本专利技术实施例提供的一种核心转储文件的生成装置的结构示意图;
[0020]图8为本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0021]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0022]Linux系统上的核心转储技术(core dump)可生成存储进程内存快照的核心转储文件(也可称为“core文件”)。这种文件可用于进程现场恢复、程序调试、问题分析、异常报警等场景。
[0023]Linux系统core文件模板中的模板参数(也可简称为“模板参”)如表1所示。系统响应核心转储信号时会将系统文件"/proc/sys/kernel/core_pattern"中定义的core文件模板中的模板参用对应的值替换,从而得到core文件的存储路径及文件名(可统一称为“路径文件名”),然后将目标进程当时的内存快照写入core文件。例如,当core文件模板为"/home/zhoucun/coredump/core.%p.%e.%t"时,基于进程gameserver

release把参数%p,%e,%t用对应的值替换后,得到了字符串"/home/zhoucun/coredump/core.24207.gameserver

rele.1665721975",这个字符串就是core文件的路径文件名,其中路径是"/home/zhoucun/coredump",文件名是"core.24207.gameserver

rele.1665721975"。
[0024]表1
[0025][0026]由于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种核心转储文件的生成方法,其特征在于,包括:响应针对目标进程的核心转储事件,获取所述目标进程的内存快照及基础核心转储信息;基于预设的多个核心转储参数模板及所述基础核心转储信息,确定所述目标进程对应的目标核心转储参数模板;其中,所述核心转储参数模板包括多个核心转储参数;所述核心转储参数用于:表征所述目标进程的基础特征或即时场景特征;基于所述目标核心转储参数模板及所述基础核心转储信息,确定所述目标进程的核心转储文件的存储参数;基于所述存储参数及所述内存快照,生成所述目标进程的核心转储文件。2.根据权利要求1所述的方法,其特征在于,基于预设的多个核心转储参数模板及所述基础核心转储信息,确定所述目标进程对应的目标核心转储参数模板的步骤,包括:从所述基础核心转储信息中提取所述目标进程的可执行文件信息;基于预设的多个核心转储参数模板及所述基础核心转储信息,确定所述目标进程对应的目标核心转储参数模板。3.根据权利要求2所述的方法,其特征在于,多个所述核心转储参数模板包括至少一个与设定可执行文件信息对应的拓展参数模板;基于预设的多个核心转储参数模板及所述基础核心转储信息,确定所述目标进程对应的目标核心转储参数模板的步骤,包括:将所述目标进程的可执行文件信息与至少一个所述拓展参数模板对应的设定可执行文件信息进行匹配,得到匹配结果;基于所述匹配结果,确定所述目标进程对应的目标核心转储参数模板。4.根据权利要求3所述的方法,其特征在于,所述设定可执行文件信息包括设定文件存储信息、第一设定文件名或模糊文件名;所述文件存储信息包括设定存储路径及存储于所述设定存储路径的第二设定文件名;所述可执行文件信息包括可执行文件的存储路径及文件名;所述拓展参数模板包括多个;将所述目标进程的可执行文件信息与至少一个所述拓展参数模板进行匹配,得到匹配结果的步骤,包括:基于所述目标进程的可执行文件的存储路径及文件名,对多个所述拓展参数模板中的至少一个第一拓展参数模板对应的设定文件存储信息进行第一相等比较检索;如果所述第一相等比较检索的结果不为空,确定匹配结果为:所述目标进程与检索到的第一拓展参数模板相匹配;如果所述第一相等比较检索的结果为空,基于所述目标进程的可执行文件的文件名,对多个所述拓展参数模板中的至少一个第二拓展参数模板对应的第一设定文件名进行第二相等比较检索;如果所述第二相等比较检索的结果不为空,确定匹配结果为:所述目标进程与检索到的第二拓展参数模板相匹配;如果所述第二相等比较检索的结果为空,基于所述目标进程的可执行文件的文件名,对多个所述拓展参数模板中的至少一个第三拓展参数模板对应的模糊文件名进行模糊比较检索;
如果所述模糊比较检索的结果不为空,确定匹配结果为:所述目标进程与检索到的第三拓展参数模板相匹配;如果所述模糊比较检索的结果为空,...

【专利技术属性】
技术研发人员:周存
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1