Python DTrace consumer on SmartOS
March 23rd, 2012 • Comments Off on Python DTrace consumer on SmartOSAs mentioned in previous blog posts (1 2 3) I wrote a Python DTrace consumer a while ago. The cool thing is that you can now trace Python (as provider) and consumer the ‘aggregate’ in Python (as consumer) as well :-). Some screen-shots and suggestions what you can do with it are described on the github page.
I did not have much spare time lately but I got the a chance last night to test my Python based DTrace consumer on SmartOS, Solaris 11 and OpenIndiana – and can confirm that it runs on all 3.
To get it up and running on SmartOS you will first need to install some dependencies. Use the 3rd party repositories as described in the SmartOS wiki to get pkg up and running:
pkg install git gcc-44 setuptools-26 gnu-binutils
When that is done we will clone the consumer code and install cython (you could however also use ctypes) using pip:
easy_install pip pip install cython git clone git://github.com/tmetsch/python-dtrace.git cd python-dtrace/ python setup.py install
Now since this is done we can do the obligatory ‘Hello World’ to get things going:
For more examples refer to the examples folder within the python-dtrace repository.