Вы уверены, что не имели в виду Python 2.3?
В trace.py имя класса вычисляется из:
...
clsname = str(classes[0])
...
if clsname is not None:
# final hack - module name shows up in str(cls), but we've already
# computed module name, so remove it
clsname = clsname.split(".")[1:]
clsname = ".".join(clsname)
funcname = "%s.%s" % (clsname, funcname)
Обычно str(someclass)
дает вам что-то вроде module.klass
поэтому разделение на точку дает вам чистое имя для класса.По какой-то причине класс в системе, на которую вы смотрите, дает repr, который заканчивается строкой, которую вы видите, так что, возможно, это было что-то вроде <proxy for 'module.klass'>
.
Я попытался бы отредактировать trace.py на этоммашина (временно) не разделяет переменную clsname, и тогда вы сможете понять, что она на самом деле должна сказать.