如何重新创建正在运行的supervisord进程中缺失的套接字

4

在不同的计算机上,我经常遇到监控程序(supervisord)套接字文件因某些原因消失的情况。我还没有调查这是否是由于错误或其他原因,但我想知道是否可以重新创建/重新连接到由supervisord处理的此套接字。进程仍在运行,我可以看到它。

> lsof -c supervisord
COMMAND     PID USER   FD   TYPE             DEVICE  SIZE/OFF       NODE NAME
[...]
superviso 16886 root    3w   REG                9,1     85344    2753325 /var/log/supervisor/supervisord.log
superviso 16886 root    4u  unix 0xffff880059691800       0t0 3662006852 /var/tmp/supervisor.sock.16883
superviso 16886 root    5u  unix 0xffff88017c6f7c00       0t0 3661998412 socket
[...]

/var/tmp/supervisor.sock.16883文件不存在。是否有重新创建该supervisord进程处理的套接字文件的方法?我知道我可以重启supervisor,但我想避免这样做。


1
你开玩笑吧?你连自己的错误都不想去调查,却在问是否有一些绕过你未知错误的方法? - user207421
这并不是我的错误,而是 supervisord 或系统本身的问题。总之,一般的问题是是否可能创建某些缺失的套接字文件,并将其连接到进程打开的套接字(如 lsof 输出中所示)。 - Krzysztof Księżyk
我发现我可以向supervisord进程发送HUP信号,然后套接字将在不重启进程的情况下重新创建,但不幸的是所有子进程都会重新启动。所以这对我来说仍然不是令人满意的答案。 - Krzysztof Księżyk
1个回答

0

我真的很想知道是否可以重新创建使用socket连接到supervisord的信息。无论如何,感谢您的输入 :) - Krzysztof Księżyk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接