TypeError not caught by except statement

siddu siddhartha.veedaluru at gmail.com
Mon Jan 25 03:35:48 EST 2010


Hi,

except not able to caught the TypeError exception occured in the below
code

        log.info("refer",ret) in the try block

throws a TypeError which is not caught .
Also sometimes process is getting hanged.

------------------------------------------------------------------------------------------------------------------------------------------------
import logging
log = logging.getLogger()
fileName = strftime("%d-%b-%Y-", gmtime()) + str(int(time.time())) + "-
Log.log"
log = logging.getLogger()
log.setLevel(logging.NOTSET)
fh = logging.FileHandler(logFile)
logFileLevel = logging.DEBUG
fh.setLevel(logFileLevel)
format_string = '%(process)d %(thread)d %(asctime)-15s %(levelname)-5s
at %(filename)-15s in %(funcName)-10s at line %(lineno)-3d "%(message)
s"'
fh.setFormatter(logging.Formatter(format_string))
log.addHandler(fh)

try:
    log.info("start")
    log.info("refer",ret)
    log.info("end")
except TypeError:
    log.exception("Exception raised")

----------------------------------------------------------------------------------------------------------------------------------------------
OUTPUT message:

Traceback (most recent call last):
  File "C:\Python26\lib\logging\__init__.py", line 768, in emit
    msg = self.format(record)
  File "C:\Python26\lib\logging\__init__.py", line 648, in format
    return fmt.format(record)
  File "C:\Python26\lib\logging\__init__.py", line 436, in format
    record.message = record.getMessage()
  File "C:\Python26\lib\logging\__init__.py", line 306, in getMessage
    msg = msg % self.args
TypeError: not all arguments converted during string formatting



More information about the Python-list mailing list