Go -- 如何使用gcore工具获取一个core文件而不重启应用?

问题:

当调试一个程序的时候,理想状态是不重启应用程序就获取core文件。

解决:

gcore命令可以使用下面步骤来获取core文件:

1. 确认gdb软件包已经被正确安装。

2. 使用调试参数编译程序(例如: gcc中使用"-g"选项),编译后不要去除文件的调试符号信息。

3. 执行应用程序。

4. 执行gcore命令生成指定应用程序的core文件并且保存在当前目录下。

$ gcore pid   (进程号)
时间: 2024-10-12 20:46:21

Go -- 如何使用gcore工具获取一个core文件而不重启应用?的相关文章

php 如何获取一个json文件

function showupversion(){ #获取平台类型 $type='android'; #读取文件的路径 $url="D:/WWW/gm_lequ/gm_lequ"; $file_name="update.ini"; $path=$url.'/'.$type.'/'.$file_name; #判断文件的路径是否存在 判断目录是否存在我们用is_dir就OK了. if(file_exists($path)){ #读取php.ini json格式的文件 $

ubuntu core 文件产生

关于内核转储的设置方法 1. 内核转储作用 (1) 内核转储的最大好处是能够保存问题发生时的状态. (2) 只要有可执行文件和内核转储,就可以知道进程当时的状态. (3) 只要获取内核转储,那么即使没有复现环境,也能调试. 2. 启用内核转储 1.1 查看内核转储是否有效 在终端中输入以下命令,查看内核转储是否有效. #ulimit -c 0 -c 表示内核转储文件的大小限制,现在显示为零,表示不能用. 可以改为1G #ulimit -c 1073741824 也可以改为无限制 #ulimit

core文件相关

1:当一个程序崩溃时,在进程当前工作目录的core文件中复制了该进程的存储图像.core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的. 当程序接收到以下UNIX信号会产生core文件:SIGABRT.SIGBUS.SIGEMT.SIGFPE.SIGILL.SIGIOT.SIGQUIT.SIGSEGV.SIGSYS.SIGTRAP.SIGXCPU.SIGXFSZ: 下面比较详细地说明这些信号. ? SIGABRT 调用abort函数时产生此信号.进程异常终止. ? SIGBUS 指

Linux下core文件产生的一些注意问题

前面转载了一篇文章关于core文件的产生和调试使用的设置,但在使用有一些需要注意的问题,如 在什么情况 才会正确地产生core文件. 列出一些常见问题: 一,如何使用core文件 1. 使用core文件 在core文件所在目录下键入: gdb -c core 它会启动GNU的调试器,来调试core文件,并且会显示生成此core文件的程序名,中止此程序的信号等等. 如果你已经知道是由什么程序生成此core文件的,比如MyServer崩溃了生成core.12345,那么用此指令调试: gdb -c

Linux C程序异常退出怎么办——core文件帮你忙

想必你一定遇到过Linux下程序异常退出的问题,异常退出貌似有一种神奇的魔力,会让你神经突然紧张.不要怕,Linux是很强大的,在程序退出的时候,会在可执行文件所在的目录生成一个core文件,它很好地记录了一些神秘而又必要的东西,帮助你定位到错误的根源,想想以前面试的时候人家闻到core文件,我答不上来,你说面试官会怎样想,那么就来说说core文件. core文件实际上就是一个内存映象同时加上一些调试信息. 首先,你得打开系统的core文件生成开关吧,终端中输入ulimit -c命令,若显示0表

core文件介绍

1. core文件的简单介绍在一个程序崩溃时,它一般会在指定目录下生成一个core文件.core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的. 2. 开启或关闭core文件的生成用以下命令来阻止系统生成core文件:ulimit -c 0下面的命令可以检查生成core文件的选项是否打开:ulimit -a该命令将显示所有的用户定制,其中选项-a代表"all". 也可以修改系统文件来调整core选项在/etc/profile通常会有这样一句话来禁止产生core文件,通常这

core文件

1 core文件简单介绍 在一个程序崩溃时,一般会在指定目录下生成一个core文件,core文件是一个内存映像,同时加上调试信息 使用gdb查看core文件可以指示出导致程序出错的代码所在的文件和行数 2 开启或关闭core文件的生成 关闭core文件生成:ulimit -c 0 检查core文件生成选项:ulimit -a(检查所有的用户定制,其中包括core文件),或ulimit -c只查看core文件选项,为0则关闭core文件生成 通过系统配置文件调整core选项: 可以在/etc/pr

linux core文件调试

在完成公司项目,测试进程的时候,经常会发现日志到了某一段特定的代码的时候就没了,进程直接退出,也没有捕获到任何的异常信息,如果日志打印的较多还可能比较容易发现问题,如果日志较少,就很难进行进一步的查错了. 但是发现在该目录下生成了一个core文件,可以帮助我们查找程序崩溃的原因. 1. 什么是core文件 在linux系统下,如果进程不能正常运行,就可能会产生core文件.core文件就是当前内存状态的一个映像,同时加上一些调试信息. bug和操作系统或硬件的保护机制都会导致程序异常终止,操作系

Linux core 文件

http://blog.csdn.net/mr_chenping/article/details/13767609 在程序不寻常退出时,内核会在当前工作目录下生成一个core文件(是一个内存映像,同时加上调试信息).使用gdb来查看core文件,可以指示出导致程序出错的代码所在文件和行数. 1.core文件的生成开关和大小限制 --------------------------------- 1)使用ulimit -c命令可查看core文件的生成开关.若结果为0,则表示关闭了此功能,不会生成c