我想知道的是在最后2-3次重启之前分配给进程的PID.
场景是在此特定进程崩溃之后,生成日志文件并将进程的PID连接到日志文件的名称.我有5个日志文件,名称为hs_err_PIDs.我想确认这些PID是否已分配给我所关注的过程,因为我对此感到困惑.
有没有办法可以做到?
解决方法
您可以在系统日志文件/ var / log / messages,/ var / log / syslog中找到此信息.某些进程在启动时将消息打印到系统日志.例如,squid打印以下内容:
May 8 00:00:00 proxy squid[7274]: Squid Parent: child process 28819 started
如果您的进程记录了这些信息,您可以知道像7274这样的旧PID.
另一种可能性是当你的进程在死亡时导致像segfault这样的错误时.你会发现这样的日志:
May 8 00:00:00 proxy kernel: [1075746.767514] squid[24442]: segfault at 20 ip 00000000005bae26 sp 00007fff144918e0 error 4 in squid[400000+264000]
您还可以在这样的日志记录24442中找到PID.
对于将来的情况,如果您有兴趣稍后查找,则需要记录此类信息.