accessing SocketServer Handler exceptions

j vickroy jim.vickroy at noaa.gov
Thu Nov 21 13:47:10 EST 2002


How do I gain access to the exceptions, raised by the handle() procedure in
a BaseRequestHandler object, from the SocketServer object?

Thanks for your help.


Here is a (hopefully) brief code fragment:


import SocketServer

TCP_port    = 1951
TCP_host    = 'this machine'
TCP_address = (TCP_host, TCP_port)


class Message(SocketServer.BaseRequestHandler):
   '''
   The handler for the TCP/IP server that receives messages.
   '''

   expected_message_length = 1024 # bytes

   def handle(self):
      '''
      '''
      message = self.request.recv(1024)
      assert len(message) == self.expected_message_length, \
         'received %d-byte message -- expecting %d bytes' % (len(message),
self.expected_message_length)
      # unpack and queue message


class Server(SocketServer.TCPServer):

    def handle_error(self, request, client_address):
       print 'ERROR:', client_address
       # HOW DO I ACCESS THE EXCEPTION RAISED IN THE HANDLER
       # FROM THIS PROCEDURE?






More information about the Python-list mailing list