当阻塞进程的数量无限增长时,如何准确识别这些进程是什么。
由于我位于系统容器 (LXC/OpenVZ) 中,因此无法修改主机的内核模块以使用perf-tools或bcc-tools/bpfcc-tools 等工具
问题如何在 Linux 中跟踪新创建的进程?没有涵盖系统容器的场景,大部分答案依赖于perf-tools
和bcc-tools
.
当阻塞进程的数量无限增长时,如何准确识别这些进程是什么。
由于我位于系统容器 (LXC/OpenVZ) 中,因此无法修改主机的内核模块以使用perf-tools或bcc-tools/bpfcc-tools 等工具
问题如何在 Linux 中跟踪新创建的进程?没有涵盖系统容器的场景,大部分答案依赖于perf-tools
和bcc-tools
.
1.检查
CONFIG_PROC_EVENTS
首先检查是否
CONFIG_PROC_EVENTS
启用。根据您的发行版,您可以运行:如果启用,您将获得以下结果:
2.如果启用,创建监视器
创建一个
proc_events.c
包含以下内容的文件:确保您可以编译 C 程序。在 Debian 或基于 Debian 的发行版上,例如 Ubuntu,运行:
并编译它:
3.运行几秒钟
以这种方式运行将直接在终端上输出:
但是您也可以重定向它并运行几秒钟,以便将其输出保存在文件中:
4. 分析结果
输出将采用以下格式:
归功于@cirosantilli