【问题标题】:tracking all child process spawned by a root process跟踪根进程产生的所有子进程
【发布时间】:2016-10-13 02:14:57
【问题描述】:

我正在检查某个运行编译器的 make 系统。我想跟踪这样一个“根”进程所产生的所有子进程。

我知道有 ps 命令,因为我是 Python 用户,所以 psutil 包。但我不确定我是否会在通话之间错过一些短暂的过程。

我认为我真正想要的是 inotify(或 Python 中的 watchdog),但它不是跟踪目录,而是跟踪所有子进程活动。

是否有这样的系统调用,或者最好是 Python 包,可以做到这一点?

提前致谢。

【问题讨论】:

  • 不特别了解python,但strace -f -e trace=process <executable> 会给你这些信息。尽管格式需要一些(不太难)解析。
  • @kaylum 谢谢,我知道一定有一些东西可以用于此目的 :) 请您写一个答案以便我接受吗?

标签: python linux process


【解决方案1】:

sttace 可以提供该信息。但您可能必须解析输出才能获得您感兴趣的信息。

strace -f -e trace=process <executable>

这将跟踪&lt;executable&gt; 的所有子进程,并将仅跟踪与进程相关的系统调用(基本上是waitforkcloneexec)。

【讨论】:

    猜你喜欢
    • 2010-12-24
    • 1970-01-01
    • 1970-01-01
    • 2011-01-23
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    • 2012-09-14
    相关资源
    最近更新 更多