[openstack-dev] [tc][all][osprofiler] OSprofiler is dead, long live OSprofiler

Boris Pavlovic boris at pavlovic.me
Mon Nov 9 10:57:37 UTC 2015

Hi stackers,


It's not a big secret that OpenStack is huge and complicated ecosystem of
services that are working together to implement OpenStack API.

For example booting VM is going through many projects and services:
nova-api, nova-scheduler, nova-compute, glance-api, glance-registry,
keystone, cinder-api, neutron-api... and many others.

The question is how to understand what part of the request takes the most
of the time and should be improved. It's especially interested to get such
data under the load.

To make it simple, I wrote OSProfiler which is tiny library that should be
added to all OpenStack
projects to create cross project/service tracer/profiler.

Demo (trace of CLI command: nova boot) can be found here:

This library is very simple. For those who wants to know how it works and
how it's integrated with OpenStack take a look here:

What is the current status?

Good news:
- OSprofiler is mostly done
- OSprofiler is integrated with Cinder, Glance, Trove & Ceilometer

Bad news:
- OSprofiler is not integrated in a lot of important projects: Keystone,
Nova, Neutron
- OSprofiler can use only Ceilometer + oslo.messaging as a backend
- OSprofiler stores part of arguments in api-paste.ini part in project.conf
which is terrible thing
- There is no DSVM job that check that changes in OSprofiler don't break
the projects that are using it
- It's hard to enable OSprofiler in DevStack

Good news:
I spend some time and made 4 specs that should address most of issues:

Let's make it happen in Mitaka!

By the way somebody would like to join this effort?)

Best regards,
Boris Pavlovic
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20151109/dcce6e6e/attachment.html>

More information about the OpenStack-dev mailing list