Question

Is it possible to configure the output from the Django development server to show the IP address of the client making the request?

Was it helpful?

Solution

This in our list for "standard mods" to new Django releases. For Django 1.2.1, in django/core/servers/basehttp.py, line 614, change:

   msg = "[%s] %s\n" % (self.log_date_time_string(), format % args)

to

   msg = "[%s] %s %s\n" % (self.log_date_time_string(),
                       self.client_address[0], format % args)

OTHER TIPS

Other answers I've had suggested to me:

  1. Consider Gunicorn as a dev server: http://gunicorn.org/ (orginNell)
  2. Consider using class inheritance on basehttp.py to create a new management command and avoid messing with the core code (orginNell)
  3. Use a real server (Harro)
  4. Write some middleware to log to a file (Harro)
  5. Consider replacing the built-in server with django-devserver: http://github.com/dcramer/django-devserver (mikeshantz)
  6. I like cherrypy with django: http://www.cherrypy.org/ (John M)
  7. Cherokee is very good too: http://www.cherokee-project.com/ (John M)
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top