Third party script debugging on remote server ...

dbee daraburke78 at gmail.com
Wed Apr 18 19:15:53 EDT 2007


Right. I've got a really, really annoying/difficult/time consuming
problem with my development environment. I'm using django to build a
web app with paypal integration. My server is hosted remotely, and it
is receiving IPN (payment notifications) POST requests from Paypal.
I've checked on google and irc and this is my last shot at solving
this before I go mad ... :-(

The problem is that I can't debug those POST requests. Browser
debugging is out of the question obviously cause I'm not at the
computer, ( and it doesn't have X ).

I've tried cgitb but that doesn't seem to work at all ...

import cgitb; cgitb.enable(display=0,logdir='/tmp/',format='plain')
import cgitb; cgitb.enable()

... neither of those commands have any effect. Although I do log other
parts of the script to /tmp, so I know that it's reachable...

mod_python absolutely refuses to error_log to the apache error_log. I
have restarted it and it still won't flush whatever error buffer it
may ( or may not ) have stored.

I can re-constitute the requests in my browser using a GET request.
But frankly, that's kinda messy - there are lots of paypal IPN
combinations and I may have to integrate other applications with
paypal. So ideally speaking I'm looking for a proper debugging
environment for this kind of thing ...

Basically, I either want mod_python to start error_logging properly,
or I want some type of working traceback environment to be available.
Help !

Server version: Apache/2.0.52
Server built:   Aug 13 2006 03:29:43
CentOS4.x: (RedHat Clone)
mod_python.i386                          3.1.3-5.1
installed

# httpd.conf

<VirtualHost *:80 >

 ServerName mydomain.biz
 ServerAlias www.mydomain.biz
 SetHandler mod_python
 PythonPath "['/home/babo/django'] + sys.path"
 PythonHandler django.core.handlers.modpython
 SetEnv DJANGO_SETTINGS_MODULE mydomain.settings

  <Location "/libs/media/">
   SetHandler None
   Options None
  </Location>

</VirtualHost>


My python.conf: ( seems pretty normal )

#
# Mod_python is a module that embeds the Python language interpreter
# within the server, allowing Apache handlers to be written in Python.
#

LoadModule python_module modules/mod_python.so

# Override type-map handler for /var/www/manual
<Directory "/var/www/manual/mod/mod_python">
        <Files *.html>
                SetHandler default-handler
        </Files>
</Directory>

# This will cause files beneath /var/www/html with the extension .spam
# to be handled by the Python script /var/www/html/eggs.py
#
#<Directory /var/www/html>
#    AddHandler python-program .spam
#    PythonHandler eggs
#</Directory>

# This will cause all requests to the /python heirachy of your
# webserver to be handled by the python script /path/to/myhandler.py
#
#<Location /python>
#    SetHandler python-program
#    PythonPath "sys.path + ['/path/to']"
#    PythonHandler myhandler
#</Location>

# This will cause all requests to the /python heirachy of your
# webserver to be handled by mod_python's Publisher handler
# (see http://localhost/manual/mod/mod_python/hand-pub.html)
#
# This will cause the output of all requests to files beneath
# /var/www/html with the extension .flt to be filtered through
# the Python script /var/www/html/filter.py
#
#<Directory /var/www/html>
#    PythonOutputFilter filter MYFILTER
#    AddOutputFilter MYFILTER .flt
#</Directory>




More information about the Python-list mailing list