Introduction

by John Samuel Anderson last modified Jan 15, 2009 01:56 AM
The components and setup for server-side debugging.

A Comprehensive Example

There are a lot of good examples and how-tos on Plone.org about debugging. This story will demonstrate how to use several different tools to debug in Plone.  My fellow developers and integrators: if you've ever wondered, "Where IS that bug?" or "What's wrong with the data?"--This may be for you.  (It is a true story, although some of the server names have been changed to protect the innocent.)

Server-Side Debugging

This tutorial addresses the mystery that we know as "server-side debugging."  Therefore, this story will take place largely in a terminal window on the server.

This tutorial does not cover client-side debugging, including CSS issues and other things that are better suited to Firebug.

System Environment and Setup

Here are the specifics for the Plone/Zope installation used for this tutorial.  If you try these steps on a different machine with a different configuration, Your Mileage May Vary.

  • Centos 5 server
  • Plone 3.1.4
  • Zope 2.10.6-final
  • python 2.4.5
  • configured via buildout
  • all files located under /var/Plone

 The Major Components

We'll use several pieces of Plone and the operating system to debug the problem.  These include:

  • Zope running in the foreground
  • the Python debugger (Pdb)
  • source code editing with a text editor
  • the command shell ("command prompt" in Windows)