[Python-Dev] LTTng-UST support for CPython

2014-12-01 Thread Francis Giraldeau
Here is a working prototype for CPython to record all function call/return
using LTTng-UST, a fast tracer.

https://github.com/giraldeau/python-profile-ust

However, there are few issues and questions:

- I was not able to get PyTrace_EXCEPTION using raise or other error
conditions. How can we trigger this event in Python code
(PyTrace_C_EXCEPTION works)?

- How could be the best way to get the full name of an object (such as
package, module, class and function). Maybe it's too Java-ish, and it is
better to record file/lineno instead?

- On the C-API side: I did a horrible and silly function show_type() to run
every Py*_Check() to determine the type of a PyObject *. What would be the
sane way to do that?

Your comments are very valuable. Thanks!

Francis
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] LTTng-UST support for CPython

2014-12-01 Thread Alexander Belopolsky
On Mon, Dec 1, 2014 at 5:48 PM, Francis Giraldeau 
francis.girald...@gmail.com wrote:

 - On the C-API side: I did a horrible and silly function show_type() to
 run every Py*_Check() to determine the type of a PyObject *. What would be
 the sane way to do that?


Questions like this are better asked on a users' forum, but you can get the
type name from a python object as follows:

Py_TYPE(obj)-tp_name
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com