使用bpftrace+GDB尽早attach启动时间不定的进程

2024-01-02 20:53:50

引言

曾经在stackoverflow看到过一篇求助帖子《Is there any way to tell GDB to wait for a process to start and attach to it?》,大体问题:工具链上调用关系很长,父进程调用子进程,子进程调用孙进程,如此下去,最后有一个进程崩溃了,提问者期望在崩溃之前用GDB attach上去调试调试,好找到崩溃原因。

问题是崩溃进程可能崩溃的很快,以至于没有时间attach。

上节《改造strace以赋予它暂停某进程的能力》我们改造了strace使得它支持碰到sys execve时回调用户指定的脚本,脚本中你可以充分发挥你的想象力干点啥。

本节我们将介绍另外一种办法:bpftrace.

  • 优点:简单直接,不必修改代码。
  • 缺点:某些平台可能得先安装bpftrace, 特别是低内核版本的distribution不支持bpf

文章来源:https://blog.csdn.net/zhaiminlove/article/details/135336129
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。