在mod_wsgi中设置进程名称

时间:2010-07-13 14:11:57

标签: python mod-wsgi

我正在通过apache2.x使用mod_wsgi 2.5和python2.5运行一个站点。它配置为在多进程中运行,每个进程只包含一个线程。

当我读到这个post时,我尝试将进程名称设置为PATH_INFO,但它不起作用。我的代码就像:

import ctypes
libc = ctypes.CDLL('/lib/libc.so.6')
def application (environ, start_response):
   libc.prctl(15, environ.get('PATH_INFO', 'WSGI'), 0, 0, 0);
   # other codes

1 个答案:

答案 0 :(得分:3)

如果您使用的是mod_wsgi守护程序模式,那么WSGIDaemonProcess的display-name选项是否有任何问题。该选项恰好是使用setproctitle()或argv [0]赋值将进程名称更改为固定值,因为它被认为适用于特定平台。参见:

http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIDaemonProcess

请注意,只对守护进程模式进程执行此操作才有意义,而不是Apache服务器进程本身。因此,为什么只能用于WSGIDaemonProcess指令。只在进程启动时设置一次,而不是根据请求动态设置它才有意义。