systemd-coredump

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: systemd-coredump

systemd-coredump@.service 是一个系统服务, 它能从操作系统内核中获取内存转储,并能对获取到的数据进行各种处理。该服务的功能实际由 systemd-coredump 可执行程序实现,该程序被先后调用两次:第一次被操作系统内核作为内存转储处理器调用; 第二次被 systemd-coredump@.service 服务调用, 用于将获取到的数据写入文件或日志中。

当操作系统内核调用 systemd-coredump 来处理内存转储时, 它将以特权模式运行,并连接到 systemd-coredump.socket 单元创建的套接字上,接着再派生一个非特权模式的 systemd-coredump@.service 实例来处理所获取的内存转储。可见, systemd-coredump.socket 与 systemd-coredump@.service 是为了实现对内存转储进行统一管理而 专门设置的辅助单元。

内存转储既可以保存到日志中,也可以保存到单独的文件中, 以便于将来被例如 gdb(1) 这样的工具做进一步的分析和处理。

默认情况下,systemd-coredump 会把内存转储事件以及可能存在的回溯(backtrace)保存到日志中, 同时把内存转储自身的数据(内存镜像)保存到外部的 /var/lib/systemd/coredump/ 目录中。

进程在接收到信号后的行为 取决于某些特定的因素, 特别需要注意的是,仅在相关系统资源充足且未超出资源限制的前提下,才会进行内存转储操作。

如果在调用 systemd-coredump 时使用了 --backtrace 选项,那么在 systemd-coredump 的标准输入(STDIN)上必须存在一条符合 Journal Export Format 格式的日志,这条日志必须包含一个 MESSAGE= 字段, 并且任何其他元数据字段在调用者看来都必须是合情合理的。 systemd-coredump 将会按照它自己从内核中接收内存转储的方式,在这条日志中添加额外的元数据字段。 注意,在这种模式下,内存转储将不会保存在日志中。


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
8月前
|
Linux C语言
Linux命令(116)之journalctl
Linux命令(116)之journalctl
365 0
|
Linux
journalctl命令
journalctl命令
72 0
|
弹性计算 Shell 网络安全
因为 /usr/bin/dbus-daemon 共享库文件引发的系统启动异常
因为 /usr/bin/dbus-daemon 共享库文件引发的系统启动异常
|
3月前
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
140 1
|
4月前
crash命令 —— fuser
crash命令 —— fuser
|
6月前
|
Linux Docker 容器
journalctl 命令使用总结
journalctl 命令使用总结
125 1
|
6月前
|
存储 监控 安全
systemd-cat:Linux 系统日志的管道
`systemd-cat` 是 Linux 的一个工具,它将标准输入/输出/错误重定向到 systemd 的 Journald,便于集中管理、实时监控和分析系统及应用日志。它以高效二进制格式存储,提供安全、灵活且易用的日志处理。通过 `--priority` 和 `--identifier` 参数可设置日志级别和来源。示例用法包括将命令输出(如 `ls` 或 `grep`)重定向到日志。注意权限、日志级别选择和来源标识的设定,结合 `journalctl` 可优化日志管理。
|
8月前
|
Linux
Linux systemd 定时任务
Linux systemd 定时任务
|
Linux PHP 网络安全
|
Linux Ubuntu
Linux基础命令---杀死进程pkill
pkill       pkill可以给指定的进程发送信息,它可以结束某个执行的进程或者目录登录的用户。       此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1472 0