我正在与一个为我安装mod_python的托管服务提供商合作.我在本地遵循安装说明并将其包含在httpd.conf中,但是他们选择将它放在conf.d/python.conf中.
这样做有什么区别/好处吗?
我们有一个令人讨厌的问题,我们看到python日志记录模块在我们的服务器上运行mod_python时表现不同.在shell中执行相同的代码,或者使用runserver命令或使用mod_wsgi在django中执行相同的代码时,行为是正确的:
import logging
logger = logging.getLogger('site-errors')
logging.debug('logger=%s' % (logger.__dict__))
logging.debug('logger.parent=%s' % (logger.parent.__dict__))
logger.error('some message that is not logged.')
Run Code Online (Sandbox Code Playgroud)
然后我们进行以下记录:
2009-05-28 10:36:43,440,DEBUG,error_middleware.py:31,[logger = {'name':'site-errors','parent':<logging.RootLogger instance at 0x85f8aac>,'handlers': [],'level':0,'禁用':0,'manager':<logging.Manager实例位于0x85f8aec>,'propagate':1,'filters':[]}]
2009-05-28 10:36:43,440,DEBUG,error_middleware.py:32,[logger.parent = {'name':'root','parent':None,'handlers':[<logging.StreamHandler instance at at 0x8ec612c>,<logging.handlers.RotatingFileHandler实例位于0x8ec616c>],'level':10,'禁用':0,'传播':1,'过滤器':[]}]
可以看出,没有为子记录器"site-errors"设置处理程序或级别.
日志配置在settings.py中完成:
MONITOR_LOGGING_CONFIG = ROOT + 'error_monitor_logging.conf'
import logging
import logging.config
logging.config.fileConfig(MONITOR_LOGGING_CONFIG)
if CONFIG == CONFIG_DEV:
DB_LOGLEVEL = logging.INFO
else:
DB_LOGLEVEL = logging.WARNING
Run Code Online (Sandbox Code Playgroud)
第二个问题是我们还在__init__.py中添加了一个自定义处理程序,该处理程序将其作为error_middleware.py驻留在该文件夹中:
import logging
from django.conf import settings
from db_log_handler import DBLogHandler
handler = DBLogHandler()
handler.setLevel(settings.DB_LOGLEVEL)
logging.root.addHandler(handler)
Run Code Online (Sandbox Code Playgroud)
在日志记录中无法看到自定义处理程序!
如果有人知道问题所在,请告诉我们!不要犹豫要求提供额外的信息.这肯定有助于解决问题.
我正在寻找一种方式只要使用我的XAMPP运行Django的,和我碰上了这个教程网上 http://jyotirmaya.blogspot.com/2008/11/xampp-python-django.html 据笔者,mod_python的3.3. python 2.6不支持1,但我认为博客文章是在一年前创建的.这件事直到现在还是如此吗?或者如果我将使用2.6并将其与mod python 3.3.1结合使用?
我正在尝试安装mod_python但是我收到了一个错误:
SyntaxError: ('EOL while scanning string literal', ('/usr/local/lib/python2.7/dist-packages/mod_python/version.py', 3, 79, 'version = "fatal: Not a git repository (or any of the parent directories): .git\n'))
Run Code Online (Sandbox Code Playgroud)
这是mod_python中使用的version.sh文件.
#!/bin/sh
MPV_PATH="`dirname $0`/../src/include/mp_version.h"
MAJ=`awk '/MP_VERSION_MAJOR/ {print $3}' $MPV_PATH`
MIN=`awk '/MP_VERSION_MINOR/ {print $3}' $MPV_PATH`
PCH=`awk '/MP_VERSION_PATCH/ {print $3}' $MPV_PATH`
GIT=`git describe --always`
echo $MAJ.$MIN.$PCH-$GIT
Run Code Online (Sandbox Code Playgroud)
我手动运行然后我得到:
fatal: Not a git repository (or any of the parent directories): .git
3.4.1-
Run Code Online (Sandbox Code Playgroud)
这是什么意思?请帮助!!
谢谢!
我想知道如何$_GET在python脚本上显示请求()?
请注意,我mod_python用作UBUNTU服务器上运行apache2的基本Web服务器。
如果您有任何想法,将非常感谢您的帮助:)
其他Python网络服务器(例如Django等)...在我的情况下需要注意,因为我仅针对一个特定任务运行一个python脚本:)