gdb调试内核dump文件

简介: 容器中node ssr程序生成core文件,使用gdb进行调试

GDB调试core dump_gdb no stack_Sison_w的博客-CSDN博客

如何调试崩溃的程序 | 蓝鲸ROS机器人论坛

SIGABRT的可能原因_sigabort_颇锐克的博客-CSDN博客

docker容器core文件占用空间太大and同步容器本机时间_studyingjay的博客-CSDN博客

kubernetes容器生成core文件_WinJayX的博客-CSDN博客

# 格式gdb [exec file] [core file]gdb /usr/local/bin/node  --core core.57

显示如下

root@ssr-node-d6fb5b7d9-bpl5h:/# gdb /usr/local/bin/node  --core core.57GNU gdb (Debian 8.2.1-2+b3) 8.2.1
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty"for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration"for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/local/bin/node...done.
[New LWP 57]
[New LWP 69]
[New LWP 63]
[New LWP 64]
[New LWP 65]
[New LWP 66]
[New LWP 67]
[New LWP 74]
[New LWP 75]
[New LWP 76]
[New LWP 77]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/local/bin/node --no-deprecation --trace-warnings /node_modules/egg-cluster'.Program terminated with signal SIGABRT, Aborted.#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:5050      ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.[Current thread is 1 (Thread 0x7f7561be2780 (LWP 57))](gdb) bt#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50#1  0x00007f7561c09535 in __GI_abort () at abort.c:79#2  0x0000000000a3ac41 in node::Abort() ()#3  0x0000000000970199 in node::OnFatalError(char const*, char const*) ()#4  0x0000000000bba76e in v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) ()#5  0x0000000000bbaae7 in v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) ()#6  0x0000000000d76d05 in v8::internal::Heap::FatalProcessOutOfMemory(char const*) ()#7  0x0000000000d89321 in v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) ()#8  0x0000000000d4ea5d in v8::internal::Factory::AllocateRaw(int, v8::internal::AllocationType, v8::internal::AllocationAlignment) ()#9  0x0000000000d4acb9 in v8::internal::FactoryBase<v8::internal::Factory>::AllocateRawArray(int, v8::internal::AllocationType) ()#10 0x0000000000d4ad74 in v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller(v8::internal::Handle<v8::internal::Map>, int, v8::internal::Handle<v8::internal::Oddball>, v8::internal::AllocationType) ()#11 0x0000000000d548c1 in v8::internal::Factory::NewJSArrayStorage(v8::internal::ElementsKind, int, v8::internal::ArrayStorageAllocationMode) ()#12 0x0000000000d58e7e in v8::internal::Factory::NewJSArray(v8::internal::ElementsKind, int, int, v8::internal::ArrayStorageAllocationMode, v8::internal::AllocationType) ()#13 0x00000000010ce035 in v8::internal::Runtime_StringSplit(int, unsigned long*, v8::internal::Isolate*) ()#14 0x00000000014491d9 in Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_NoBuiltinExit ()#15 0x000000000143999f in Builtins_StringPrototypeSplit ()#16 0x00000000013dfd02 in Builtins_InterpreterEntryTrampoline ()#17 0x000027855828f169 in ?? ()#18 0x0000351ab7180121 in ?? ()#19 0x000020af47d00471 in ?? ()#20 0x000027855828f169 in ?? ()#21 0x0000351ab7180121 in ?? ()#22 0x000013863cbdb551 in ?? ()#23 0x0000000300000000 in ?? ()#24 0x0000000300000000 in ?? ()#25 0x000000bf00000000 in ?? ()#26 0x00002a78b6d7e2a9 in ?? ()#27 0x00003add187032a1 in ?? ()#28 0x00003add18703271 in ?? ()#29 0x00007ffd2a78d8f0 in ?? ()#30 0x00003bdbd97be451 in ?? ()#31 0x00003add18703319 in ?? ()#32 0x000020af47d00471 in ?? ()#33 0x00001899556d8a19 in ?? ()#34 0x000023ed72c48f29 in ?? ()#35 0x00003dabbd0449a9 in ?? ()#36 0x00001899556d8a19 in ?? ()#37 0x00007ffd2a78d978 in ?? ()--Type <RET> for more, q to quit, c to continue without paging--
相关实践学习
阿里云图数据库GDB入门与应用
图数据库(Graph Database,简称GDB)是一种支持Property Graph图模型、用于处理高度连接数据查询与存储的实时、可靠的在线数据库服务。它支持Apache TinkerPop Gremlin查询语言,可以帮您快速构建基于高度连接的数据集的应用程序。GDB非常适合社交网络、欺诈检测、推荐引擎、实时图谱、网络/IT运营这类高度互连数据集的场景。 GDB由阿里云自主研发,具备如下优势: 标准图查询语言:支持属性图,高度兼容Gremlin图查询语言。 高度优化的自研引擎:高度优化的自研图计算层和存储层,云盘多副本保障数据超高可靠,支持ACID事务。 服务高可用:支持高可用实例,节点故障迅速转移,保障业务连续性。 易运维:提供备份恢复、自动升级、监控告警、故障切换等丰富的运维功能,大幅降低运维成本。 产品主页:https://www.aliyun.com/product/gdb
目录
相关文章
|
3月前
|
NoSQL Linux C语言
Linux GDB 调试
Linux GDB 调试
62 10
|
3月前
|
NoSQL Linux Windows
geopandas直接支持gdb文件写出与追加
geopandas直接支持gdb文件写出与追加
|
3月前
|
NoSQL 数据挖掘 定位技术
如何让geopandas支持写出gdb文件
如何让geopandas支持写出gdb文件
|
3月前
|
NoSQL Linux C语言
嵌入式GDB调试Linux C程序或交叉编译(开发板)
【8月更文挑战第24天】本文档介绍了如何在嵌入式环境下使用GDB调试Linux C程序及进行交叉编译。调试步骤包括:编译程序时加入`-g`选项以生成调试信息;启动GDB并加载程序;设置断点;运行程序至断点;单步执行代码;查看变量值;继续执行或退出GDB。对于交叉编译,需安装对应架构的交叉编译工具链,配置编译环境,使用工具链编译程序,并将程序传输到开发板进行调试。过程中可能遇到工具链不匹配等问题,需针对性解决。
|
3月前
|
NoSQL Linux 编译器
内核实验(一):使用QEMU+GDB断点调试Linux内核代码
如何配置环境并使用QEMU虚拟机结合GDB进行Linux内核代码的断点调试,包括安装QEMU、交叉编译工具链,编译内核以及通过GDB远程连接进行调试的详细步骤。
135 0
内核实验(一):使用QEMU+GDB断点调试Linux内核代码
|
3月前
|
NoSQL
技术分享:如何使用GDB调试不带调试信息的可执行程序
【8月更文挑战第27天】在软件开发和调试过程中,我们有时会遇到需要调试没有调试信息的可执行程序的情况。这可能是由于程序在编译时没有加入调试信息,或者调试信息被剥离了。然而,即使面对这样的挑战,GDB(GNU Debugger)仍然提供了一些方法和技术来帮助我们进行调试。以下将详细介绍如何使用GDB调试不带调试信息的可执行程序。
99 0
|
5月前
|
NoSQL Linux C语言
Linux gdb调试的时候没有对应的c调试信息库怎么办?
Linux gdb调试的时候没有对应的c调试信息库怎么办?
42 1
|
5月前
|
NoSQL Linux C语言
Linux gdb调试的时候没有对应的c调试信息库怎么办?
Linux gdb调试的时候没有对应的c调试信息库怎么办?
31 0
|
5月前
|
NoSQL Linux C++
Linux C/C++ gdb调试正在运行的程序
Linux C/C++ gdb调试正在运行的程序
|
5月前
|
NoSQL Linux C++
Linux C/C++ gdb调试core文件
Linux C/C++ gdb调试core文件