我想在 django 应用程序中捕获“harakiri 信号”以记录一些信息。
此代码从 uwsgi 来源制作 harakiri:
if (uwsgi.workers[i].pid > 0) {
kill(uwsgi.workers[i].pid, SIGUSR2);
// allow SIGUSR2 to be delivered
sleep(1);
kill(uwsgi.workers[i].pid, SIGKILL);
}
我试过捕捉 SIGUSR2 信号(views.py):
import signal
def signalhandler(signum, frame):
print "!!! harakiri"
import logging
logger = logging.getLogger("log")
logger.error("harakiri !!!!!!!")
signal.signal(signal.SIGUSR2, signalhandler)
但它不起作用。我的代码中没有看到日志:-(