ttylog 附加到错误的进程 - 发行说明也有点难以理解

ttylog 附加到错误的进程 - 发行说明也有点难以理解

我在一台机器上运行了一个很长的python脚本:

[root@server1]# ps aux | grep python
root     30640 15.6  0.6 296416 102444 pts/4   S+   11:29   2:38 python my_script.py

但我现在正在笔记本电脑上远程工作,想查看该脚本的输出。我通常只会tail从命令中获取输出文件tee,但这样做不行。

所以我下载了这个叫做ttyloghttp://search.cpan.org/~bbb/ttylog-0.83/ttylog) 查看进程的输出。这看起来相当简单,所以我通过 ssh 进入该进程server1并运行:

[root@server1 ttylog-0.83]# ./ttylog pts/4
DEBUG: Scanning for psuedo terminal pts/4
DEBUG: Psuedo terminal [pts/4] found.
DEBUG: Found parent sshd pid [28198] for user [root]
Process 28198 attached - interrupt to quit

但这是错误的过程——所以我没有得到任何输出。

我需要将其附加到进程 30640,即 python 进程。有人知道怎么做吗?

答案1

ttylog没什么特别的,只是对 ssh pid 进行 strace:

exec "strace","-e","read,write","-s16384","-x","-o",$write,"-p",$pid
    or die "exec: $!";

因此,为了获得一些相关结果,您可以自己简单地 strace python 解释器。

相关内容